Alexa automatisiert "Fernsteuern"

Hier geht es um grundlegende Diskussionen bezüglich des Alexa Voice Service.
Benutzeravatar

dizzy85
Beiträge: 39
Registriert: Mi 15. Mär 2017, 13:44
Vorhandene Echos: 3
Vorhandene Echo Dots: 1

Mo 19. Feb 2018, 20:01

Das mit der "Lautstärke-Regelung" ging bzw geht mit dem Script von Thorsten Gehring am Anfang des Threads. Ich konte verschiedene Befehle "Kombinieren" z.b Tuneinsender+Lautstärke etc....
Zuletzt geändert von dizzy85 am Mo 19. Feb 2018, 20:02, insgesamt 1-mal geändert.
1 x
Benutzeravatar

popy
Beiträge: 33
Registriert: Sa 4. Mär 2017, 10:07

Mo 19. Feb 2018, 20:20

adn77 hat geschrieben:
Sa 17. Feb 2018, 19:34
popy hat geschrieben:
Fr 16. Feb 2018, 12:56
Mir ist aufgefallen das das abspielen von einem TuneIn Sender immer funktioniert aber das Pause einer einzelnen Alexa manchmal nicht.
(Bei einer Multiroom Gruppe kann man keine einzelnen Geräte stoppen, sondern nur die Multiroom Gruppe.)

Gelegentlich gibt es einen Fehler:

Code: Alles auswählen

{"message":"No routes found","userFacingMessage":null}
Es kann sein, dass das dann gerade "passiert". Zu dem Fehler gibt es im Internet leider keine echten Suchergebnisse, da das Teil der internen Amazon API ist.

Stabilität war bisher übrigens weniger das Problem ;) Ich habe immer ein paar Features hinzugefügt - insbesondere das letzte Update hat die wichtige Funktion des anpassbaren UserAgents gebracht - ohne diese konnte ich mich nicht mehr anmelden.
Auf der Webseite führe ich immer alle Änderungen auf - im "großen" Script steht am Anfang auch immer das Changelog drin.
popy hat geschrieben:
Fr 16. Feb 2018, 12:56
Einen Feature Wunsch hätte ich :-)
Es wäre manchmal toll gleich zwei Sachen auf einmal zu machen z.B.: Radio Spielen & Lautstärke auf 20.
habe das derzeit in FHEM bzw. einem anderen Shell script gelöst und rufe dieses Script einfach öfters auf, mit einem Sleep 2 dazwischen.
Ansonsten hatte ich Probleme dass manchmal ein befehl übersehen wurde.

Gibt es Infos wie schnell Befehle hintereinander abgesetzt werden dürfen?
Aus Sicht des Scripts ist das Limitierende momentan die Funktion "check_status", die evtl. etwas in das Cookie schreiben könnte, das werde ich gleich mal abändern.
Ansonsten kann mann das Script beliebig schnell hintereinander ausführen. Ein echtes "Multi Command" wird es nicht geben, dafür müsste ich eine Warteschlange einbauen - das macht man besser eine Ebene "höher".

Das Problem mit der Lautstärke ist allerdings eher ein Zustandsproblem in Alexa. Man kann die Lautstärke erst stellen, wenn ein Stream gespielt wird bzw. für eine gewisse Zeit nachdem ein Stream gespielt wurde. Ich habe gelesen, dass sich User behelfen, indem sie selbsthochgeladene Silence.mp3 abspielen, die Lautstärke setzen und dann den eigentlichen Stream spielen.

Momentan ruft mein FHEM z.B. folgendes auf, um beim Verlassen der Wohnung alles auszuschalten (ich habe auf meiner Fritzbox die PLAIN Variante):

Code: Alles auswählen

alexa_remote_control_plain.sh -d Küche -e pause >> /tmp/.alexa.state 2>&1 ; alexa_remote_control_plain.sh -d Esszimmer -e pause >> /tmp/.alexa.state 2>&1 ; alexa_remote_control_plain.sh -d Wohnzimmer -e pause >> /tmp/.alexa.state 2>&1 ; alexa_remote_control_plain.sh
-d Überall -e pause >> /tmp/.alexa.state 2>&1
Im .alexa.state sehe ich, falls ein Kommando mal nicht geklappt hat (s.o.).

Ich würde das Script nie parallel starten, da das zu unerwünschten Nebeneffekten kommen kann, wenn sich neu eingeloggt werden muss.

Alex

PS: für FHEM gibt es auch das echo_device Modul.
Danke für deine Ausführlichen Antworten.
Habe mittlerweile das Problem mit Pause gefunden.
Eine FHEM Lightscene mag keine Umlaute wie z.B:: ü in Küche.
Habs in eine Funktion verlagert, jetzt gehts immer.

Das Kombinieren (von z.B.: Lautstärke und Abspielen) wäre schon toll...

pOpY
dizzy85 hat geschrieben:
Mo 19. Feb 2018, 20:01
Das mit der "Lautstärke-Regelung" ging bzw geht mit dem Script von Thorsten Gehring am Anfang des Threads. Ich konte verschiedene Befehle "Kombinieren" z.b Tuneinsender+Lautstärke etc....
Danke für die Info.
Aber das Script von Alex schaut schon ein bisschen "Erwachsener" aus O:-)

pOpY
0 x
Benutzeravatar

Semenchkare
Beiträge: 63
Registriert: Fr 10. Mär 2017, 22:24
Vorhandene Echos: 3
Vorhandene Echo Dots: 4

Di 20. Feb 2018, 07:41

Hallo,

ich nutzte adn77's (Loetzimmer) script schon seit Wochen. Gestern wollte ich das neue Script v. 08d in Betrieb nehmen...
Leider funktioniert es nicht mehr!
beim Aufruf von
"sudo ./alexa_remote_control_plain.sh -d Gruppe -r s10xxxx"

kommt immer:
cookie expired, logging in again ...
log in failed, aborting
(mehrfach hintereinander).

Dann habe ich wieder zu 08c gewechselt - leider gleiches Ergebnis.

ALEXA='layla.amazon.de' (hatte auch schon alexa.amazon.de drin)

gehe ich via browser über "h**ps://alexa.amazon.de", kann ich mich normal einloggen.
Es scheint, als ob das script (auch die 08d) nicht mehr funktioniert?
Jetzt auch Captcha-Problem bei mir?? Heul!
Zuletzt geändert von Semenchkare am Di 20. Feb 2018, 08:02, insgesamt 3-mal geändert.
0 x
Benutzeravatar

adn77
Beiträge: 63
Registriert: Di 10. Okt 2017, 19:44

Di 20. Feb 2018, 08:31

@Semenchkare :
versuch mal ein Login ohne Javascript und mit gelöschten Amazon Cookies. Manchmal muss man nur einmalig das Captcha beantworten und kann sich dann wieder ohne Captcha einloggen.
dizzy85 hat geschrieben:
Mo 19. Feb 2018, 20:01
Das mit der "Lautstärke-Regelung" ging bzw geht mit dem Script von Thorsten Gehring am Anfang des Threads. Ich konte verschiedene Befehle "Kombinieren" z.b Tuneinsender+Lautstärke etc....
Wie schon gesagt, theoretisch geht ein ein kombiniertes TuneIn+Lautstärke mit "alexa -e vol:50 ; alexa -r s12345".
Praktisch muss auf dem Gerät in "naher Vergangenheit" etwas abgespielt worden sein, sonst kommt besagter Fehler "No routes found".

Alex
0 x
Benutzeravatar

Semenchkare
Beiträge: 63
Registriert: Fr 10. Mär 2017, 22:24
Vorhandene Echos: 3
Vorhandene Echo Dots: 4

Di 20. Feb 2018, 19:48

Hallo adn77,
ich habe die Cookies beim FF gelöscht und javascript temporär ausgeschaltet. Nach erfolgter Anmeldung im Browser geht es jetzt tatsächlich wieder!
Vielen Dank!

Gruß
Seme
Zuletzt geändert von Semenchkare am Di 20. Feb 2018, 19:49, insgesamt 1-mal geändert.
0 x
Benutzeravatar

terny
Beiträge: 14
Registriert: Do 27. Apr 2017, 12:45

Di 20. Feb 2018, 22:33

Ich habe seit gestern leider auch das Problem:

/usr/local/addons/user$ ./alexa_remote_control.sh -a
cookie expired, logging in again ...
log in failed, aborting

Ich nutze das Skript "Version ohne "jq"" auf der Homematic CCU und hatte seit Monaten keine Probleme.
Habe Java deaktiviert, Cookies gelöscht und mit Firefox, Chrome und Edge diverse Anmeldungen auf alexa.amazon.de ohne Problem durchgeführt.
Leider bekomme ich nie ein Captcha und im Browser funktioniert alles ohne Einschränkungen.
Mit dem Skript klappt es jedoch nicht. Was mache ich falsch?

Hat jemand einen Tipp?
0 x
Benutzeravatar

adn77
Beiträge: 63
Registriert: Di 10. Okt 2017, 19:44

Mi 21. Feb 2018, 08:46

Unbedingt die letzte Version verwenden - ab 0.8.d kann der User-Agent eingestellt werden. Den scheint Amazon neuerdings auf einen aktuellen Browser zu überprüfen.

Alex
0 x
Benutzeravatar

popy
Beiträge: 33
Registriert: Sa 4. Mär 2017, 10:07

Sa 10. Mär 2018, 15:27

Habe auch das Login Problem.
Mit Firefox und deaktiviertem JavaScript kommt die "normale" Logion Page (nur mit etwas komischer Schrift).
Wenn ich mich anmelde, kommt eine leere weiße Seite, aber nie ein Captcha...

Im Chrome oder FF mit aktiviertem JavaScript klappt alles einwandfrei.

Was mache ich falsch?
0 x
Benutzeravatar

adn77
Beiträge: 63
Registriert: Di 10. Okt 2017, 19:44

Sa 10. Mär 2018, 18:23

Bei GitHub hat ein User die Beobachtung geteilt, dass cURL die Amazon Login Seite per HTTP/2 abzuholen versucht.
Dabei scheint es Probleme zu geben. Das Problem taucht erst jetzt auf, da cURL erst ab Version 7.47.0 HTTP/2 standardmäßig bei HTTPS Verbindungen benutzt, bzw. wer schon auf dieser Version war, scheint Amazon nun auf einigen Servern HTTP/2 eingeschaltet zu haben.

Abhilfe schafft die Version 0.9a oder eine erweiterte OPTS Zeile

Code: Alles auswählen

OPTS='--compressed --http1.1'
1 x
Benutzeravatar

popy
Beiträge: 33
Registriert: Sa 4. Mär 2017, 10:07

Sa 10. Mär 2018, 19:50

adn77 hat geschrieben:
Sa 10. Mär 2018, 18:23
Bei GitHub hat ein User die Beobachtung geteilt, dass cURL die Amazon Login Seite per HTTP/2 abzuholen versucht.
Dabei scheint es Probleme zu geben. Das Problem taucht erst jetzt auf, da cURL erst ab Version 7.47.0 HTTP/2 standardmäßig bei HTTPS Verbindungen benutzt, bzw. wer schon auf dieser Version war, scheint Amazon nun auf einigen Servern HTTP/2 eingeschaltet zu haben.

Abhilfe schafft die Version 0.9a oder eine erweiterte OPTS Zeile

Code: Alles auswählen

OPTS='--compressed --http1.1'
Danke für die Schnelle Hilfe.
Neues Script (mit HTTP/1.1) und es funktioniert wieder.

pOpY
0 x
Antworten

Zurück zu „Alexa Allgemein“

  • Information