Alexa.sh v5.11 (stable) - Sprachausgabe und Fernsteuerung für Amazon Echo

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Tomiliy
Beiträge: 156
Registriert: 03.12.2014, 19:28
Hat sich bedankt: 12 Mal
Danksagung erhalten: 1 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Tomiliy » 07.10.2020, 20:33

Hallo,
es tut mir leid, aber ich bin mit dem Thema gedanklich noch nicht durch.
Mir ist schleierhaft warum das nicht funktioniert.

Wenn ich mich parallel im Browser auf meinem PC bei Alexa.amazon.de anmelde passiert auf der CCU folgendes:
Ich habe extra immer einen Zeitstempel daneben gemacht.... Am Browser am PC verändere ich nix.
Javascript ist aktiv, der Coockie wird gespeichert

Ich bräuchte bitte eine Idee.....

wenn die Anmeldung funktioniert passiert unter der CCU3 im /tmp Order folgendes:

Code: Alles auswählen

 ls -lisa /tmp/.alexa.cookie
 840038      4 -rw-r--r--    1 root     root          1512 Oct  7 20:38 /tmp/.alexa.cookie
ich habe die Datei schnell kopiert, denn Sie wird augenblicklich wieder gelöscht, genau wie die .alexa.devicelist.json Datei. Auch diese wird augenblicklich wieder gelöscht.
Gibt es irgendwo ein Aufräumscript für /tmp?

Inhalt vom Coockie:

Code: Alles auswählen

# cat /tmp/.alexa.cookie2 .
.ash_history   .bash_logout   .bash_profile  .ssh/
# cat /tmp/.alexa.cookie2 .
.ash_history   .bash_logout   .bash_profile  .ssh/
# cat /tmp/.alexa.cookie*
# Netscape HTTP Cookie File
# https://curl.haxx.se/docs/http-cookies.html
# This file was generated by libcurl! Edit at your own risk.

.amazon.de      TRUE    /       TRUE    1633631916      ubid-acbde      262-3147167-1520748
.amazon.de      TRUE    /       TRUE    1633631916      session-id      260-5590358-5882314
.amazon.de      TRUE    /       TRUE    1633631916      session-id-time 2232815916l
.amazon.de      TRUE    /       TRUE    1633631917      session-token   "Y/JU70lH7u3uBPXGrq0P77lwZL0hJMqb/WNx4RTvXVD9r6M5lQNV95lOHnXFZM3jgvfkjIG1MLuM7yCYg6QdA0+IJjuLm6/SB3KDMSoDhlI+wsixem7QJxR9L16JjNb7YmTD8zIzp4s5VnKDtU+C62APTu9vl3/HXwLVFfFK8Y/RVhUMaBTUU2K/9EuXI+K3JPcKp8uijxXdBFUv4j8s2xy5HwTXPz0jNUdImNITM="
.amazon.de      TRUE    /       TRUE    1633631917      x-acbde "wHFumgwABf51TSH2rE5@GsGNPfLZiw8o"
#HttpOnly_.amazon.de    TRUE    /       TRUE    1633631916      at-acbde        Atza|IwEBIHZ_bLzWS42bEAqR6bTUPxVIgGed8lU6PQ6v8PhqUg2Zyni1MR9aiC7fAyFD0qy1IS6aYmfwMUB4vMhH_gYRqomRRJlNsYdHrg vizu7mWVB32Ldn_QBbkNxAiuNn6ORI8URA-JgYLAkekeQQbeS6t7As4PwxIc6c_k2wDi6_2b0au0wpLU963WGMBET37k2a0NxEb-iVQ64AQvdJLwZP1d6X5w1EkhcztD4VCG0Afmo_7g
#HttpOnly_.amazon.de    TRUE    /       TRUE    1633631917      sess-at-acbde   "x6e8pVBHFUYJP2k0LuJ3jXN4nFnC/WYuD9uZ/vSF9TE="
#HttpOnly_.amazon.de    TRUE    /       TRUE    1633631916      sst-acbde       Sst1|PQE5SFWtyFUVe0Xx6Q1IQX0LCf4xpvpTcNniLmmEQW3xzlIyxCvSMn7z789dBXCHxEDpROySPY26Tu8EWnYWTucCzhovv7gNE9j60fQJtr0jzczuo7uKFVdKOusoDXv7Bb923LGHLplm7G2RzUi_hKqrSf540C-5YW1URU-sx7IeL4f6zS96QyPTd2leyDCsfNUZ4B80g6iev9rrwSf1qhd8DIoPGZbjXZNO-yURLJSCAZgCqEmowdq0wZz3ynjEcekJYRh5XNwe7oIk52PqCqJaV_gaWsIU8iLwYxovXm0
.amazon.de      TRUE    /       FALSE   1917628717      csrf    -274284431
Frage:
Warum bleiben diese Dateien nicht bestehen?

Code: Alles auswählen

# crontab -l
0 * * * * /bin/setHWClock.sh >/dev/null 2>/dev/null
1 */6 * * * /bin/SetInterfaceClock
0 4 * * * /usr/sbin/logrotate -f /etc/logrotate.conf || logger -p error -t "logrotate" "logrotate aborted with error $?"
*/5 * * * * /usr/local/addons/mediola/bin/watchdog
33 * * * * /usr/local/addons/alexa/check_cookie.sh > /dev/null
in der crontab gibt es keinen Löschbefehl für /tmp



Auf der CCU3 passiert folgendes: Bitte beachtet die Zeiten, so schnell kann doch kein Coockie expiren...

Code: Alles auswählen

# date
Wed Oct  7 20:24:43 CEST 2020
# /usr/local/addons/alexa/alexa.sh -a
cookie does not exist. logging in ...
device list does not exist. downloading ...
the following devices exist in your account:
This Device
Kueche
Wintergarten
Überall
Wohnzimmer
Großes Bad
Kleines Bad
Elternschlafzimmer

# date
Wed Oct  7 20:25:03 CEST 2020
# /usr/local/addons/alexa/alexa.sh -a
the following devices exist in your account:
This Device
Kueche
Wintergarten
Überall
Wohnzimmer
Großes Bad
Kleines Bad
Elternschlafzimmer

# date
Wed Oct  7 20:25:09 CEST 2020
# /usr/local/addons/alexa/alexa.sh -a
cookie expired, logging in again ...
ERROR: Amazon Login was unsuccessful. Possibly you get a captcha login screen.
 Try logging in to https://alexa.amazon.de with your browser. In your browser
 make sure to have all Amazon related cookies deleted and Javascript disabled!

 (For more information have a look at /tmp/.alexa.login)

 To avoid issues with captcha, try using Multi-Factor Authentication.
 To do so, first set up Two-Step Verification on your Amazon account, then
 configure this script (or the environment) with your MFA secret.
 Support for Multi-Factor Authentication requires 'oathtool' to be installed.
#
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------

Xel66
Beiträge: 14169
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 586 Mal
Danksagung erhalten: 1500 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Xel66 » 07.10.2020, 23:14

Dei Dateien werden gelöscht, wenn das Script auf ein abgelaufenes Cookie trifft. Es erfolgt kein externes Löschen. Also irgendwas macht das Cookie ungültig. Man darf sich am Rechner nicht ausloggen, sondern wirklich einfach nur den Browser schließen, wenn man das Cookie händisch auf die CCU kopiert. Ist 2FA aktiviert braucht man das ja eigentlich nicht.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Tomiliy
Beiträge: 156
Registriert: 03.12.2014, 19:28
Hat sich bedankt: 12 Mal
Danksagung erhalten: 1 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Tomiliy » 08.10.2020, 08:16

Ok, aber ich hatte ja gesagt, ich ändere am Browser nichts...
Ich bin eingeloggt und dann nur auf der CCU3.

Was kann denn noch dafür sorgen das das Coockie gelöscht wird?
Mir fehlt leider das Hintergrundwissen um da etwas vernünftiges sagen zu können, deswegen die Ausführlicher Beschreibung.

Und was hat der Coockie auf meinem Rechner mit dem auf der CCU3 zu tun? Ich habe 2FA aktiviert, die App ist bekannt und ab und an, klappt der Login ja auch.

Gibt es noch Einstellungen in alexa.amazon.de oder amazon.de/konto, die ich setzten / ändern muss?
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------

Tomiliy
Beiträge: 156
Registriert: 03.12.2014, 19:28
Hat sich bedankt: 12 Mal
Danksagung erhalten: 1 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Tomiliy » 08.10.2020, 22:45

...leider habe ich immer nur Abends Zeit mich um dieses Problem zu kümmern.
es gibt noch eine Entdeckung die ich gemacht habe, in der Hoffnung das mir jemand hier die Zusammenhänge erklären kann und evtl. eine Lösung dabei heraus kommt.

Ich logge mich auf meiner CCU3 ein und starte: /usr/local/addons/alexa/alexa.sh -a
Ergebnis:

Code: Alles auswählen

# /usr/local/addons/alexa/alexa.sh -a
cookie does not exist. logging in ...
ERROR: Amazon Login was unsuccessful. Possibly you get a captcha login screen.
 Try logging in to https://alexa.amazon.de with your browser. In your browser
 make sure to have all Amazon related cookies deleted and Javascript disabled!
Ich habe mir einen neuen Browser installiert.
Dort habe ich ich mich in alexa.amazon.de eingeloggt und bleibe eingeloggt.

Ergebnis:

Code: Alles auswählen

# /usr/local/addons/alexa/alexa.sh -a
cookie does not exist. logging in ...
device list does not exist. downloading ...
the following devices exist in your account:
This Device
Kueche
Wintergarten
Überall
Wohnzimmer
Großes Bad
Kleines Bad
Elternschlafzimmer

Code: Alles auswählen

# ls -lisa /tmp/.ale*
2149405      4 -rw-r--r--    1 root     root          1513 Oct  8 22:34 /tmp/.alexa.cookie
2147181     20 -rw-r--r--    1 root     root         19456 Oct  8 22:34 /tmp/.alexa.devicelist.json
beim 2. Aufruf, meist ca. 8-12 Sekunden nach dem ersten Aufruf löscht das alexa.sh Skript meinen Coockie und es funktioniert nicht mehr
rufe ich das Script nicht auf, bleiben die beiden Dateien ewig dort stehen.
erst ein erneuert Aufruf des Scripts löscht die Dateien wieder. Ich nehme an, der Cronjob in einer halben Stunde würde das auch erledigen, aber erstmal tut das Script dieses.
Wie gesagt, ich bin in meinem neuen Browser immer noch eingeloggt. Und eigentlich verstehe ich sowieso den Zusammenhang nicht zwischen dem einmaligen Einloggen in alexa.amazon.com und der Funktion der Funktion auf der CCU3.

ich weiß nur, das irgendwas dazu führt das der Coockie gelöscht wird. ich hab nur keine Ahnung was.
Bitte um Unterstützung
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------

Xel66
Beiträge: 14169
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 586 Mal
Danksagung erhalten: 1500 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Xel66 » 08.10.2020, 23:26

Tomiliy hat geschrieben:
08.10.2020, 22:45
ich weiß nur, das irgendwas dazu führt das der Coockie gelöscht wird.
Löschen tut es wie oben beschrieben das Lötzimmer-Script. Warum die Session auf den Ama****-Servern abläuft, könnte wahrscheinlich nur deren Support beantworten. Ich vermute mal, dass eine Session eine vereinfachten Login (den vom Script) auf IP-Ebene durchläuft (deine CCU und Dein Rechner haben ja auch Anbietersicht die gleiche IP - eben die öffentliche Deines Routers). Ob dieses so geschickt ist, mag ich nicht bewerten. Ist die Session eben auf dem Server abgelaufen (warum auch immer - vermutlich aber, weil der Rechner die Session nicht mehr aufrecht erhält), dann ist somit auch das Cookie ungültig und wird vom Lötzimmer-Script gelöscht. Da ich keine 2FA benutze, weil ich nicht ständig Zugriff auf ein Mobiltelefon habe, kann ich Dir da auch nicht weiterhelfen. Ich kopiere noch händisch alle paar Wochen ein Cookie auf meine RM. Mein Szenario weicht also von Deinem ab.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Tomiliy
Beiträge: 156
Registriert: 03.12.2014, 19:28
Hat sich bedankt: 12 Mal
Danksagung erhalten: 1 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Tomiliy » 08.10.2020, 23:30

Interessante Idee...
witzigerweise hat es bis vor 2 Wochen einwandfrei funktioniert und es gab weder ein Update auf der CCU noch hab ich was an meinem Amazon account geändert.

Ich hab auf meinem PC schnell einen Proxy aktiviert, so das meine öffentliche IP vom Browser eine andere ist, als die der CCU. Das Ergebnis war das selbe.

Was muss ich denn machen, um den Coockie händisch auf die CCU zu kopieren? Und was mache ich, damit er dort auch bleibt?

Danke
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------

Tomiliy
Beiträge: 156
Registriert: 03.12.2014, 19:28
Hat sich bedankt: 12 Mal
Danksagung erhalten: 1 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Tomiliy » 08.10.2020, 23:53

Ich glaube ich hab eine Lösung gefunden....

aufgrund deiner Meldung habe ich mit Curl versucht einiges über den Aufrum von amazon.alexa.de herauszufinden.
Und jeder 2. oder dritte Aufruf wurde auf der CCU3 mit No such Host or Domain quittiert.
ein Ping brachte das gleiche Ergebnis, wenn er den Host auflösen konnte, war alles gut, oft konnte die CCU den Host aber nicht auflösen.

Ich habe also in der /etc/resolv.conf zusätzlich den google DNS Server 8.8.8.8 eingefügt.
Und jetzt klappt Augenscheinlich wieder alles.

Wenn ich mich jetzt so zurück erinnere, war vor ca. 3 Wochen mein Update auf der Fritzbox von OS 7.20 zu 7.21. Vielleicht hat es was damit zu tun.
Interessanterweise hab ich am Handy oder PC keinerlei Probleme mit den Aufrufen.

Ich werde das ganze weiter beobachten.
Danke erstmal an alle die sich beteiligt haben und mir Ideen oder Anregungen gegeben haben.
Vielleicht hat jemand mit einer Fritzbox mit FritzOS 7.21 ähnliche Probleme
--------------------------------------------
4 Kanäle in 42 Geräten:
1x HM-LC-Dim1T-FM, 1x HM-RC-8, 12x HM-Sec-SCo, 3x HM-LC-Sw1-Pl-2, 1x HM-PBI-4-FM, 1x HM-OU-CFM-Pl, 3x HM-Sen-EP, 1x HM-CC-VG-1, 1x HM-Sec-MDIR-2, 12x HM-CC-RT-DN, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-RD-O, 2x HM-PB-2-WM55-2, 1x HM-TC-IT-WM-W-EU, 1x 10000
--------------------------------------------

Xel66
Beiträge: 14169
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 586 Mal
Danksagung erhalten: 1500 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von Xel66 » 08.10.2020, 23:53

Da Kopieren ist nicht das Problem. Solange du als Login beim Anbieter 2FA aktiviert hast, funktioniert auch das nicht. Das Cookie wird immer wieder ablaufen. Ich logge mich einfach mit dem Browser ein, extrahiere das Cookie und füge es über eine SSH-Session per Putty und vi in /tmp ein. Könnte man sicher einfacher machen (z.B. ein HM-Script für schreiben, welches genau das tut), aber das reicht mir so, da ich das wirklich nur alle paar Wochen machen muss.

Wenn man das so händisch macht, benötigt man die hier vorgestellte Lösung im Grunde nicht, aber sie hat auch für mich ihre Vorteile. Ich bestelle öfter auch mal aus der Firma, habe aber dort kein Smartphone. Daher benötige ich noch ein paar andere Voraussetzungen, um 2FA aktivieren zu können. Die hier vorgestellte Lösung kann ihren Vorteil so richtig bei aktivierter 2FA ausspielen. Warum es bei Dir so nicht funktioniert, entzieht sich meinem Verständnis.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

adxenom
Beiträge: 24
Registriert: 01.04.2018, 17:16
System: CCU
Wohnort: Aalen
Danksagung erhalten: 1 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von adxenom » 09.10.2020, 19:56

Hallo,

ich habe auf meiner CCU3 die neueste Firmware 3.53.30 laufen.
Sprachausgabe auf der Alexa funktioniert.
Leider dauert es jedoch 6-7 Sekunden, bis nach einem Skriptaufruf die Alexa die Sprachausgabe ausführt.
Ist diese lange Zeitdauer normal, kann ich irgend etwas tun, um dies zu beschleunigen?

Vielen Dank für Eure Hilfe!

Benutzeravatar
blackhole
Beiträge: 3730
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 587 Mal

Re: Alexa.sh v3.09 - Sprachausgabe und Fernsteuerung für Amazon Echo

Beitrag von blackhole » 09.10.2020, 22:09

Ich habe gerade eben mal eine virtuelle Stoppuhr bemüht:

Die Latenz zwischen Start des Skripts und Start der Sprachausgabe lag hier im Schnitt bei etwa 2,5 Sekunden.
(Ich habe 10 Messungen in einem Zeitraum von 10 Minuten zwischen 21:55 Uhr und 22:05 Uhr vorgenommen.)

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“