Amazon Echo Modul (nicht Alexa) - 37_amazonecho (deprecated)

Begonnen von Markus M., 03 Oktober 2017, 14:17:31

Vorheriges Thema - Nächstes Thema

kawa0815

Zitat von: Markus M. am 03 Oktober 2017, 22:18:05


Wird den meisten allerdings nichts nützen, da zumindest ich mit einem normalen Prime Account keine Musik hochladen kann.

So, habe das Modul mal installiert. Funktioniert soweit! Danke!


Das mit dem Hochladen von Musiktracks funktioniert mit einem Prime-Account. Du musst einfach AmazonMusic installieren, dich mit deinem Prime-Account anmelden und kannst dann die Songs hochladen.

Noch eine Frage zu der Gültigkeit der Cookies, du schreibst das die ewig gültig sind, ist das inzwischen so?
Ich hatte bisher nach einigen Tagen immer keinen Zugriff mehr. Erst als ich den Cookie updatet habe ging es wieder.


Byte09

#31
hi zusammen,

ich bräucht wohl mal hilfe bei dem modul.

über die im ersten beitrag verlinkte seite bin ich schon vor einigen monaten gestolpert, habe es aber auch da nicht hinbekommen.

ich denke ich bekomme den cookie nicht richtig kopiert, sieht bei mir auch irgendwie anders aus . Wenn ich der Anleitung folge müsste das ein ewig langer string sein.

wenn ich es als curl speichere ist der string zwar auch ewig lang , aber der "csrf" taucht bei mir schon in der zweiten zeile auf. kann ja so nicht richtig sein , zumindest ist es anders.

"Cookie: x-amzn-dat-gui-client-v=1.24.2698.0; session-id=xxxxxx; session-id-time=xxxx; ubid-acbde=xxxxx; csrf=xxxxx;  ...............................................

insofern denke ich , das der ganze cookie , so wie ich ihn in das attr kopiere nicht stimmt.

modul wirft auf jedenfall nur fehler aus :

2017.10.04 18:16:16 3: Getting devices URL https://layla.amazon.de/api/devices-v2/device?cached=true&_=xxxx
2017.10.04 18:16:44 3: Setting URL https://layla.amazon.de/api/np/command?deviceSerialNumber=&deviceType=xxxx
{"contentFocusClientId":null,"type":"VolumeLevelCommand","volumeLevel":13}
2017.10.04 18:16:44 5: echo: $VAR1 = '<InternalFailure/>
';

2017.10.04 18:16:47 3: Getting player URL https://layla.amazon.de/api/np/player?deviceSerialNumber=&deviceType=xxxxxscreenWidth=1392&_=xxxxx
2017.10.04 18:16:47 5: echo: $VAR1 = '<InternalFailure/>
';

2017.10.04 18:16:47 1: echo: json evaluation error
$VAR1 = '<InternalFailure/>
';


wie kann ich denn da jetzt vorgehen , die gesamte curl hier posten ist vermutlich eher eine nicht so gute idee ?!

danke und gruss Byte09


pumabaer

#32
Zitat von: Byte09 am 04 Oktober 2017, 18:27:22
ich denke ich bekomme den cookie nicht richtig kopiert, sieht bei mir auch irgendwie anders aus . Wenn ich der Anleitung folge müsste das ein ewig langer string sein.

Hallo,

ich hatte anfangs auch einen viel zu kurzen.
mit n bisschen suchen wurde er mir dann komplett angezeigt.

also nicht auf "Preview" sondern "Headers" und dann unter "Cookie"
die nummer hinter csrf muss man sich dann nochmal einzelnd raussuchen und hinten dran hängen.

und ich bin gespannt ob wir bald mit dem Modul nachrichten an den Echo senden können:)

Gruß Aurel
FHEM auf IntlNUC, 2xCUL868, MAX! Heizkörperthermostate/Wandthermostate, Homematic, LD382A (LED Contoller WIFI), Echo Dot, Homebridge/Homekit, Denon AVR-X1300W, Xiaomi Mi Robot Vacuum, Xiaomi Flower Sensor, Xiaomi2MQTT, Xiaomi Melder usw

Byte09

Zitat von: pumabaer am 04 Oktober 2017, 18:38:52
Hallo,

ich hatte anfangs auch einen viel zu kurzen.
mit n bisschen suchen wurde er mir dann komplett angezeigt.

also nicht auf "Preview" sondern "Headers" und dann unter "Cookie"
die nummer hinter csrf muss man sich dann nochmal einzelnd raussuchen und hinten dran hängen.

und ich bin gespannt ob wir bald mit dem Modul nachrichten an den Echo senden können:)

Gruß Aurel


dank dir, habe es jetzt hinbekommen. problem war ich habe es immer mit den entwicklertools vom firefox versucht, da wird es irgendwie anders dargestellt ... keine ahnung warum .

gruss byte09

Byte09

zu früh gefreut:

das einzge was jetzt geht ist "get echo devices" . ... fenster mit geräten wird gezeigt.

alles andere verursacht "json fehle"r -> dann     "connection error"

reaktion alexa - > null

keine ahnung wo ich hier ansetzten soll ....

das problem ist wohl dieses:
2017.10.04 18:58:30 2: echo: connection error dnd read from https://layla.amazon.de:443 timed out
2017.10.04 18:58:30 5: echo: $VAR1 = '{"message":"user not authorized"}';


gruss byte


kawa0815




"Cookie: x-amzn-dat-gui-client-v=1.24.2698.0; session-id=xxxxxx; session-id-time=xxxx; ubid-acbde=xxxxx; csrf=xxxxx;  ...............................................

Der Eintrag in das Modul fängt mit: x-amzn-dat-gui-client-v=1.24.2698.0 an und nicht mit Cookie.
Wo der " csrf=xxxxxxxx" Schlüssel steht ist nicht so wichtig, bei mir steht er nach dem ersten Semikolon.
Du musst allerdings aufpassen mit dem Ende des Cookies, bei mir endet der auf "  sess-at-acbde="V4YHH35566BB/kvKEavfo5i5VFR34466878975Vc="  " , also hinten noch ein ".



igami

Zitat von: Markus M. am 03 Oktober 2017, 23:06:03
Kann jemand ein RegEx basteln für:
Alles zwischen dem letzten Vorkommen von "csrf=" und entweder dem darauffolgenden Leerzeichen oder dem String-Ende?
Meine Kenntnisse reichen dafür leider nicht ganz aus.

csrf=(\S+)(\s|$)
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

Byte09

Zitat von: kawa0815 am 04 Oktober 2017, 19:02:40


"Cookie: x-amzn-dat-gui-client-v=1.24.2698.0; session-id=xxxxxx; session-id-time=xxxx; ubid-acbde=xxxxx; csrf=xxxxx;  ...............................................

Der Eintrag in das Modul fängt mit: x-amzn-dat-gui-client-v=1.24.2698.0 an und nicht mit Cookie.
Wo der " csrf=xxxxxxxx" Schlüssel steht ist nicht so wichtig, bei mir steht er nach dem ersten Semikolon.
Du musst allerdings aufpassen mit dem Ende des Cookies, bei mir endet der auf "  sess-at-acbde="V4YHH35566BB/kvKEavfo5i5VFR34466878975Vc="  " , also hinten noch ein ".

danke, cookie sieht im grunde jetzt so aus wie bei dir ( start ohne cookie , ende auch wie bei dir )
ändert leider nichts am resultat :
017.10.04 19:11:33 3: Setting URL https://layla.amazon.de/api/np/command?deviceSerialNumber=A1ASxxx&deviceType=ABxxx
{"contentFocusClientId":null,"type":"VolumeLevelCommand","volumeLevel":100}
2017.10.04 19:11:36 5: echo: $VAR1 = '{"message":"user not authorized"}';]


das modul  ist natürlich sehr schwierig zu supporten , da die daten im grunde hier nie komplett mal geposted werden können .

bin glaube ich schon kurz vor der kapitulation, da ich mir mit dem script schon die zähne ausgebissen habe und es nie zu laufen bekommen habe.

gruss byte09

kawa0815

#38
Zitat von: Byte09 am 04 Oktober 2017, 19:15:51
danke, cookie sieht im grunde jetzt so aus wie bei dir ( start ohne cookie , ende auch wie bei dir )
ändert leider nichts am resultat :
017.10.04 19:11:33 3: Setting URL https://layla.amazon.de/api/np/command?deviceSerialNumber=A1ASxxx&deviceType=ABxxx
{"contentFocusClientId":null,"type":"VolumeLevelCommand","volumeLevel":100}
2017.10.04 19:11:36 5: echo: $VAR1 = '{"message":"user not authorized"}';]


das modul  ist natürlich sehr schwierig zu supporten , da die daten im grunde hier nie komplett mal geposted werden können .

bin glaube ich schon kurz vor der kapitulation, da ich mir mit dem script schon die zähne ausgebissen habe und es nie zu laufen bekommen habe.

gruss byte09

Hast du DND aktiv? In alexa APP - Einstellungen - DND.

edit: Habe es gerade mal probiert, das ist egal!

harry66

bei mir sieht es ähnlich aus, allerdings bekomme ich zumindest die Aktuellen readings angezeigt. Nur steuern kann ich nicht  :(
2017.10.04 19:17:49 3: Setting URL https://layla.amazon.de/api/np/command?deviceSerialNumber=90F007186424033W&deviceType=AB72C64C86AW2
{"type":"NextCommand","contentFocusClientId":null}
2017.10.04 19:17:55 5: wz.echo: $VAR1 = '';

2017.10.04 19:17:58 3: Getting player URL https://layla.amazon.de/api/np/player?deviceSerialNumber=90F007186424033W&deviceType=AB72C64C86AW2&screenWidth=1392&_=1507137478
2017.10.04 19:17:59 5: wz.echo: $VAR1 = '{"playerInfo":{"hint":null,"infoText":{"multiLineMode":false,"subText1":"The Black Eyed Peas","subText2":"The E.N.D. (The Energy Never Dies)","title":"I Gotta Feeling (Album Version)"},"isPlayingInLemur":false,"lemurVolume":null,"lyrics":null,"mainArt":{"altText":"Albumcover","artType":"UrlArtSource","contentType":"image/jpeg","url":"https://ecx.images-amazon.com/images/I/51fe6g84VJL._SS500_.jpg"},"mediaId":"a25b80a2-a28f-49b7-b085-45538e387e3c:25","miniArt":{"altText":"Albumcover","artType":"UrlArtSource","contentType":"image/jpeg","url":"https://ecx.images-amazon.com/images/I/51fe6g84VJL._SS48_.jpg"},"miniInfoText":{"multiLineMode":false,"subText1":"The Black Eyed Peas","subText2":"Amazon Music","title":"I Gotta Feeling (Album Version)"},"playbackSource":null,"playingInLemurId":null,"progress":{"allowScrubbing":false,"locationInfo":null,"mediaLength":289,"mediaProgress":107,"showTiming":true,"visible":true},"provider":{"artOverlay":null,"fallbackMainArt":{"altText":null,"artType":"IconArtSource","iconId":"music-no-art","iconStyles":null},"providerDisplayName":null,"providerLogo":{"altText":"Amazon Music","artType":"IconArtSource","iconId":"amazon-music","iconStyles":null},"providerName":"Amazon Music"},"queueId":"a25b80a2-a28f-49b7-b085-45538e387e3c","state":"PAUSED","template":null,"transport":{"closedCaptions":null,"layoutType":"MusicTransportLayout","lyrics":"HIDDEN","next":"ENABLED","playPause":"ENABLED","previous":"ENABLED","repeat":"ENABLED","shuffle":"ENABLED"},"volume":{"muted":false,"volume":30}}}';

BananaPI, RPI, nanoCUL433, RCS 1000 N Comfort, Dect200, Powerline546E, MAX!Cube, 7xMAX! HT's,3xMAX!FK HMLAN, HM-LC-Bl1PBU-FM, HM-LC-Sw4-Ba-PCB Relay Karte,  LW12, Sqeezelite, TabletUI=Kindel 8" FireHD+Handy,AmazonEcho

Byte09

#40
letztendlich denke ich - bitte nicht falsch verstehen , - ist bestimmt ein nettes "want to have" - und auch ein nettes modul , in dem viel arbeit steckt, und man ist als fhemuser auch gewohnt viel zeit zu investieren und viel zu "basteln" , aber solange amazon hier keinen vernünftigen zugang gewährt und dieser nur über "hinterhofmethoden" zugänglich ist ,ist das viel zu zeitintensiv und steht auf wackeligen füssen. keiner weiss wirklich , wielange diese session wirklich gültig ist , support ist , wie oben schon geschrieben , nahezu unmöglich et. pp.

ich will die leistung keinesfalls schmälern, aber für mich (leider) zu viel friggelei ....

Ich habe amazon dazu vor ein paar wochen mal angeschrieben , das echo im grunde bei mir nie über ein nettes spielzeug hinauskommt, solange kein triggern ausser akustisch möglich ist - antwort war eine baukastenmail - thema verfehlt -, auf nochmaliges nachhaken keine reaktion mehr. Solange das so ist habe ich immer ein sehr wachsames auge auf die mitbewerber ;-)

gruss byte09


Byte09

Zitat von: kawa0815 am 04 Oktober 2017, 19:18:23
Hast du DND aktiv? In alexa APP - Einstellungen - DND.

edit: Habe es gerade mal probiert, das ist egal!

stehe jetzt gerade voll auf der leitung  ...... was bitte  ist DND ?

gruss byte09

Esjay

Zitat von: Byte09 am 04 Oktober 2017, 19:51:25
stehe jetzt gerade voll auf der leitung  ...... was bitte  ist DND ?

gruss byte09

do not disturb

Grüße

kawa0815

#43
Zitat von: Byte09 am 04 Oktober 2017, 19:51:25
stehe jetzt gerade voll auf der leitung  ...... was bitte  ist DND ?

gruss byte09

Das ist die "Bitte nicht stören" Option in den Einstellungen. Ich dachte wenn die aktiv ist, nimmt der Echo keine Mitteilungen mehr an, aber ich habe es probiert und das müsste trotzdem gehen.

Hier ist noch einmal mein Cookie so wie ich ihn in fhem geschrieben habe.
Der ist nur etwas "modifiziert" aber nur ein paar Daten.

x-amzn-dat-gui-client-v=1.24.2698.0; csrf=XXXXXXXX6; x-wl-uid=1X6C1JxZruoufgapd0ooMflrszWQvSzKiMd/OZVjNx5I3xeIICU04XJsmM3YaUFgtaMu+aEvKDVx8wDfYBFlSsg==; s_vnum=9999999999928%26vn%3D1; s_nr=1504226304127-New; s_dslv=1504226304129; sid="su8elG5JkJL21arQ9pAJ6Q==|m+KWBPW26dbFiuDRh4PGGsAGaE71Xd2ldsC4yIU52/Q="; session-id=254-4558813-5141805; session-id-time=2082787201l; lc-acbde=de_DE; ubid-acbde=251-1774461-7839714; session-token="sPNnNxaHOlcACNFgdlmKMcDANdYz3ZOgtv2KrC17thPG3+9ixYg9w0dCLYg8rpOVaIzIbqaS6G623yT+j1dQV1SS8vGtikWra3JbZakw4/JE8Ilg05Y+W8qv/G4CPBnl4xjElX/LSC9EkMH90UmeYFGlhkLDGoI0OK4lBUBgOKARm3pyYsyj8LMt58kqFuBktCTDgymCF9+rLwm4PBg7iGFBJsVnOp+7hPPiPm+/DteUqrNUw="; x-acbde="n2HYpyH3bD@OIuGH@eTxtMBI9YstxEc@"; at-acbde=Atza|IwEBIMcNRnX_8XLHbvoChNy7ZYrxAkwqPfXwwWhxBuub_nRy0EyhKkjZZ-WmTo9Rs9Yjzv2qmEYjVspIzowVwPLKAaung8XRbY6zJKEppTI03_QKUrG0Pg0jaGp0ROFcsW39A3B5wRERx21EWyX2tzNo4sWadAYr6r2AFllTc-51mmVKd9EGpXvt-417WJCAa5_IxaVkDcB0apV-b_IkHVthNduxcACNFgdlmKMcDANdYz3ZOgtv2KrC17thPGFWQ2Bcu6CZZjqNghSbM3uVU6Hk-kbHOzr0cACNFgdlmKMcDANdYz3ZOgtv2KrC17thPGcACNFgdlmKMcDANdYz3ZOgtv2KrC17thPG6IOWEwtvklo6HC5ntERezYjw6bR0TUlUpbMasYoV3QT6x0WXDPJZv86ZUjM2I_xC679G3aHOKWxfwdM7C-rAClEsaFo4TmOHcbZv2LTQ8Rd7_JKxVNfZiT5WcDHYtU7wjgztEDfHWm4NhsEGoPBq7YDyCndtIDtT7-kd7w; sess-at-acbde="V4YHvvBB/kvKEavfo5i5VFR3I560zA5KNrpqviceKVc="


Wenn Du mit Chrome den Cookie kopierst musst du nur den Teil in das Feld vom Cookie so eintragen.
Am besten du löschst den Echo noch einmal komplett raus und legst in neu an.

Also:

define echo amazonecho



Dann mit der APP einloggen,  die Cookiedaten kopieren und den in "Cookie eintragen.

Pass auf, dass du keine Zeilenumbrüche in den Cookie einbaust. Der Microsofteditor ist so ein Kandidat.

Wichtig ist, dass der Anfang und das Ende so aussehen wie bei mir.




Byte09

dank dir für deine mühe aber keine chance .
egebniss immer das gleiche

2017.10.04 20:27:15 3: Setting URL https://layla.amazon.de/api/np/command?deviceSerialNumber=xxx&deviceType=xxxxx
{"contentFocusClientId":null,"type":"VolumeLevelCommand","volumeLevel":59}
2017.10.04 20:27:18 5: echo: $VAR1 = '{"message":"user not authorized"}';


bin dann auch raus hier, da habe ich keine geduld für  ;)  .... thx

gruss Byte09