Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Cloud Dienste
    4. Alexa Radio ausschalten bzw. Einschalten

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Alexa Radio ausschalten bzw. Einschalten

    This topic has been deleted. Only users with topic management privileges can see it.
    • ruhr70
      ruhr70 last edited by

      @hater:

      Es gibt ja prinzipiell die Möglichkeit curl requests auch in Javascript umzuformen. Hat hiermit vielleicht jemand Erfahrungen? `

      Wenn Du den curl request postest, kann ich es gerne versuche.

      Habe das selbst noch nicht gemacht :mrgreen:

      Auf der Basis des Skripts hier müsste man das aber anpassen können:

      http://forum.iobroker.net/viewtopic.php?f=37&t=5943

      Die Options für das module http sind hier beschrieben:

      https://nodejs.org/api/http.html#http_h … s_callback

      Dort ist auch beschrieben, wie man mehrere Headerinfos einfügt:

      var options = {
        hostname: 'www.google.com',
        port: 80,
        path: '/upload',
        method: 'POST',
        headers: {
          'Content-Type': 'application/x-www-form-urlencoded',
          'Content-Length': Buffer.byteLength(postData)
        }
      };
      
      1 Reply Last reply Reply Quote 0
      • J
        jwedenig Most Active last edited by

        Hi!

        Mich würde dies auch interessieren, wie man Alexa fernsteuern kann bzw. einen Radiosender per Taste oder Bewegung aktivieren kann.

        Ich habe laut Anleitung die curl "Wurst" im Chrome extrahiert, nur wie ich die jetzt umformatieren muss ist mir ein Rätsel.

        Vielleicht hat ja jemand dies schon gemacht?

        Liebe Grüße

        Jürgen

        1 Reply Last reply Reply Quote 0
        • ruhr70
          ruhr70 last edited by

          Habe das gerade mal im Javascript gemacht.

          Funktioniert. Nur mit dem module "https" und nicht mit "http".

          Änder noch ein bisschen daran und den poste ich das Skript hier.

          1 Reply Last reply Reply Quote 0
          • ruhr70
            ruhr70 last edited by

            @jwedenig:

            Mich würde dies auch interessieren, wie man Alexa fernsteuern kann bzw. einen Radiosender per Taste oder Bewegung aktivieren kann.

            Ich habe laut Anleitung die curl "Wurst" im Chrome extrahiert, nur wie ich die jetzt umformatieren muss ist mir ein Rätsel. `

            Anbei die einfache Version. Startet einen Radiosender.

            Bei den Variablen am Anfang die eigenen Daten aus dem langen extrahierten Wurst verwenden.

            Skript:

            ! ````
            // ALexa mit Javaskript in ioBroker steuern
            // ----------------------------------------
            ! // 1. cURL extrahieren, siehe
            // https://www.gehrig.info/alexa/Alexa.html
            ! // ---------------------------------------
            // Tunein Radiosender raussuchen
            // http://tunein.com/radio/Antenne-Düsseldorf-1042-s25772/
            // s25772 -> Antenne Düsseldorf
            ! // Liste einiger Sender:
            // s25772 -> Antenne Düsseldorf
            // s100198 -> Einslive
            // s100183 -> WDR2 Rheinland
            // s8007 -> Hitradio Ö3
            ! // ----------------------------------------
            // Infos und Resourcen zum Skript:
            // Webseiten/URLs Request mit Fehlerbehandlung, siehe:
            // http://forum.iobroker.net/viewtopic.php?f=21&t=4259&p=40890&hilit=request#p40880
            // Alexa Steuerskripte:
            // https://github.com/thorsten-gehrig/alexa-remote-control
            ! var logOn = true; // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben.
            var https = require('https'); // Node Module https verwenden
            ! var deviceSerialNumber = 'xxxxxxxxxx';
            var deviceType = 'xxxxxxxx';
            ! var guideId = 's100198'; // Radiostation: eins Live
            var mediaOwnerCustomerId = 'A3V01NCOU0M93M'; // CUSTOMERID
            var csrf = 'xxxxxxx'; // aus der URL
            ! var cookie = 'xxx hier den langen Cookie Wurm eintragen xxx';
            ! // URL, die abgefragt, bzw. gesendet werden soll:
            var options = {
            host: 'layla.amazon.de',
            path: '/api/tunein/queue-and-play?deviceSerialNumber='+deviceSerialNumber+'&deviceType='+deviceType+'&guideId='+guideId+'&contentType=station&callSign=&mediaOwnerCustomerId='+mediaOwnerCustomerId,
            method: 'POST',
            headers: {
            'Origin': 'http://alexa.amazon.de',
            'Accept-Encoding': 'gzip, deflate, br',
            'Accept-Language' : 'de',
            'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36',
            'Content-Type' : 'application/json; charset=UTF-8',
            'Accept' : 'application/json, text/javascript, /; q=0.01',
            'Referer' : 'http://alexa.amazon.de/spa/index.html',
            'csrf' : csrf,
            'Cookie' : cookie,
            'Connection' : 'keep-alive',
            'Content-Length' : 0,
            'DNT' : 1
            }
            };
            ! function httpsRequest() {
            var req = https.get(options, function(res) {
            ! if(logOn) log('STATUS: ' + res.statusCode); // Statuscode
            if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver)
            // Buffer the body entirely for processing as a whole.
            var bodyChunks = [];
            var chunkLine = 0;
            res.on('data', function(chunk) {
            chunkLine = chunkLine + 1;
            if(logOn) log("Zeilennummer: " + chunkLine+ " ,Inhalt: " + chunk);

                // Hier können die einzelnen Zeilen verarbeitet werden...
                bodyChunks.push(chunk);
            
            }).on('end', function() {
                if(logOn) log("ARRAY mit den einzelnen Zeilen: " + bodyChunks);
                if(logOn) log("ARRAY Länge: " + bodyChunks.length);
            

            ! var body = Buffer.concat(bodyChunks);
            ! if(logOn) log('BODY: ' + body);
            // ...und/oder das Gesamtergebnis.
            ! });
            ! });
            ! req.on('error', function(e) { // Fehler abfangen
            log('ERROR: ' + e.message,"warn");
            });
            }
            ! // main
            // -----------------------------------------------------------------------------
            function main() {
            httpsRequest();
            }
            ! // Start Skript:
            // -----------------------------------------------------------------------------
            ! // Kommentar entfernen, wenn die Abfrage zum Skriptstart ausgeführt werden soll:
            setTimeout(main, 500);
            ! ````

            1 Reply Last reply Reply Quote 0
            • M
              Marcolotti last edited by

              Hallo,

              wo fängt die Cookie-Wurst an und wo hört sie auf?

              Bei x-wl-uid= ?

              08:01:28.204	[error]	javascript.0 script.js.Alexamusik compile failed: SyntaxError: Invalid or unexpected token
              Bisher gibt es leider nur eine ungenaue Fehlermeldung: 
              

              Das Script ist schonmal ein riesengroßer Fortschritt.

              Gruß Marco

              1 Reply Last reply Reply Quote 0
              • M
                Marcolotti last edited by

                Den Fehler hab ich gefunden bei:

                var cookie                  = 'xxx hier den langen Cookie Wurm eintragen xxx'';
                

                da ist hinten ein Strich zuviel:

                var cookie                  = 'xxx hier den langen Cookie Wurm eintragen xxx';
                

                Die Cookiewurst fängt an mit: cookie …...... und endet vor````
                ; s_nr=

                
                Jetzt funktioniert es. Dankeschön!
                
                Gruß Marco
                1 Reply Last reply Reply Quote 0
                • ruhr70
                  ruhr70 last edited by

                  @Marcolotti:

                  Den Fehler hab ich gefunden bei:

                  var cookie                  = 'xxx hier den langen Cookie Wurm eintragen xxx'';
                  

                  da ist hinten ein Strich zuviel:

                  var cookie                  = 'xxx hier den langen Cookie Wurm eintragen xxx';
                  

                  Die Cookiewurst fängt an mit: cookie …...... und endet vor; s_nr= `

                  Danke! 🙂 Das zweite Hochkomma zuviel ist reingekommen, als ich meinen Cookie gelöscht hatte.

                  Ich ändere das oben im Skript.

                  Für alle:

                  Der Cookie sieht ungefähr so aus:

                  (Beispiel von: https://www.gehrig.info/alexa/Alexa.html)

                  x-amzn-dat-gui-client-v=1.24.986.0; aws-target-static-id=14712345678-839972; aws-session-id=168-0412369-4130549; aws-session-id-time=2106194071l; aws-x-main=PgpqvER9Wibauhf4zfSDriNBlBILfMnk; aws-at-main=Atza|IwEBIAFsntUWFc_PZvFde5drDzPNXXXXXXXXXHPqI53aQNl-Fu83eAMUsFJmMtamv_4mLKEh6N82lqq8OHA8SKgh44X2MZwTguXNcUvd0-RVQyayT2lQ86JjoXvJrlMlrZIs7kJLWBryCGJEXXXXXXXXXXFJQpHhnGeC72ljNT_nVObL_wZoYhMFHVMXGiYjFyrb-QcjYY-I3ar-Q-kLAmzZYQIKU-mZ8GChNefKuG_x4ZZ2A06XXXXXXXXXOhX9w94vgmn2y3Qr9Q0rEi8K--UoFuTQ54GArubNsofNLh4U2dov8D7Gs3GoW6Hp2zEwt7cyumpRR_vceAz3aUjskoNKXsgDfpPZrebl-0R4bC6BfIasyoDOX9XXXXXXXXjRihKSxf4gs79p1ExYBmaBOX6glBrsKRqOXfk6Vh87_96uQ; aws-userInfo=%7B%22arn%22%3A%22arn%3Aaws%3Aiam%3A%3A314911114493%3Aroot%22%2C%22alias%22%3A%22%22%2C%22username%22%3A%22MeinUser%2520Name%22%2C%22keybase%22%3A%22dhVv%2Fmb%2BJyCH%2BJA6zwfighlgs5jc0W0mVYXkLBkb77M%5Cu003d%22%2C%22issuer%22%3A%22https%3A%2F%2Fwww.amazon.com%2Fap%2Fsignin%22%7D; __utmv=191231197.PgpqvER9Wibauhf4zfSDXXXXXXXXk; s_dslv=1475471239073; regStatus=registered; aws-target-visitor-id=1475445653051-715340.26_4; aws-target-data=%7B%22support%22%3A%221%22%7D; s_pers=%20s_ev15%3D%255B%255B%2527Typed%252FBookmarked%2527%252C%25212375474893114%2527%255D%255D%7C1632141293114%3B%20s_fid%3D0523A63XXXXXXXXX3C9679E640DA3570%7C1538547024210%3B%20s_dl%3D1%7C1475481765932%3B%20gpv_page%3Dno%2520value%7C1475481765939%3B; session-id=151-3512347-8293901; session-id-time=2106212731l; s_fid=71689F1234D6D238-299FD69294EFC3C1; s_nr=1475492764173-Repeat; aws-ubid-main=151-3388123-1263140; aws-session-token="lprp9YroXXXXXXXXXz5EFfSaPt96R0oSBWL2dR/AGFdlmk4QwRcVPXXXXXXXrmZ5kfHBdNwvSWWMKTnYU0pB5CE2XXXXXXUk6SIuaQYti17ZQ8B3NGwyCKNs7Lil+kz9qonZS5/cwtmrWHCe7SGx/QmPXXXXXXX89WbiV2xwTRkhVw6hTjO+8WUOXXXXXXXXi8MaR196v+Ewflx7dd3ouTVtY+hbJE4XSs="; __utma=194891197.1975555581.1444474071.1475495555.1475555580.5; __utmz=194555597.1475555680.5.2.utmccn=(referral)|utmcsr=console.aws.amazon.com|utmcct=/cloudwatch/home|utmcmd=referral; ubid-main=152-8362434-2710144; session-token="Y2Eoqs81+wIbanI7mPonK9t7gFvH7ZdTG2OxCZB3orqTILNY5ev4cFBWiSPTl2u8nFNXNmwtFP6RxnPBTunkdbHfpos8WYYOX7gEF52wnn5J3SknsvO99+MAT5GeyMR4JRa+ZOX+DcnIt8xtgYY2sSaEZ3JspjrQF+M9PUkuT9D4aYbZGRNa1BkFvoOt8Kettr9xxS/ODPfXEaE6xJr7qyPv0IQ3K6e+FbfGk3AWypY="; x-main=4r7ZrJJV4BT1R2sWn2W4NpiXZm9RSJLD; at-main=Atza|IwEEEEE4EikDns-CTHnGRqXXXcnnaij75AfcF1-XOBvphYTp_ATJHu6f0vDgMI7B1ApWn51cP6bqvG-XXXXeTPD8t7jl5El_FdhlYn3mmtn476FfnI5E7anoZNSKLyE-jauNJssBeGUjsSd0z8746mujYcJbKQsMMVVUlxcu4jXXxXXYcC4GasQyvOIp92wY-TPKAOys8NV0-yXH4xTGBzgJ0zzJa5JvyRz2v0x3fijvyXXXXXXSDhZtaDOZ6GOQlYrsUmudsorYUcUT52x0EYavXXXXX92cmgkMUzuTxppV1SpLk2Wk63LQQkCCZLs6_HWlnX2Saf0zgc13BdUehhSBiYHzJJeg1Ys7g68GLG5IuSGvyGe8ebmcN9KUDdD2CwphaeW34iy6dVKGbUpJ3GKVlz; sess-at-main="eSHstcxm5Krki5T1EAcQyk9XXXXXXqMbqcJqDBaA="; csrf=-2012345694'
                  

                  Der Cookie Steht im folgenden Header im cURL (Beginn des Cookies):

                  -H 'Cookie: x-am
                  

                  Das:

                  -H 'Cookie:
                  ````entfällt. Dann das erste Hochkomma setzen.
                  
                  Vor dem nächsten -H im cURL endet der Cookie. Das Hochkomma ist in der Debugausgabe schon drin.
                  1 Reply Last reply Reply Quote 0
                  • M
                    Marcolotti last edited by

                    Hmm. Das funktioniert noch immer nicht.

                    10:09:49.977	[info]	javascript.0 script.js.Relaxmusik: STATUS: 401
                    10:09:49.978	[info]	javascript.0 script.js.Relaxmusik: HEADERS: {"x-amzn-requestid":"*****************************************","access-control-allow-origin":"http://alexa.amazon.de","loginurl":"https://www.amazon.de/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Falexa.amazon.de&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee_de&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&","content-encoding":"gzip","vary":"Origin","access-control-expose-headers":"x-amzn-dat-gui-client-upgrade,X-Amzn-Error,loginUrl,X-Amzn-RequestId,x-amzn-alt-domain,Date,Location","access-control-allow-credentials":"true","content-length":"20","date":"Sat, 08 Apr 2017 08:09:49 GMT"}
                    10:09:49.979	[info]	javascript.0 script.js.Relaxmusik: Zeilennummer: 1 ,Inhalt: �
                    10:09:49.979	[info]	javascript.0 script.js.Relaxmusik: ARRAY mit den einzelnen Zeilen: �
                    10:09:49.979	[info]	javascript.0 script.js.Relaxmusik: ARRAY Länge: 1
                    10:09:49.980	[info]	javascript.0 script.js.Relaxmusik: BODY: �
                    
                    1 Reply Last reply Reply Quote 0
                    • ruhr70
                      ruhr70 last edited by

                      @Marcolotti:

                      Hmm. Das funktioniert noch immer nicht.

                      10:09:49.977	[info]	javascript.0 script.js.Relaxmusik: STATUS: 401
                      ```` `  
                      

                      401

                      Unauthorized

                      Die Anfrage kann nicht ohne gültige Authentifizierung durchgeführt werden. Wie die Authentifizierung durchgeführt werden soll, wird im „WWW-Authenticate“-Header-Feld der Antwort übermittelt.

                      Du brauchst eigentlich keine Authentifizierung.

                      Ich vermute, dass Dein Cookie noch nicht richtig ausgeschnitten ist?

                      Ich poste gleich noch ein Skript, mit dem man die Lautstärke steuern kann.

                      1 Reply Last reply Reply Quote 0
                      • ruhr70
                        ruhr70 last edited by

                        Das Skript um die Lautstärke von Alexa zu steuern:

                        // Alexa mit Javaskript in ioBroker steuern
                        // Variante: Lautstärke steuern
                        // ----------------------------------------
                        
                        // 1\. cURL extrahieren, siehe
                        //    https://www.gehrig.info/alexa/Alexa.html
                        
                        // ----------------------------------------
                        // Infos und Resourcen zum Skript:
                        // Webseiten/URLs Request mit Fehlerbehandlung, siehe:
                        // http://forum.iobroker.net/viewtopic.php?f=21&t=4259&p=40890&hilit=request#p40880
                        // Alexa Steuerskripte:
                        // https://github.com/thorsten-gehrig/alexa-remote-control
                        
                        var logOn           = true;     // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben.
                        var https = require('https');     // Node Module https verwenden
                        
                        var deviceSerialNumber      = 'xxxx'; // eigene Daten eintragen 
                        var deviceType              = 'xxxxx'; // eigene Daten eintragen 
                        
                        var csrf                    = 'xxxxx'; // eigene Daten eintragen 
                        var cookie                  = 'xxxxxxx sehr langer String :-)'; // eigene Daten eintragen 
                        
                        // Lautstärke
                        var volume                  = 80; // Volume: 0-100
                        
                        var data ='{"type":"VolumeLevelCommand","volumeLevel":'+volume+'}';
                        
                        // https Request:
                        var options = {
                          host: 'layla.amazon.de',
                          path: '/api/np/command?deviceSerialNumber='+deviceSerialNumber+'&deviceType='+deviceType,
                          method: 'POST',
                          headers: {
                            'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36',
                            'Content-Type': 'text/plain',
                            'csrf' : csrf,
                            'Cookie' : cookie
                          }
                        };
                        
                        function httpsRequest() {
                            var req = https.request(options, function(res) {
                            //res.setEncoding('utf8');
                            if(logOn) log('STATUS: ' + res.statusCode);               // Statuscode
                            if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver)
                            });
                        
                            req.on('error', function(e) { // Fehler abfangen
                                log('ERROR: ' + e.message,"warn");
                            });
                        
                            if(logOn) log("Data: " + data);
                            // write data to request body
                            req.write(data);
                            req.end();
                        }
                        
                        // main
                        // -----------------------------------------------------------------------------
                        function main() {
                            httpsRequest();
                        }
                        
                        // Start Skript:
                        // -----------------------------------------------------------------------------
                        
                        // Kommentar entfernen, wenn die Abfrage zum Skriptstart ausgeführt werden soll:
                        setTimeout(main,    500);
                        
                        
                        1 Reply Last reply Reply Quote 0
                        • lobomau
                          lobomau last edited by

                          Schon mal vielen Dank für Scripts!

                          Habe leider auch die Probleme wie MArcolotti. Der Cookie Wurm ist die Herausforderung. Das sollte das zu kopierende sein!?:
                          > x-amzn-dat-gui-client-v=1.24.1755.0; x-wl-uid=1h1qY12j4EGQUmsiuHicf3XNW4NDA7QWd2ppfGmWzGKJoLeJ000H6UubHmN9fs+MqLqroqTH4TK/s/3Ua61LulBC4oOgX0w75tsIM0uJPIb0UXUA6mUR9Ib/qctX0a3Ol1j8rzlAtBzI=; s_vnum=1916337938350^%^26vn^%^3D1; s_nr=1484338226680-New; s_dslv=1484338226682; csrf=774662358; lc-acbde=de_DE; session-id=261-2998010-1601047; session-id-time=2122366660l; ubid-acbde=253-1097861-8288162; session-token=^\^"l5XPt46usn7B6SoL5mOgsa6frW2nsivF7xIqUXGxoFlkBEbm3BS+dys50R/A0hB7aXFpt4U70qvgGj+MvGFzY0RnVLc3s+MxygYGCauB+3vWfAyDe6ftvPmrQ/bLOheHLGy2QV71mErCyq+xY9dLzUYi52N3NtaDcWgxx6erOtsEzd5wzfQnT0IVoIZmn1F2Qy6PRXO6myz4/vR3JzyYnM5CPrHkBHLBSWxPKublgfY=^\^"; x-acbde=^\^"evLOXLWe6Rd?yDsy3F4eISMlbXQR8lGd^\^"; at-acbde=Atza^|IwEBIDSHgaEVLVp5cRlfh0DQURirTfBOh4kwuX5JnpLID9T6-mCRAnhc2dFleVcG3cDgX4matAyOkFG-0ETggmm_YJqqwenObx7iLSgV4LuvVCNgDOvG-MxPU8zGTgMQswhaEIHk3B1Q1WXVYgs0M5JJWy3aIIRxp_uqf0ERQJ3pvX7BXAXzz1s0e6CWMVh2U6K7zmv_gGNGAeeaWqGPe76MgwQloJ5BY8UdyYOe7f9MME_tEFvB8nZSYCWaz46T8AAKydyCBvs5gK_iFHKXAe04bfIt6sztzkKt3lzRdTNx_w_X80C2yydCQhJe6B3VeIze_hnSq0WA-IYdBC1OQdkG71KLO1GIWSBOw2Mx3-D4QiyC5yAVwO4_tWJhPxEk8y9NVNkJEOlBNyHaKvYu_n6FjDc8; sess-at-acbde=^\^"f7R7cys4RjkJQm5//WSORykuJcQ3WTXkYKNbGjdda+c=^\^""

                          Wie wird das Script angewendet? Script Start und Radio von Alexa startet?

                          EDIT: ist wohl auch ein Formatierungsfehler mit drin. Bei mir ist oft:````
                          ^^

                          Habe es mit Win10 gemacht und Editor.
                          1 Reply Last reply Reply Quote 0
                          • ruhr70
                            ruhr70 last edited by

                            Das Wichtigste ist, dass Ihr den Cookie sauber ins Skript schreibt.

                            Der Beginn sieht bei Dir schon gut aus: x-amzn-dat-gui-client-v=

                            Bei mir endet der Cookie mit: csrf=xxxxxxxxxx

                            Das Ende scheint Ihr beide nicht mitzukopieren.

                            Alles in einer Zeile und am Anfang und Ende jeweils ein einfaches Hochkomma.

                            Das ^^ sieht in der Tat komisch aus. Nutzt Du einen Editor, der auf nur Text eingestellt ist? Ggf. noch der Zeichensatz (Codepage).

                            Ist das in der Chrome Debugausgabe auch schon so drin? Sonst kopier doch von Chrome direkt in den ioBroker Editor und bau da die eine Zeile zusammen.

                            Wenn das mit dem Cookie funktioniert, geht es weiter. Die beiden bisherigen Skripte sind nur erst einmal da, um die grundsätzlichen Funktionen Radio und Kommandos zu testen. Ich mache gerade ein komplettes Skript fertig, in dem dann alles drin ist, inkl. der Datenpunkte zum steuern.

                            Wichtig ist aber das eins von den kleinen Skripten bei Euch funktionieren (Cookie), sonst macht das Andere auch keinen Sinn.

                            1 Reply Last reply Reply Quote 0
                            • ruhr70
                              ruhr70 last edited by

                              Die Alexa-Kommandos habe ich bisher im Skript eingebaut:

                              //    alexaCommand("volume",70);    // Alle Anwendungen
                              //    alexaCommand("pause");    // Radio, Spotify, Hörbücher
                              //    alexaCommand("play");     // Radio, Spotify, Hörbücher
                              //    alexaCommand("next");     // z.B. Spotify: nächstes Lied
                              //    alexaCommand("forward");  // z.B. Hörbücher: 30 Sekunden vor
                              //    alexaCommand("rewind");  // z.B. Hörbücher: 30 Sekunden zurück
                              //    alexaCommand("shuffle",true);
                              //    alexaCommand("shuffle",false);
                              
                              
                              1 Reply Last reply Reply Quote 0
                              • lobomau
                                lobomau last edited by

                                Bei mir kommt kein Fehler 401 mehr.

                                Läuft es nun bei mir? So sieht der log aus:

                                javascript.0	2017-04-08 15:16:37.513	info	script.js.common.Alexa-start: BODY:
                                javascript.0	2017-04-08 15:16:37.512	info	script.js.common.Alexa-start: ARRAY Länge: 0
                                javascript.0	2017-04-08 15:16:37.511	info	script.js.common.Alexa-start: ARRAY mit den einzelnen Zeilen:
                                javascript.0	2017-04-08 15:16:31.472	info	script.js.common.Alexa-start: HEADERS: {"x-amzn-requestid":"blabla1234567890","access-control-allow-origin":"http://alexa.amazon.de","content-encoding":"gzip","vary":"Origin","acc
                                javascript.0	2017-04-08 15:16:31.472	info	script.js.common.Alexa-start: STATUS: 0
                                javascript.1	2017-04-08 15:16:30.765	info	Stop script script.js.common.Alexa-start
                                javascript.0	2017-04-08 15:16:30.700	info	script.js.common.Alexa-start: registered 0 subscriptions and 0 schedules
                                javascript.0	2017-04-08 15:16:30.696	info	Start javascript script.js.common.Alexa-start
                                javascript.0	2017-04-08 15:16:30.687	info	Stop script script.js.common.Alexa-start
                                
                                1 Reply Last reply Reply Quote 0
                                • M
                                  Marcolotti last edited by

                                  Was hast du getan?

                                  1 Reply Last reply Reply Quote 0
                                  • lobomau
                                    lobomau last edited by

                                    @Marcolotti:

                                    Was hast du getan? `
                                    Ich habe bis einschließlich````
                                    csrf=xxxxxxxxx

                                    
                                    Direkt kopieren von chrome in ioB war wieder dieser Formatierungsfehler dabei.
                                    1 Reply Last reply Reply Quote 0
                                    • ruhr70
                                      ruhr70 last edited by

                                      @lobomau:

                                      Bei mir kommt kein Fehler 401 mehr.

                                      Läuft es nun bei mir? So sieht der log aus:

                                      javascript.0 2017-04-08 15:16:31.472 info script.js.common.Alexa-start: STATUS: 0 `

                                      Würde sagen, dass es nicht läuft.

                                      Status sollte 200 sein.

                                      Wenn ich beim Cookie das csrf=xxxxxxxxx; entferne bekomme ich Deine Log-Ausgabe.

                                      Also Dein Cookie scheint noch nicht OK zu sein.

                                      [EDIT] Kleiner Nachtrag:

                                      Das csrf=xxxxxxxxx ist beim Cookie für die Alexa Kommandos (Play, Pause, +30 Sekunden, usw.) nicht mit dabei.

                                      1 Reply Last reply Reply Quote 0
                                      • lobomau
                                        lobomau last edited by

                                        @ruhr70:

                                        Würde sagen, dass es nicht läuft.

                                        Status sollte 200 sein. ` Status 200habe ich nun… aber der Rest sieht komisch aus!?

                                        EDIT: funktioniert! Starte ich das Script, startet Alexa! 😄

                                        javascript.0	2017-04-08 21:51:39.638	info	script.js.common.Alexa-start: BODY: ��VJ-*�/R��+�ɩT�s
                                        javascript.0	2017-04-08 21:51:39.637	info	script.js.common.Alexa-start: ARRAY Länge: 1
                                        javascript.0	2017-04-08 21:51:39.637	info	script.js.common.Alexa-start: ARRAY mit den einzelnen Zeilen: ��VJ-*�/R��+�ɩT�s
                                        javascript.0	2017-04-08 21:51:39.636	info	script.js.common.Alexa-start: Zeilennummer: 1 ,Inhalt: ��VJ-*�/R��+�ɩT�s
                                        javascript.0	2017-04-08 21:51:39.636	info	script.js.common.Alexa-start: HEADERS: {"x-amzn-requestid":"1234567890","access-control-allow-origin":"http://alexa.amazon.de","content-encoding":"gzip","vary":"Origin","acc
                                        javascript.0	2017-04-08 21:51:39.635	info	script.js.common.Alexa-start: STATUS: 200
                                        javascript.0	2017-04-08 21:51:38.434	info	script.js.common.Alexa-start: registered 0 subscriptions and 0 schedules
                                        javascript.0	2017-04-08 21:51:38.428	info	Start javascript script.js.common.Alexa-start
                                        javascript.1	2017-04-08 21:51:38.417	info	Stop script script.js.common.Alexa-start
                                        javascript.0	2017-04-08 21:51:38.416	info	Stop script script.js.common.Alexa-start
                                        

                                        Der cookie sieht am Anfang und Ende folgendermaßen aus: "x-amzn-dat-gui-client-v=….YKNbGjdda+c="

                                        Weiter würde es so gehen nach Ende des Cookies: ^^"" -H "Connection:...

                                        Ich habe also alles genommen bis zum nächsten -H und nicht bis csrf. csrf taucht bei mir viel früher auf. Außerdem habe ich die "^" "^^" alle gelöscht.

                                        1 Reply Last reply Reply Quote 0
                                        • ruhr70
                                          ruhr70 last edited by

                                          @lobomau:

                                          Ich habe also alles genommen bis zum nächsten -H und nicht bis csrf. csrf taucht bei mir viel früher auf. Außerdem habe ich die "^" "^^" alle gelöscht. `

                                          Bis zum nächsten -H war der richtige Ansatz 🙂

                                          Schön, dass das jetzt funktioniert.

                                          Ich werde zeitnah (eventuell morgen Abend) das umfangreiche Skript bereitstellen.

                                          Da braucht man dann einen Cookie und die Seriennummern der Echos und dann kann man die Alexa-Echos entsprechend steuern.

                                          Auszug aus den Datenpunkten, wie sie bisher erstellt werden:
                                          327_alexa.control.jpg

                                          1 Reply Last reply Reply Quote 0
                                          • lobomau
                                            lobomau last edited by

                                            Cool. Echos hast du ja genug 🙂

                                            Das erste Script ist schon top. Auf die schnelle fällt mir ein weiterer Einsatz an. Bei Anruf, mach den Echo leise.

                                            Oder TV an, Echo aus.

                                            Da kommen bestimmt noch weitere Ideen und dafür könnten die weiteren Datenpunkte interessant werden.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            539
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            11
                                            41
                                            12759
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo