NEWS
Blockly Spotify Playlist abspielen
-
@cinimod das ist genau mein Problem. Ich weiß nicht, wie ich es umsetzen soll, dass Spotify auf ein bestimmtes Gerät läuft. Bei Radio ist es kein Problem, das bekomme ich hin aber mit Spotify bin ich verzweifelt.
Die Verzögerungen bitte ignorieren. -
@masterg-23
Es gibt doch beim Spotify Adapter die Datenpunkte für die "Devices". Ich habe zwar keine Alexa um das zu testen, aber bei mir reicht es, wenn ich den Denon Receiver ansprechen will, vor dem Auwählen der Playlist einmal den Datenpunkt "useforplayback" auf true zu setzen. Dann geht der Receiver an. Haben die Alexas keinen eintrag unter Devices? -
@badsnoopy667 Doch das habe ich auch aber wenn ich den Wert auf True setze, dann spielt Alexa zwar Spotify ab, aber nur das was zuletzt abgespielt wurde. Wie kann ich vorher definieren, dass er eine bestimmte Playlist abspielen soll?
-
@masterg-23 Du kannst doch über den Datenpunkt
spotify-premium.0.player.device.name
mit dem Namen festlegen welche Alexa spielen soll.
Edit: setzt natürlich den spotify premium adapter vorraus
-
@fredf Den Adapter habe ich natürlich. Wie setze ich das im Blockly genau um? Kannst du mir da auf die Sprünge helfen?
Muss ich Steuere device name mit Wert z.b.: "Badezimmer" schreiben? Dann einen weiteren "Steuere" dann die Playlist die ich haben will den Datenpunkt "playThisList" auf True setzen? -
@masterg-23
Sorry, der Datenpunktspotify-premium.0.player.device.name
dient nur zur Anzeige und kann nicht gesteuert werden, bzw. springt wieder zurück...Mit dem Datenpunkt
spotify-premium.0.devices.xxx.useForPlayback
geht es aber. Diesen über den steuere Block auf wahr setzen.
Beim Blockly kann ich dir jetzt nicht weiterhelfen... -
@masterg-23
Du musst erst die richtige Alexa auswählen und dann die Playlist die gespielt werden soll. Kann durchaus sein, dass das nicht ganz ohne "glitch" geht, also das vorher noch was falsches gespielt wird. da musst du mal ein bisschen probieren. aber bei mir geht es (meistens)
Eventuell stellt man die Alexa mal für 5-10 sekunden stumm und wartet bis sich spotify sortiert hat...Mein Blockly sieht dafür so aus:
Das "enable shuffle" und "next track" habe ich eingefügt, weil er sonst manchmal nach dem ersten Lied einfach nicht weiterspielt.
-
@badsnoopy667 Vielen lieben Dank. Ich werde es nachher mal ausprobieren!
-
@badsnoopy667 Also das Abspielen der Playlist funktioniert schon mal, was aber Probleme macht:
Jedes mal wird das gleiche Lied abgespielt. Das heißt, jedes Mal wenn ich ins Bad komme, wird das gleiche Lied von Anfang abgespielt (die Playlist hat über 100 Lieder).
-
@masterg-23 Hm... und das "enable shuffle" und "next track" hilft nicht? Dann sollte er doch eigentlich mit demselben Lied beginnen, dann shuffle einschalten und dann sofort ein beliebiges nächstes Lied abspielen, oder? So macht er das zumindest bei mir (glaube ich, teste ich nachher nochmal).
-
@badsnoopy667 Danke für deine Nachricht. Leider funktioniert es nicht, wie es sollte. In dem Screenshot ist es denk ich ersichtlich, dass zunächst der gewünschte Alexa Lautsprecher gewählt wird, dann der Playlist, dann shuffle wird enablet und dann next track. Vorher wird geschaut, ob bereits ein Lied läuft.
Kannst du irgend einen Fehler erkennen?
-
@masterg-23 Also bei mir geht das so, aber ich nutze auch keine Alexa. Ich würde an Deiner Stelle nochmal versuchen einen weiteren "next track" block einzufügen, vielleicht mit einer längeren Pause. Vielleicht bekommt die Alexa den Befehl gar nicht mit, die 400ms sind ja sehr kurz.
PS: Was mir gerade noch aufgefallen ist, du prüfst zweimal den State "currentState" ab. Einmal auf wahr und dann auf falsch. Ist das derselbe State? Wenn ja, dann wird doch der ganze Block mit dem Umschalten nie ausgeführt, oder?
-
@badsnoopy667 danke für den Hinwies. Hab mich schon gewundert, warum es nicht mehr getriggert wird. Keine Ahnung warum ich ihn doppelt drin hatte.
Nichtdestotrotz funktioniert der Playlist nicht wie es soll. Es startet zunächst "Lied 1", dann wird sofort ein Lied übersprungen, dann noch eins (innerhalb nicht mal eine Sek.) dann wird das gleiche Lied (ich nenne es jetzt "Lied 3") abgespielt.Wenn ich das nächste mal ins Bad gehe, passiert wieder das gleiche. Zwei lieder werden übersprungen und dann wird "Lied 3" abgespielt.
-
@masterg-23 Wird denn mit dem "enableShuffle" Shuffle WIRLICH aktiviert? Kann man ja in der Spotify App sehen, ob Shuffle dann eingeschaltet ist. Klingt für mich so, als würde er einfach weiter linear abspielen.
Bei mir wird wenn ich den Datenpunkt "shuffleOn" auf true setze sofort in der Spotify App das Shuffle Symbol grün. -
@badsnoopy667 Danke für deine schnelle Nachricht. Anbei ein Screenshot vom gewähltem Datenpunkt. Ich denke, dass das schon der richte ist oder? Diesen Datenpunkt hatte ich vorher ja auch schon gewählt
PS: Bei Spotify ist danach der "Shuffle Button" auch aktiviert. -
@masterg-23 Und wenn du vorher nicht die Alexa auswählst, sondern einfach mal auf dem Handy abspielst, oder so? Wäre ja gut rauszubekommen, ob das Problem nur mit der Alexa auftritt, oder generell mit Spotify.
-
@badsnoopy667 du meinst, dass ich bei "useForPlayback" das iPhone als Quelle nehme und nicht die Alexalautsprecher?
-
@masterg-23 Ja, genau. Bei mir geht es ja mit meinem Denon Receiver. Vielleicht ist das Problem ja, das sich die Alexa anstellt. Aber dann weiß man zumindest, in welche Richtung man suchen muss.
-
@badsnoopy667 Das hat schon mal besser funktioniert. Nun habe ich das Skript ein bisschen vereinfacht, (zunächst ohne Unterscheidung, ob Wochenende oder Wochentag) und ein anderer Playlist genommen und siehe da es funktioniert jetzt. Sowohl auf dem Handy als auch auf der Alexa.
Nun weiß ich nicht, wo der Fehler war aber Hauptsache es funktioniert.
Vielen Lieben Dank für deine Geduld
PS: zu früh gefreut, es funktioniert wieder nicht. Selbst der Timeout funktioniert nicht. Bei jeder Bewegung, wird das Lied immer wieder von Anfang an gespielt und das bestehende Problem, dass immer wieder das gleiche Lied abgespielt wird, besteht immer noch. Bin langsam verzweifelt
-
@masterg-23
Ist das untere "stop timeout" nicht falsch? ich glaube das muss raus, sonst läuft der timeout ja nie los, oder?