NEWS
Alexa Radio ausschalten bzw. Einschalten
-
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) } };
-
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
-
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.
-
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);
! ```` -
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
-
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
-
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.
-
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: �
-
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.
-
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);
-
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.
-
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.
-
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);
-
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
-
Was hast du getan?
-
Was hast du getan? `
Ich habe bis einschließlich````
csrf=xxxxxxxxxDirekt kopieren von chrome in ioB war wieder dieser Formatierungsfehler dabei.
-
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.
-
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.
-
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:
-
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.