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@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Spotify Skript

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

      @Lucky:

      ups :lol:

      Edit:

      ehrlich gesagt überlege ich noch wie ich das am besten anstelle, es würde zwar gehen einen Datenpunkt als Number mit den Playlisten als States anzulegen, um diese zur Laufzeit zu ändern würde man aber die Option 'SetObjekt' aktivieren müssen, das würde es für ungeübte wieder schwieriger machen das Skript zum laufen zu bringen.

      alternativ könnte man einen Datenpunkt als String anlegen der die Namen der Playlisten enthält und dazu einen Nummerischen Index, würde dir das helfen ? `

      was hast du für eine node Version? hat es vielleicht damit etwas zutun warum es bei mir einfach nicht Funktionieren will :?

      1 Reply Last reply Reply Quote 0
      • E
        el-lutschi last edited by

        Hallo zusammen,

        kann mir jemand sagen wie ich einstelle, dass Shuffel immer "an" ist.

        Wenn ich unter "Player" Shuffle auf "true" setze passiert einfach nichts.

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

          @Lucky:

          ups :lol:

          Edit:

          ehrlich gesagt überlege ich noch wie ich das am besten anstelle, es würde zwar gehen einen Datenpunkt als Number mit den Playlisten als States anzulegen, um diese zur Laufzeit zu ändern würde man aber die Option 'SetObjekt' aktivieren müssen, das würde es für ungeübte wieder schwieriger machen das Skript zum laufen zu bringen.

          alternativ könnte man einen Datenpunkt als String anlegen der die Namen der Playlisten enthält und dazu einen Nummerischen Index, würde dir das helfen ? `

          Hi,

          das mit der Playlist hat sich heute für mich erledigt da ich die Auswahl jetzt anders realisiere.

          Danke

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

            Hi,

            das Script läuft jetzt seit 2 Tagen mit einem Gast Account aus dem Familiy Abo…. Dafür ein DICKES DANKESCHÖN

            Kann man sich irgendwie anzeigen lassen welche Playlist gerade läuft?

            Oder kann man eventuell eine solche Funktion in das Script einbauen, also ein Datenpunkt in dem die Aktuelle Playlist steht?

            Danke und Gruß

            Mirko

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

              Heute morgen kleiner Rückschlag…nichts geht mehr beim starten von Spotify über VIS und das steht im log:

              javascript.0	2018-02-04 11:31:31.192	error	script.js.Spotify.Spotify_Controll_v050: Fehler 202 Function Refresh_Token
              javascript.0	2018-02-04 11:31:31.192	error	script.js.Spotify.Spotify_Controll_v050: FEHLER BEIM ERNEUTEN DATEN ANFORDERN !
              javascript.0	2018-02-04 11:31:31.049	info	script.js.Spotify.Spotify_Controll_v050: Token Saved!
              javascript.0	2018-02-04 11:31:31.048	info	script.js.Spotify.Spotify_Controll_v050: neuer Token eingetroffen
              javascript.0	2018-02-04 11:31:30.895	info	script.js.Spotify.Spotify_Controll_v050: Token wird erneut angefordert !
              javascript.0	2018-02-04 11:31:30.893	info	script.js.Spotify.Spotify_Controll_v050: Access Token Abgelaufen!!
              
              1 Reply Last reply Reply Quote 0
              • L
                Lucky last edited by

                neue Versionen gibt es ab sofort nur noch im ersten Post auf Seite 1 !!!
                @wendy2702:

                Oder kann man eventuell eine solche Funktion in das Script einbauen, also ein Datenpunkt in dem die Aktuelle Playlist steht? `

                ist in Version 0.5.1 eingebaut ! teste mal

                @wendy2702:

                Heute morgen kleiner Rückschlag…nichts geht mehr beim starten von Spotify über VIS und das steht im log:

                javascript.0	2018-02-04 11:31:31.192	error	script.js.Spotify.Spotify_Controll_v050: Fehler 202 Function Refresh_Token
                javascript.0	2018-02-04 11:31:31.192	error	script.js.Spotify.Spotify_Controll_v050: FEHLER BEIM ERNEUTEN DATEN ANFORDERN !
                javascript.0	2018-02-04 11:31:31.049	info	script.js.Spotify.Spotify_Controll_v050: Token Saved!
                javascript.0	2018-02-04 11:31:31.048	info	script.js.Spotify.Spotify_Controll_v050: neuer Token eingetroffen
                javascript.0	2018-02-04 11:31:30.895	info	script.js.Spotify.Spotify_Controll_v050: Token wird erneut angefordert !
                javascript.0	2018-02-04 11:31:30.893	info	script.js.Spotify.Spotify_Controll_v050: Access Token Abgelaufen!!
                ```` `  
                

                202 bedeutet das der Server die Anfrage angenommen hat, aber sie zur zeit nicht verarbeiten kann, in diesem Fall die Aktion nochmal ausfühen

                ist aber auch in 0.5.1 verbessert !

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

                  Top!

                  Du bis ja schneller als die Feuerwehr!

                  Danke

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

                    Leider funktioniert mein Spotify Skript nicht mehr und es lässt den ganzen Javascript Adapter abstürzen.

                    Hat jemand eine Idee woran das liegt? Hier der Log Output:

                    error	instance system.adapter.javascript.0 terminated with code 0 (OK)
                    error        Caught by controller[0]: at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:444:12)
                    error	Caught by controller[0]: at tryToString (fs.js:457:3)
                    error	Caught by controller[0]: at script.js.Spotify.Spotify:107:28
                    error	Caught by controller[0]: at Object.parse (native)
                    error	Caught by controller[0]: SyntaxError: Unexpected end of JSON input
                    
                    

                    Ich habe die neuste Version vom Skript vom 4.2.2018. Die Befehl node-gyp hat bei mir version 3.6.2 und nodejs hat version 6.12.3. Der javascript iobroker Adapter ist auf Version 3.6.4.

                    Habt ihr einen Tipp?

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

                      oben jetzt Version 0.5.3 !

                      Stabilität verbessert

                      Tacks jetzt auch als Listenstring

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

                        Habe geupdated. Läuft :). Seltsamerweise hatten sich meine Probleme verflüchtigt. Ich habe seit meinem letzten Post keine Probleme mehr gehabt :). Happy user!

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

                          Ich glaube du hast an einer Stelle ein Zeichen vergessen:

                          Im Listener für javascript.0.Spotify.Authorization.Authorized:

                           else if(err==202||(err==502)||(err=401)){  //202,401 und 502 lassen den Interval  weiter laufen
                                                  DummyBody={is_playing:false};//tritt ein wenn kein Player geöffnet ist
                                                  CreatePlaybackInfo(DummyBody)}
                          
                          

                          Dort fehlt ein = vor der 401. Da es eine Zuweisung mit einer Konstante ist, ist die Bedingung immer erfüllt.

                          EDIT:

                          Und ich denke du hast ein Typo drin. Der neue State in Get_Playlist_Tracks heißt "Track_List_Sting", ich denke da fehlt ein r. 😉

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

                            Danke! Habs geändert! 😄

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

                              Sry, immer noch ein Sting drin 😉 Das war an 2 Stellen.

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

                                @twonky:

                                Sry, immer noch ein Sting drin 😉 Das war an 2 Stellen. `
                                Ach verdammt :roll: jetzt aber! 😄

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

                                  Danke, meinen letzten Fehler hast du mit dem Update beseitigt.

                                  Aber bei mir funktioniert der Button Get_User_Playlists nicht mehr. Er erzeugt keinen Playlist Ordner mehr. Ist das bereits bekannt? Wie kann man jetzt Playlists auswählen?

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

                                    bei mir gehts..hast du mal deine Datenpunkte aktualisiert ?

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

                                      Mhm ok. Mittlerweile wirft das Skript auch einen Fehler. Vielleicht kannst du damit was anfangen:

                                      ! host.raspbian 2018-02-13 00:12:25.343 error instance system.adapter.javascript.0 terminated with code 0 (OK)
                                      ! Caught 2018-02-13 00:12:25.343 error by controller[0]: at IncomingMessage.g (events.js:292:16)
                                      ! Caught 2018-02-13 00:12:25.343 error by controller[0]: at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
                                      ! Caught 2018-02-13 00:12:25.343 error by controller[0]: at Request.emit (events.js:188:7)
                                      ! Caught 2018-02-13 00:12:25.343 error by controller[0]: at emitOne (events.js:96:13)
                                      ! Caught 2018-02-13 00:12:25.342 error by controller[0]: at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
                                      ! Caught 2018-02-13 00:12:25.342 error by controller[0]: at Request.emit (events.js:191:7)
                                      ! Caught 2018-02-13 00:12:25.342 error by controller[0]: at emitTwo (events.js:106:13)
                                      ! Caught 2018-02-13 00:12:25.341 error by controller[0]: at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
                                      ! Caught 2018-02-13 00:12:25.341 error by controller[0]: at Request._callback (script.js.Spotify.Spotify:173:24)
                                      ! Caught 2018-02-13 00:12:25.341 error by controller[0]: at script.js.Spotify.Spotify:349:92
                                      ! Caught 2018-02-13 00:12:25.340 error by controller[0]: TypeError: Cannot read property 'replace' of null
                                      ! javascript.0 2018-02-13 00:12:25.210 error at IncomingMessage.g (events.js:292:16)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at Request.emit (events.js:188:7)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at emitOne (events.js:96:13)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at Request.emit (events.js:191:7)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at emitTwo (events.js:106:13)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at Request._callback (script.js.Spotify.Spotify:173:24)
                                      ! javascript.0 2018-02-13 00:12:25.210 error at script.js.Spotify.Spotify:349:92
                                      ! javascript.0 2018-02-13 00:12:25.210 error TypeError: Cannot read property 'replace' of null
                                      ! javascript.0 2018-02-13 00:12:25.210 error uncaught exception: Cannot read property 'replace' of null
                                      ! javascript.0 2018-02-13 00:12:25.148 warn Object "javascript.0.Spotify.Playlists.Symphoniacs–Symphoniacs.id" does not exist
                                      ! javascript.0 2018-02-13 00:12:25.139 warn Object "javascript.0.Spotify.Playlists.MeineShazam-Titel.id" does not exist
                                      ! javascript.0 2018-02-13 00:12:24.787 warn at Object. (script.js.Spotify.Spotify:652:118)
                                      ! javascript.0 2018-02-13 00:12:24.783 warn getState "javascript.0.Spotify.Playlists.MeineShazam-Titel.id" not found (3)
                                      ! javascript.0 2018-02-13 00:12:24.782 warn at Object. (script.js.Spotify.Spotify:652:42)
                                      ! javascript.0 2018-02-13 00:12:24.757 warn getState "javascript.0.Spotify.Playlists.MeineShazam-Titel.owner" not found (3)

                                      Sagt dir das was? Er hat es nämlich geschafft die Playlist MeineShazam anzulegen, aber ohne Musiktitel. Alle weiteren Playlists fehlen bzw die Songs aus MeineShazam.

                                      Edit: Ok ich konnte den Fehler beheben. Ich hatte eine mittlerweile leere Playlist in Spotify die ich abonniert hatte. Diese war nicht mehr verfügbar und hat wohl den Fehler erzeugt. Wäre natürlich trotzdem nett wenn das Skript sowas abfängt, aber jetzt keine muss 🙂

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        el-lutschi last edited by

                                        Hallo zusammen,

                                        bei mir funktioniert der Get Paylist Button auch nicht. Im Log habe ich allerdings keine Meldungen.

                                        Gruß

                                        Chris

                                        EDIT: OK jetzt geht es. Ich musste das Skript nach der Authorisierung nochmal neustarten.

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

                                          Ich habe das Skript von Lucky mal in einen Adapter gepackt: https://github.com/twonky4/ioBroker.spotify-premium

                                          Wäre toll wenn noch jemand außer mir das testen könnte 🙂

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

                                            Hi,

                                            nutzt der Adapter exakt dieselben Datenpunkt/Objekte wie das Script?

                                            Muss ich die Objekte vorher löschen oder reicht es zum test das Script zu stoppen?

                                            Ich hoffe die Konfig ist selbsterklärend !?

                                            Gruß

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            676
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript
                                            95
                                            745
                                            183498
                                            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