Amazon Echo Remote Control

Vielen Dank trotzdem für die Mühen!

Im Prinzip reicht es im Browser
Code:
https://layla.amazon.de/api/media/state?deviceSerialNumber=12345&deviceType=abcde

Also wenn du alle cookies zuvor im Browser löscht, kommt die Antwort nicht sofort.
Dann kommt erstmal ein Anmeldung bei Amazon.
Erst nach Eingabe deine Zugangsdaten kommt dann die Antwort.
Vermutlich müssen die Anmeldedaten auch übergeben werden.

Ja die Cookies spielen wohl eine zentrale Rolle. Ich habe nur selbst mit Cookie noch nicht rausgefunden wie man die Sachen über CURL abrufen kann das scheint einfach nicht zu gehen.

Was mit gerade durch den Kopf geht,

mann kann ja „Musik“ nach Amazon hochladen und dann über Alexa abspielen lassen.

Dann wäre es doch eine coole Idee, wenn das Modul derart erweitert werden würde,

dass man genau diese eine Lied abspielen läßt.

So läßt sich dann ja auch eine Sprachausgabe für Alexa realisieren,
die von IPS aus angesteuert werden kann.

Das geht schon und ist auch im Modul


EchoRemote_ImportedMusic(integer $InstanceID, string $trackid)

Allerdings habe ich das selber noch nicht genutzt insofern müsstet Du mal Rückmeldung geben ob das funktioniert. Die trackid muss entsprechend auch einmalig auslesen werden damit man dies nutzen kann.

Moin in die Runde,

das ist ja toll, das würde ich auch gerne haben … einfach die Weckzeiten ansagen und über IPS den Rest ausführen lassen. Nach Möglichkeit natürlich auch genau andersrum, Timer / Wcker / Zeit was auch immer in IPS erstellen und nach Alexa als Wecker speichern … :slight_smile:

Na mal schauen was sich da entwickelt …

dzvo

Hab’s dann mal ausprobiert, funktioniert auf Anhieb.
Song bzw. Sprachdatei raufladen nach Amazon, Skript erstellen,
welches diese dann an Alexa sendet und schon hat man eine Sprachausgabe.

Fronzo, made my day :wink:

Wecker genau wie beschrieben wäre ein Traum!

Apropos Cookies. Ich musste gestern alle TuneIn-Cookies neu ermitteln und in die Instanzen eintragen da die Echos nicht mehr auf die Remote-Befehle reagiert haben. Nachdem ich alle aktualisiert hatte war der Spuk vorbei.

Das mit den Cookies ist halt leider auch nur ein Workaround. Ich versteh nicht ganz warum Amazon die API nicht einfach so freigibt das man sich auch als User mit seinem eigenen Amazon User Namen und Passwort seine Geräte schalten kann. Ich hoffe nicht das die Cookies ständig ablaufen.

Hi,

also bei Tunein habe ich das noch nicht gehabt, aber die selbsthochegeladenen Songs bei Amazon bzw. der Cookie von da, ändert sich wohl… oder ich hab den falschen :slight_smile:

LG Izack

Hallo,
habe Echo Remote Control erfolgreich mit zwei Echos in meinem Haus eingerichtet. Nun kann ich meine Bewegungsmelder gesteuerten Radios ausmustern und die Echo’s spielen nun die Radiomusik im Badezimmer und WC beim betreten des Raumes.
Vielen Dank!
Klaus

So, nach den Pfingstferien wieder das Cookie-Problem. Die Kids waren in den Ferien nicht anwesend, damit kam es auch bei deren Dots zu keinen TuneIn-Wiedergaben und daher sind die Cookies wohl „herausgealtert“. :frowning:

Also müsste man so etwas wie einen täglichen Refresh vornehmen um die Leasedauer der Cookies immer wieder aufzufrischen.

Irgendjemand eine Idee wie man dem am besten Herr wird? Ich komme zwar an den Cookie beim anmelden in die Alexa App aber das ist wiederum ein anderer als der TuneIn Cookie. Und wie man diesen am elegantesten Ausliest habe ich ehrlich gesagt noch nicht rausgefunden. Meinst Du denn der Cookie bleibt bestehen wenn man sich regelmäßig in der Alexa App anmeldet oder läuft der automatisch nach einer Zeit aus? Dann würde es ja theoretisch reichen in einem regelmäßigen Abstand das Modul sich mit den Zugangsdaten anmelden zu lassen damit der Cookie nicht abläuft. Ob das aber funktionieren würde habe ich keine Ahnung.

Gute Frage. Bezeichnend ist aber der terminliche Zusammenhang zwischen den verfallenen Cookies und den Pfingsferien. Und ich meine der erste „Ausfall“ kam nach den Osterferien.

Hi,

schönes Modul. Die Radiosender funktionieren auf Anhieb. lassen sich auch die gekauften Musiktitel abspielen? Ich habe es nicht zu Laufen gebracht. Evtl. sind aber auch die ermittelten IDs falsch?

Mit importierten Musiktiteln kann ich es leider nicht testen, da sich per Linux keine Titel hochladen lassen.

Schöne Grüße, Christoph

Ja das sollte gehen, ich habe das gerade noch mal bei mir getestet mit der Rubrik Gekauft wie auch der Rubrik Importiert.

Überprüfen musst Du ob der Amazon Music CSRF und der Amazon Music Cookie richtig eingetragen ist und exakt übereinstimmen. Desweiteren wird die trackId für die Übergabe an die Funktion benötigt. Die trackId ist ebenfalls ein String.

Aufgerufen wird es dann über die Funktion


EchoRemote_ImportedMusic(integer $InstanceID, string $trackid);

$InstanceID ist die ObjektID der Echo Remote Instanz
$trackid die ID des Tracks

also so was wie


$InstanceID = 12345; // ObjektID der Echo Remote Instanz
$trackid = "e608f0e8-f396-4821-b9cd-750548c7a2c5";
EchoRemote_ImportedMusic($InstanceID, $trackid);

Normalerweise wird dann aber die ganze Playlist abgespielt wenn der Track abgelaufen ist, so zumindest bei mir.

Du kannst im Übrigen auch die Funktion


$state = EchoRemote_GetStateOwnMusic($InstanceID);

nutzten um die TrackID auszulesen. Die ist zwar schon im PHP Modul enthalten wird zur Zeit aber nicht richtig ausgewertet. Diese gibt Dir die gesamte Playlist zurück inclusive Album Cover und TrackID und kann unter anderem genutzt werden um sich einen Playlist zu bauen. Ein HTMLBox gibt es dazu noch nicht im Modul kommt noch wenn ich mal Zeit finde.

Ist zur Zeit ein Standard Objekt was die Funktion zurückgibt


$InstanceID = 30311 /*[Geräte\Amazon Echo Alexa\Amazon Steuerung\Echo]*/;
$state = EchoRemote_GetStateOwnMusic($InstanceID);
var_dump($state);

Ist vielleicht etwas einfacher als die TrackID extra über Chrome auszulesen. Wer von von Euch in der Zwischenzeit was brauchbares für eine HTMLBox aus dem Array bastelt kann das ja gerne posten hilft allen die das nutzten.

Gibt es schon etwas neues bezüglich der Cookies?

LG Izack

Ne, bin aber für Vorschläge offen wie man das lösen könnte. Hat einer mal festgestellt nach welcher Zeit der Cookie ungefähr ausläuft?