Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Spotify Skript

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [Vorlage] Spotify Skript

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tempestas last edited by

      Er sagt bei mir allerdings:

      
      https://accounts.spotify.com/de/authorize/?client_id=XXXXXXXXXXXXXXXXXXXXXXX&response_type=code&redirect_uri=https%3A%2F%2Fexample.com%2Fcallback%2F&state=xxxxxxxxxxxxxxxxxxxxxxx&scope=user-modify-playback-state%20user-read-playback-state%20user-read-currently-playing%20playlist-read-private
      
      

      und dann steht da eben INVALID_CLIENT: Invalid redirect URI

      Ich habe auch nichts zulassen müssen bzw können in Spotify. Daher meine frage

      1 Reply Last reply Reply Quote 0
      • L
        Lucky last edited by

        der Ablauf sollte sich so gestalten:

        1.Spotify Premium notwendig

        2. bei Spotify eine Application registrieren

        3. der erhaltenen Client ID und Client Secret im Script an die angegeben Stelle kopieren

        4. State 'Get_Authorization drücken, es wird eine URL generiert

        5. diese URL kopieren und im Browser einfügen, beim ersten mal wird Spotify Fragen ob man den Client zulassen möchte, dies bestätigen ! Nun wird man auf die nicht vorhanden Webseite 'example.com' (manche Browser zeigen möglicherweise einen Fehler)

        Achtung: ist die der Client bereits zugelassen, fragt Spotify nicht erneut ! es wird direkt weitergeleitet !

        6. die Adresse die jetzt in der Adresszeile des Browsers steht kopieren ( https://example.com/callback/?code=xxx&state=xxx ) und in das State 'Authorization_Return_URI' einfügen

        7. Fertig

        wichtig ist auch das exakt die gleiche Redirect URI im Skript wie auch bei der Registrierten Application angegeben ist !

        1 Reply Last reply Reply Quote 0
        • T
          tempestas last edited by

          1. habe ich

          2. gemacht

          3. gemacht, 800x geprüft beides. Kopiert, manuell, via notepad++…

          4. gemacht

          5. gemacht --> spotify fragt mich gar nichts. Wo genau sollte diese Frage kommen? in meinem Spotify client? oder auf der homepage wo ich eingeloggt bin?

          6. gemacht --> authorized geht auf true

          7. irgendwie passiert jetzt aber nichts weiter?

          1 Reply Last reply Reply Quote 0
          • L
            Lucky last edited by

            Wenn authorized auf true geht hat alles geklappt!

            Jetzt solltest du deine Geräte und playlisten einlesen können

            1 Reply Last reply Reply Quote 0
            • T
              tempestas last edited by

              hmm dann hängts woanders… ich klicke und klicke, aber nichts passiert.

              noch etwas zu tun?

              1 Reply Last reply Reply Quote 0
              • L
                Lucky last edited by

                Wird denn dein Benutzer Name im state username angezeigt?

                Wo hast du das Skript gespeichert, direkt unter Javascript. 0. spotify ?

                1 Reply Last reply Reply Quote 0
                • M
                  manne_r last edited by

                  Nimm mal im Script bei der URL ganz am Ende das / weg.

                  Hatte ich weiter oben im Thread irgendwo gelesen. Das hat bei mir geholfen.

                  Gesendet von iPhone mit Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • T
                    tempestas last edited by

                    @Lucky:

                    Wird denn dein Benutzer Name im state username angezeigt?

                    Wo hast du das Skript gespeichert, direkt unter Javascript. 0. spotify ? `

                    User ist leer.

                    Ja, liegt direkt unter javascript.0 Instanz.

                    Bzw. in einem Ordner "Spotify" unter den "Common" Skripten

                    Werde mal manne_r's Tipp ausprobieren

                    Edit: habe im Spotify Dashboard nochmal die example.com/callback Adresse eingegeben und gespeichert (war mir nicht klar, dass man das wohl muss).

                    Nun kam immerhin einmalig diese Frage, ob ich es zulassen will von Spotify. Allerdings ändert sich danach nichts, die generierte Adresse schiebe ich in die auth_redirect_uri und es geht auf true, bleibt aber alles leer ansonsten

                    1 Reply Last reply Reply Quote 0
                    • T
                      tempestas last edited by

                      Melde Vollzug:

                      8x exakt das gleiche tun hat irgendwann funktioniert. Danke, nun werde ich mal reichlich testen. Vielen Dank, geile Sache!

                      Edit: die Devices bleiben leer. Auch nach Klick auf get_devices.

                      Dachte, dort würde ich meine Sonos Boxen sehen? Ich glaube, so ganz verstehe ich es noch nicht :roll: :oops:

                      1 Reply Last reply Reply Quote 0
                      • L
                        Lucky last edited by

                        also steht in User ID jetzt was drin ? gut 😄

                        es könnte sein das es evtl eine Blacklist bei Spotify gibt auf die man kommt wenn zuviel Anmeldungen schief gehen

                        Aktualisiere mal bitte deine States nachdem du die Geräte und Playlist abgerufen hast, States die zur Laufzeit angelegt wurden, werden in Iobroker nicht immer gleich sichtbar

                        dann solltest du auch deine Sonos Boxen sehen wenn diese Spotify Connect unterstützen 😉

                        1 Reply Last reply Reply Quote 0
                        • T
                          tempestas last edited by

                          ähm.. was meinst du mit states aktualisieren?

                          Reload der Page? Die Playlists sind alle eingelesen

                          1 Reply Last reply Reply Quote 0
                          • L
                            Lucky last edited by

                            auf der Objekte Seite oben links das Aktualisieren Symbol

                            die Geräte müssen beim einlesen erreichbar und mit dem Account verbunden sein, also zb. die Android App auf dem Telefon wird erst aufgelistet wenn diese zum Zeitpunkt des einlesen Aktiv war

                            1 Reply Last reply Reply Quote 0
                            • T
                              tempestas last edited by

                              ahhh.. am aktiv sein kann es hängen. Das werde ich dann später zu Hause ausprobieren. danke!

                              Edit: ok, Handy ging sofort. Danke!

                              1 Reply Last reply Reply Quote 0
                              • W
                                Worn last edited by

                                Hi zusammen,

                                frohes neues Jahr! Ich habe nochmal eine Frage. Bin aus dem Urlaub gekommen und das Skript funktioniert nicht mehr. Log zeigt beim Neuladen:

                                Error: ENOENT: no such file or directory, open 'SpotifyAccessToken.txt'

                                Was ist in diesem Fall zu unternehmen? Noch mal neu registrieren?

                                Danke und Grüße

                                Ben

                                1 Reply Last reply Reply Quote 0
                                • L
                                  Lucky last edited by

                                  > no such file or directory, open 'SpotifyAccessToken.txt'
                                  bedeutet das die Datei mit den Token nicht vorhanden/gelöscht ist, diese wird automatisch beim erfolgreichen anmelden angelegt.

                                  klick nochmal Get_Authorization und geh so vor wie bei der ersten Anmeldung

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    tempestas last edited by

                                    Meine Sonos Boxen wollen sich leider nicht finden lassen. Wie muss ich sie aktiv haben, damit sie gefunden werden?

                                    Habe sie sowohl über Sonos (und dann natürlich mit Spotify) angesteuert als auch über Spotify direkt. Lassen sich nicht finden. Nur der PC, auf dem die Spotify App läuft

                                    Dafür läuft mein Log voll mit Warnungen:

                                    ! javascript.0 2018-01-05 19:30:30.969 warn at process._tickCallback (internal/process/next_tick.js:104:9) javascript.0 2018-01-05 19:30:30.969 warn at _combinedTickCallback (internal/process/next_tick.js:80:11) javascript.0 2018-01-05 19:30:30.969 warn at endReadableNT (_stream_readable.js:974:12) javascript.0 2018-01-05 19:30:30.969 warn at IncomingMessage.emit (events.js:185:7) javascript.0 2018-01-05 19:30:30.969 warn at emitNone (events.js:91:20) javascript.0 2018-01-05 19:30:30.969 warn at IncomingMessage.g (events.js:292:16) javascript.0 2018-01-05 19:30:30.969 warn at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12) javascript.0 2018-01-05 19:30:30.969 warn at Request.emit (events.js:188:7) javascript.0 2018-01-05 19:30:30.968 warn at emitOne (events.js:96:13) javascript.0 2018-01-05 19:30:30.968 warn at Request. (/opt/iobroker/node_modules/request/request.js:1163:10) javascript.0 2018-01-05 19:30:30.968 warn at Request.emit (events.js:191:7) javascript.0 2018-01-05 19:30:30.968 warn at emitTwo (events.js:106:13) javascript.0 2018-01-05 19:30:30.968 warn at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22) javascript.0 2018-01-05 19:30:30.968 warn at Request._callback (script.js.common.Spotify.Spotify_Skript:150:24) javascript.0 2018-01-05 19:30:30.968 warn at script.js.common.Spotify.Spotify_Skript:592:31 javascript.0 2018-01-05 19:30:30.968 warn at CreatePlaybackInfo (script.js.common.Spotify.Spotify_Skript:204:6) javascript.0 2018-01-05 19:30:30.968 warn Wrong type of javascript.0.Spotify.PlaybackInfo.Device.id: "object". Please fix, while deprecated and will not work in next versions. javascript.0 2018-01-05 19:30:20.962 warn at process._tickCallback (internal/process/next_tick.js:104:9) javascript.0 2018-01-05 19:30:20.961 warn at _combinedTickCallback (internal/process/next_tick.js:80:11) javascript.0 2018-01-05 19:30:20.961 warn at endReadableNT (_stream_readable.js:974:12) javascript.0 2018-01-05 19:30:20.961 warn at IncomingMessage.emit (events.js:185:7) javascript.0 2018-01-05 19:30:20.961 warn at emitNone (events.js:91:20) javascript.0 2018-01-05 19:30:20.961 warn at IncomingMessage.g (events.js:292:16) javascript.0 2018-01-05 19:30:20.961 warn at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12) javascript.0 2018-01-05 19:30:20.961 warn at Request.emit (events.js:188:7) javascript.0 2018-01-05 19:30:20.961 warn at emitOne (events.js:96:13) javascript.0 2018-01-05 19:30:20.961 warn at Request. (/opt/iobroker/node_modules/request/request.js:1163:10) javascript.0 2018-01-05 19:30:20.961 warn at Request.emit (events.js:191:7) javascript.0 2018-01-05 19:30:20.961 warn at emitTwo (events.js:106:13) javascript.0 2018-01-05 19:30:20.961 warn at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22) javascript.0 2018-01-05 19:30:20.961 warn at Request._callback (script.js.common.Spotify.Spotify_Skript:150:24) javascript.0 2018-01-05 19:30:20.961 warn at script.js.common.Spotify.Spotify_Skript:592:31 javascript.0 2018-01-05 19:30:20.961 warn at CreatePlaybackInfo (script.js.common.Spotify.Spotify_Skript:204:6) javascript.0 2018-01-05 19:30:20.960 warn Wrong type of javascript.0.Spotify.PlaybackInfo.Device.id: "object". Please fix, while deprecated and will not work in next versions. javascript.0 2018-01-05 19:30:15.962 warn at process._tickCallback (internal/process/next_tick.js:104:9) javascript.0 2018-01-05 19:30:15.962 warn at _combinedTickCallback (internal/process/next_tick.js:80:11) javascript.0 2018-01-05 19:30:15.962 warn at endReadableNT (_stream_readable.js:974:12) javascript.0 2018-01-05 19:30:15.962 warn at IncomingMessage.emit (events.js:185:7) javascript.0 2018-01-05 19:30:15.962 warn at emitNone (events.js:91:20) javascript.0 2018-01-05 19:30:15.962 warn at IncomingMessage.g (events.js:292:16) javascript.0 2018-01-05 19:30:15.962 warn at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12) javascript.0 2018-01-05 19:30:15.962 warn at Request.emit (events.js:188:7) javascript.0 2018-01-05 19:30:15.962 warn at emitOne (events.js:96:13) javascript.0 2018-01-05 19:30:15.962 warn at Request. (/opt/iobroker/node_modules/request/request.js:1163:10) javascript.0 2018-01-05 19:30:15.962 warn at Request.emit (events.js:191:7) javascript.0 2018-01-05 19:30:15.962 warn at emitTwo (events.js:106:13) javascript.0 2018-01-05 19:30:15.962 warn at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22) javascript.0 2018-01-05 19:30:15.961 warn at Request._callback (script.js.common.Spotify.Spotify_Skript:150:24) javascript.0 2018-01-05 19:30:15.961 warn at script.js.common.Spotify.Spotify_Skript:592:31 javascript.0 2018-01-05 19:30:15.961 warn at CreatePlaybackInfo (script.js.common.Spotify.Spotify_Skript:204:6) javascript.0 2018-01-05 19:30:15.961 warn Wrong type of javascript.0.Spotify.PlaybackInfo.Device.id: "object". Please fix, while deprecated and will not work in next versions. javascript.0 2018-01-05 19:30:10.972 warn at process._tickCallback (internal/process/next_tick.js:104:9) javascript.0 2018-01-05 19:30:10.972 warn at _combinedTickCallback (internal/process/next_tick.js:80:11) javascript.0 2018-01-05 19:30:10.972 warn at endReadableNT (_stream_readable.js:974:12) javascript.0 2018-01-05 19:30:10.972 warn at IncomingMessage.emit (events.js:185:7) javascript.0 2018-01-05 19:30:10.972 warn at emitNone (events.js:91:20) javascript.0 2018-01-05 19:30:10.972 warn at IncomingMessage.g (events.js:292:16) javascript.0 2018-01-05 19:30:10.972 warn at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12) javascript.0 2018-01-05 19:30:10.972 warn at Request.emit (events.js:188:7) javascript.0 2018-01-05 19:30:10.972 warn at emitOne (events.js:96:13) javascript.0 2018-01-05 19:30:10.972 warn at Request. (/opt/iobroker/node_modules/request/request.js:1163:10) javascript.0 2018-01-05 19:30:10.972 warn at Request.emit (events.js:191:7) javascript.0 2018-01-05 19:30:10.972 warn at emitTwo (events.js:106:13) javascript.0 2018-01-05 19:30:10.972 warn at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22) javascript.0 2018-01-05 19:30:10.972 warn at Request._callback (script.js.common.Spotify.Spotify_Skript:150:24) javascript.0 2018-01-05 19:30:10.971 warn at script.js.common.Spotify.Spotify_Skript:592:31 javascript.0 2018-01-05 19:30:10.971 warn at CreatePlaybackInfo (script.js.common.Spotify.Spotify_Skript:204:6) javascript.0 2018-01-05 19:30:10.971 warn Wrong type of javascript.0.Spotify.PlaybackInfo.Device.id: "object". Please fix, while deprecated and will not work in next versions. !

                                    1 Reply Last reply Reply Quote 0
                                    • wendy2702
                                      wendy2702 last edited by

                                      Hi,

                                      habe das Skript auch zum laufen bekommen… jetzt fehlt mir nur noch ein hinweis wie ich es z.B. schaffe auf Vis eine meiner Playlist auf einem meiner Ausgabe Geräte wiederzugeben.

                                      Kann mir da wer auf die Sprünge helfen?

                                      Danke und Gruß

                                      1 Reply Last reply Reply Quote 0
                                      • L
                                        Lucky last edited by

                                        @tempestas:

                                        Meine Sonos Boxen wollen sich leider nicht finden lassen. Wie muss ich sie aktiv haben, damit sie gefunden werden?

                                        Habe sie sowohl über Sonos (und dann natürlich mit Spotify) angesteuert als auch über Spotify direkt. Lassen sich nicht finden. Nur der PC, auf dem die Spotify App läuft `

                                        ich habe leider keine Sonos Lautsprecher, und kann daher auch nicht sagen in welcher Form die Daten davon zurückgegeben werden

                                        ich 'Normalfall' wird eine Array mit den Geräten geliefert, ich kann mir vorstellen das Sonos als Sub- Devices die Lautsprecher auflistet..das ist natürlich nicht implementiert und ich kann es aufgrund nicht vorhandener Sonos Geräte auch nicht debuggen, das würde am besten über die Web Konsole gehen, oder ich ändere im Skript etwas für dich was die Gerätedaten in den Log schreibt ohne sie anzulegen.

                                        das würde auch deine Logeinträge erklären !

                                        Werden denn andere Gräte gelistet wie z.b. PC App, Handy App, Echo Dot usw ?

                                        Aktiv sein bedeutet das die Spotify Client Anwendung auf dem Ziehlgerät ausgeführt werden muß, bei den Echos ist das ständig der Fall sobald der Account dort eingetragen ist, bei meinem AVR genau so. Beim PC und Handy muss das Spotify Programm laufen

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          Lucky last edited by

                                          @wendy2702:

                                          Hi,

                                          habe das Skript auch zum laufen bekommen… jetzt fehlt mir nur noch ein hinweis wie ich es z.B. schaffe auf Vis eine meiner Playlist auf einem meiner Ausgabe Geräte wiederzugeben.

                                          Kann mir da wer auf die Sprünge helfen?

                                          Danke und Gruß `

                                          zwei Möglichkeiten:

                                          1. Einen Button für jedes Gerät in VIS anlegen der jeweils auf Use_for_Playback des jeweiligen Gerätes zeigt, und einen Button für die jeweilige Playlist

                                          2. Ein kleines Skript machen die Funktionen Use_for_Playback und Play_this_List nacheinander aufruft

                                          Hinweis: wird nur Play_this_List aufgerufen, ist immer das letzte Aktive Gerät dran !

                                          1 Reply Last reply Reply Quote 0
                                          • wendy2702
                                            wendy2702 last edited by

                                            Ok!

                                            Dankeschön.

                                            Werde ich morgen mal probieren.

                                            In der anderen Antwort schreibst du das man unter devices auch die handy App sehen soll, habe ich das richtig verstanden?

                                            Ich sehe da Aktuell nur meinen AV-Receiver und meinen Echo.

                                            Keines der Handys.

                                            Gesendet von iPhone mit Tapatalk Pro

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            605
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript
                                            95
                                            745
                                            179141
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo