Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Spotify Skript

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.6k

[Vorlage] Spotify Skript

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
745 Beiträge 95 Kommentatoren 264.8k Aufrufe 41 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • twonkyT Offline
    twonkyT Offline
    twonky
    schrieb am zuletzt editiert von
    #390

    @Mic: Das liegt definitiv an den Geräten. An PCs geht das Shuffle nicht aus, an z.B. FireTv/Alexa geht es hingegen aus :shock:

    1 Antwort Letzte Antwort
    0
    • E Offline
      E Offline
      el-lutschi
      schrieb am zuletzt editiert von
      #391

      Hallo zusammen,

      ich habe das Problem, dass mein Sonos Play1 nicht in der Devices Übersicht des Adapters auftaucht.

      Über mein Handy und den PC kann ich den Sonos als Spotify Connect Gerät wählen. Nur im Adapter wird er erst garnicht angezeigt.

      Ist das normal?

      Gruß

      Chris

      1 Antwort Letzte Antwort
      0
      • twonkyT Offline
        twonkyT Offline
        twonky
        schrieb am zuletzt editiert von
        #392

        Sonos kann ich leider nicht testen, habe keins. Ich habe aber gehört, das es mit Sonos Schwierigkeiten gibt, was an Sonos liegt. :(

        Wenn du das Gerät über dein Handy zum Abspielen auswählst, wird es dann in deiner Devices Übersicht angezeigt?

        Allgemein kann ich sagen, das einige Spotify Geräte bei nicht Benutzung die Verbindung zu deinem Account verlieren. Über den Adapter ist ein neuverbinden (noch) nicht möglich. Das musst du dann manuell mit deinem Handy oder PC machen.

        1 Antwort Letzte Antwort
        0
        • E Offline
          E Offline
          el-lutschi
          schrieb am zuletzt editiert von
          #393

          Danke für die schnelle Rückmeldung.

          Die Sonso werden leider nie in der Devices Übersicht angezeigt. Egal ob mit dem Handy ausgewählt oder nicht.

          Das heißt dann wohl, dass ich die so nicht in den Adapter rein bekomme. Schade!

          @twonky:

          Allgemein kann ich sagen, das einige Spotify Geräte bei nicht Benutzung die Verbindung zu deinem Account verlieren. Über den Adapter ist ein neuverbinden (noch) nicht möglich. Das musst du dann manuell mit deinem Handy oder PC machen. `

          Das verstehe ich leider nicht ganz. Was meinst du mit Verbindung verlieren?

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            mikiline
            schrieb am zuletzt editiert von
            #394

            ich denke er meint damit das diese nicht "eingeloggt" sein können bei spotify als reiner client. Gleiches habe mit meinem Onkyo. Geht nur wenn ich per Handy Streame…..Allerdings wird er dann auch unter den Devices gelisted.

            1 Antwort Letzte Antwort
            0
            • twonkyT Offline
              twonkyT Offline
              twonky
              schrieb am zuletzt editiert von
              #395

              Genau was mikiline sagt :)

              @Mic: Ab der Version 0.3.0 gibt es eine Einstellung um das zu umgehen. Es gibt dafür sogar ein älteres Ticket direkt bei Spotify: https://github.com/spotify/web-api/issues/605

              Die neue Version 0.3.0 enthält auch noch folgendes:

              • Die Geräte und Playlisten States bestehen nun aus der Id und nicht mehr aus dem Namen, um besser mit Sonderzeichen umzugehen. (Da werden in Zukunft einige vom ioBroker nicht mehr unterstützt)

              • Neue States um Geräte als SelectBox auszuwählen: devices.deviceList, devices.deviceListIds, devices.deviceListString, devices.availableDeviceListIds, devices.availableDeviceListString

              • Neue States um Playlisten als SelectBox auszuwählen: playlists.playlistList, playlists.playlistListIds, playlists.playlistListString, playlists.yourPlaylistListIds, playlists.yourPlaylistListString

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                schubi82
                schrieb am zuletzt editiert von
                #396

                Hi twonky, irgendwie funktioniert das Tracklist-Widget nicht mehr (wahrscheinlich nach dem Update). Hat sich etwas geändert? Die Dateinamen sind meine ich gleich geblieben…

                1 Antwort Letzte Antwort
                0
                • twonkyT Offline
                  twonkyT Offline
                  twonky
                  schrieb am zuletzt editiert von
                  #397

                  @schubi82: Geht es etwas genauer? Was meinst du mit Tracklist-Widget? Hast du mal ein VIS Export als Beispiel?

                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    schubi82
                    schrieb am zuletzt editiert von
                    #398

                    Du hattest mir mal das Skript zur Verfügung gestellt, welches die Titel in einer HTML-Liste anzeigt:

                    `createState('javascript.0.spotify-premium.trackListHtml', '', false);
                    
                    function refreshTrackList() {
                    	var current = getState('spotify-premium.0.playbackInfo.playlist.trackList').val;
                    	var source = getState('spotify-premium.0.playbackInfo.playlist.trackListArray').val;
                    	var html = '';
                    
                    	for (var i = 0; i < source.length; i++) {
                    		html += '';
                    		html += '';
                    		html += '';
                    		html += '';
                    	}
                    
                    	html += '
                    
                    | ';
                    		if(current == i) html += '**';
                    		html += source[i].artist;
                    		if(current == i) html += '**';
                    		html += ' | ';
                    		if(current == i) html += '**';
                    		html += source[i].title;
                    		if(current == i) html += '**';
                    		html += ' |
                    
                    ';
                    
                    	setState('javascript.0.spotify-premium.trackListHtml', html, true);
                    }
                    
                    on('spotify-premium.0.playbackInfo.playlist.trackList', refreshTrackList);
                    on('spotify-premium.0.playbackInfo.playlist.trackListArray', refreshTrackList);
                    
                    refreshTrackList();
                    
                    // [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{javascript.0.spotify-premium.trackListHtml}"},"style":{"left":"669px","top":"207px","width":"303px","height":"454px"},"widgetSet":"basic"}]`
                    
                    Und das hatte ich per Widget eingepflegt:
                    
                    `~~[code]~~[{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{javascript.0.Spotify.trackListHtml}"},"style":{"left":"669px","top":"207px","width":"303px","height":"454px"},"widgetSet":"basic"}][/code]`
                    
                    Und irgendwie ist die Liste nun leer...[/i][/i]
                    
                    1 Antwort Letzte Antwort
                    0
                    • twonkyT Offline
                      twonkyT Offline
                      twonky
                      schrieb am zuletzt editiert von
                      #399

                      Ach das :D In deinem Widget wird die falsche ID abgefragt.

                      Dort steht: javascript.0.Spotify.trackListHtml

                      Es sollte sein: javascript.0.spotify-premium.trackListHtml

                      Und ändere in deinem Skript bitte mal die Zeile:

                      html += '';
                      
                      

                      in:

                      html += '';
                      
                      
                      1 Antwort Letzte Antwort
                      0
                      • Alex1808A Offline
                        Alex1808A Offline
                        Alex1808
                        schrieb am zuletzt editiert von
                        #400

                        @twonky:

                        Und ändere in deinem Skript bitte mal die Zeile: `

                        Hallo,

                        habe iobroker.spotify-premium adapter auch eine Woche am laufen gehabt, aber seit ein paar tage funktionieren widgets nicht mehr. Zeigen alle "undefined" an.

                        Widgetsbeispiele habe ich vom Github. (Adapter v. 0.3.1 (2018.06.20))

                        ! 513_screenshot_at_juni_21_09-07-55.png

                        Wurde was geändert?

                        1 Antwort Letzte Antwort
                        0
                        • twonkyT Offline
                          twonkyT Offline
                          twonky
                          schrieb am zuletzt editiert von
                          #401

                          @Alex1808: Was steht bei dir in den States:

                          • spotify-premium.0.playbackInfo.playlist.trackListNumber

                          • spotify-premium.0.playbackInfo.playlist.trackListString

                          • spotify-premium.0.devices.availableDeviceListIds

                          • spotify-premium.0.devices.availableDeviceListString

                          • spotify-premium.0.playlists.playlistListIds

                          • spotify-premium.0.playlists.playlistListString
                            ?

                          Welche VIS Version benutzt du?

                          1 Antwort Letzte Antwort
                          0
                          • Alex1808A Offline
                            Alex1808A Offline
                            Alex1808
                            schrieb am zuletzt editiert von
                            #402

                            @twonky:

                            @Alex1808: Was steht bei dir in den States: `

                            • spotify-premium.0.playbackInfo.playlist.trackListNumber
                            > Leer
                            
                            • spotify-premium.0.playbackInfo.playlist.trackListString

                              Leer

                            • spotify-premium.0.devices.availableDeviceListIds

                              Leer

                            • spotify-premium.0.devices.availableDeviceListString

                              Leer

                            • spotify-premium.0.playlists.playlistListIds

                              Leer

                            • spotify-premium.0.playlists.playlistListString

                              Leer

                            > Welche VIS Version benutzt du?
                            VIS v1.1.4, admin v3.4.6, Redis v3.2.6, Node v8.11.3, NPM 6.1.0

                            1 Antwort Letzte Antwort
                            0
                            • twonkyT Offline
                              twonkyT Offline
                              twonky
                              schrieb am zuletzt editiert von
                              #403

                              @Alex1808: Da die States leer sind, kann auch nix angezeigt werden. Ist dein Spotify Adapter denn korrekt authorisiert, also steht der State "spotify-premium.0.authorization.authorized" auf true?

                              Die States spotify-premium.0.devices.availableDeviceList* sollten auf jedenfall was enthalten, wenn du gerade eine Playlist abspielst.

                              1 Antwort Letzte Antwort
                              0
                              • Alex1808A Offline
                                Alex1808A Offline
                                Alex1808
                                schrieb am zuletzt editiert von
                                #404

                                @twonky:

                                @Alex1808: Da die States leer sind, kann auch nix angezeigt werden. Ist dein Spotify Adapter denn korrekt authorisiert, also steht der State "spotify-premium.0.authorization.authorized" auf true?

                                Die States spotify-premium.0.devices.availableDeviceList* sollten auf jedenfall was enthalten, wenn du gerade eine Playlist abspielst. `

                                Ja, Autorisation ist auf true. Habe auch versucht Autorisierung neu durchzuführen (Erfolgreich)

                                ! 513_screenshot_at_juni_21_22-36-58.png

                                spotify-premium.0.devices.availableDeviceList ist gefühlt

                                ! 513_screenshot_at_juni_21_22-38-09.png

                                ! 513_screenshot_at_juni_21_22-51-04.png

                                Hatt ja auch einige tage funktioniert, nur habe ich bemerkt das beim langem Standby werden Fehler im log angezeigt. Dann habe mit einem Skript im VIS eine taste eingebaut die Instanz ausschaltet/einschaltet. Aber die hat nur Instanz gesteuert.

                                1 Antwort Letzte Antwort
                                0
                                • B4n4n3B Offline
                                  B4n4n3B Offline
                                  B4n4n3
                                  schrieb am zuletzt editiert von
                                  #405

                                  Hallo zusammen,

                                  ich bin da nun echt nicht so tief drin um wirklich mitreden zu können, aber gibt es was neues bzgl. den Sonos Devices?

                                  Die werden bei mir nicht aufgelistet. Ich hab hier allerdings etwas in der API von Spotify gefunden… könnte das helfen?

                                  https://developer.spotify.com/documenta ... e-devices/

                                  Kann das, sofern noch nicht geschehen, im Spotify Adapter implementiert werden?

                                  Bitte steinigt mich nicht, wenn ich etwas falsch verstehe ;-)

                                  Grüße B4n4n3

                                  1 Antwort Letzte Antwort
                                  0
                                  • twonkyT Offline
                                    twonkyT Offline
                                    twonky
                                    schrieb am zuletzt editiert von
                                    #406

                                    @B4n4n3: Sonos Geräte funktionieren irgendwie anders. Ich kann das leider nicht testen, da ich keins habe. (Ich sollte vielleicht in der Adapter Beschreibung erwähnen, das Sonos Geräte nicht funktionieren.) Der von dir verlinkte API Punkt wird bereits abgefragt, solange die Sonos Geräte dort nicht auftauchen, kann ich auch nix machen.

                                    1 Antwort Letzte Antwort
                                    0
                                    • B4n4n3B Offline
                                      B4n4n3B Offline
                                      B4n4n3
                                      schrieb am zuletzt editiert von
                                      #407

                                      Hmm… ok, danke für die Antwort! Das ist sehr schade. Ich hoffe Spotify und Sonos schaffen es bald das die Geräte da auftauchen.

                                      1 Antwort Letzte Antwort
                                      0
                                      • Alex1808A Offline
                                        Alex1808A Offline
                                        Alex1808
                                        schrieb am zuletzt editiert von
                                        #408

                                        @twonky:

                                        @Alex1808: Da die States leer sind, kann auch nix angezeigt werden. Ist dein Spotify Adapter denn korrekt authorisiert, also steht der State "spotify-premium.0.authorization.authorized" auf true?

                                        Die States spotify-premium.0.devices.availableDeviceList* sollten auf jedenfall was enthalten, wenn du gerade eine Playlist abspielst. `

                                        Adapter komplet runter und neu installiert. Alle Daten sind wieder da.

                                        Jetzt habe alle drei Häkchen bei Einstellungen aktiviert.

                                        Werde nach einer Woche berichten :)

                                        1 Antwort Letzte Antwort
                                        0
                                        • MicM Offline
                                          MicM Offline
                                          Mic
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #409

                                          Hallo,

                                          falls Ihr auch mit der Problematik betroffen seid:

                                          wenn eine Alexa-Gruppe verwendet wird (z.B. "Überall") und ein oder mehrere Alexa dieser Gruppe vom Strom getrennt und wieder angeschlossen werden, so werden diese Geräte teils doppelt als Datenpunkte mit neuen IDs angelegt, ebenso wie die Gruppe(n). Wird in den Adapter-Einstellungen "Nicht mehr vorhandene Geräte löschen" gesetzt, löscht dieser dann auch die doppelten Geräte mit der "alter" ID. Hierbei werden aber auch neue IDs für Alexa-Gruppen (z.B. "Überall") vergeben, so dass man diese nicht mehr per Javascript mit z.B. "spotify-premium.0.devices.d1326ee273282053fe764144b8cd2376e2df5f88.useForPlayback" ansprechen kann, da diese ja nicht mehr vorhanden ist.

                                          Fehlermeldung im Log alle 5 Sekunden: "no playback content".

                                          Mein Workaround hierzu ist folgender:

                                          Ich ermittle über den Namen des Gerätes bzw. der Gruppe die Geräte-ID:

                                              /** 
                                               * Get the device ID from Spotify Premium Adapter for a given Device Name (like "Überall")
                                              */
                                              function spotifyGetDeviceIDfromName(strAlexaDeviceName) {
                                          
                                                  // Get Device information string, separated by ";"
                                                  var strDeviceIDs = getState("spotify-premium.0.devices.availableDeviceListIds").val;
                                                  var strDeviceNames = getState("spotify-premium.0.devices.availableDeviceListString").val;
                                          
                                                  // Split into Array
                                                  var aDeviceIDs = strDeviceIDs.split(";");
                                                  var aDeviceNames = strDeviceNames.split(";");
                                          
                                                  // Get Array position of name
                                                  var intPos = aDeviceNames.indexOf(strAlexaDeviceName);
                                          
                                                  // Get device ID string
                                                  var strDevID = aDeviceIDs[intPos];
                                          
                                                  return strDevID;
                                          
                                              }
                                          

                                          Dann kann man diese über setState() entsprechend per Geräte-Namen (und nicht neu vergebener ID) steuern:

                                          var strDeviceID = spotifyGetDeviceIDfromName('Überall');
                                          setState("spotify-premium.0.devices." + strDeviceID + ".useForPlayback", true);
                                          
                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          774

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe