Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. [Vorlage] Script für Sonos-Adapter

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    12
    1
    125

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

[Vorlage] Script für Sonos-Adapter

Scheduled Pinned Locked Moved Visualisierung
vis
153 Posts 46 Posters 36.2k Views 54 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    johannes1702
    wrote on last edited by johannes1702
    #139

    Hallo,

    ich habe mal eine Frage zu dem Skript in Zusammenhang mit Spotify.

    Über den DP "customFavoriteAdd" kann ich ja neue Playlisten hinzufügen und dann über die Angabe der Position in "customFavoritesPlayByNumber" abspielen. Mit der Playliste "Release Radar" oder "Discover Weekly" geht das problemlos bei mir. Allerdings würde ich gerne Musik aus meinen Lieblingssongs (unter Spotify) bzw. Lieder (in der Sonos App) abspielen. Lieder, Songs, Library... alles bisher erfolglos ausprobiert. Es spielt nichts.

    Hat jemand eine Idee? :-)

    1 Reply Last reply
    0
    • A australien

      @novregen
      ich bekomme viel, aber keine Buttons zum Start/Stop, oder so.
      Datenpunkte sind vorhanden.

      Unbenannt.JPG
      Unbenannt.JPG

      B Offline
      B Offline
      Batchman
      wrote on last edited by
      #140

      @australien Guten Morgen,
      ich habe mich die letzten Tage mit dem Script und den vis-Vorlagen befasst und bin auch recht weit gekommen,
      aber es hakt noch hier und da.
      Hast du das Projekt vollständig zum Laufen bekommen?
      Wenn ja, könnte ich dann die entspechende vis bekommen?

      1 Reply Last reply
      0
      • MicM Mic

        Hi,

        diese Vorlage bietet diverse Zusatzfunktionen zur Steuerung der Sonos-Geräte. Voraussetzung ist natürlich der Sonos-Adapter.

        Auszug aus den Funktionen:

        1. Favoriten in VIS: In VIS können die Sonos-Favoriten, also die in der App unter "Mein Sonos" gelistet sind, als Liste dargestellt werden. Klickt man auf einen dieser Favoriten, so wird der abgespielt und entsprechend im VIS auch markiert. Ein Menü bietet auch eine Auswahl, welche Favoriten zur Auswahl stehen sollen. Hier ein gif-Video, welches das zeigt.
          sonos-script-video-gif.gif

        2. State 'allStop': Setzt ALLE Sonos-Geräte des Adapters auf "stop".

        3. State 'customFavoritesPlay': Startet das Abspielen der Favoriten. Dabei wird der aktuell im Adapter gesetzte Favorit genommen, falls dieser nicht gesetzt ist, dann wird der 1. Favorit genommen. Es wird dabei auch eine Standard-Lautstärke gesetzt, die im Script unter PRESET_VOLUME definiert wird.

        4. State 'customFavoritesPlayG': Wie 'customFavoritesPlay', nur dass die Standard-Lautstärke der Sonos-Gruppe gesetzt wird, und nicht des einzelnen Gerätes.

        5. State 'customFavoritesPlayByNumber': Spielt einen Favoriten ab, in dem die entsprechende Nummer dem State übergeben wird.

        6. State 'customFavoritesPlayNext': Springt zum nächsten Favoriten-Eintrag in der Favoriten-Liste. Spielt den ersten Favoriten ab, falls aktuell der letzte Favorit gewählt ist.

        7. State 'customFavoritesPlayPrevious': Springt zum vorangegangenen Favoriten-Eintrag in der Favoriten-Liste. Spielt den letzten Favoriten ab, falls aktuell der erste Favorit gewählt ist.

        8. State 'volumeUp': Erhöht die Lautstärke. Voreingestellt ist die Erhöhung um 3 %, kann über VOL_VALUE in den Script-Einstellungen angepasst werden.

        9. State 'volumeDown': Verringert die Lautstärke. Voreingestellt ist die Verringerung um 3 %, kann über VOL_VALUEin den Script-Einstellungen angepasst werden.

        10. State 'volumeGroupUp': Wie 'volumeUp', nur dass hier die Gruppen-Lautstärke angepasst wird.

        11. State 'volumeGroupDown': Wie 'volumeDown', nur dass hier die Gruppen-Lautstärke angepasst wird.

        12. Geräte als Gruppe hinzufügen: Mittels GROUP_ON_PLAY / GROUP_ON_PLAY_DEVICES kann man in den Script-Einstellungen definieren, dass beim Abspielen eines Sonos-Gerätes automatisch weitere Geräte zur Gruppe hinzugefügt werden.


        Zur Einrichtung:

        1. Das Script in den JavaScript-Adapter als neues JS einfügen. Dort dann entsprechend die Einstellungen vornehmen. Das Script legt pro Sonos-Gerät entsprechende Datenpunkte (States) an, also wie im Sonos-Adapter:
          sonos-states.png

        2. Für VIS habe ich ein Projekt sonos-vis-project.zip erstellt, dieses ist hier zum Herunterladen verfügbar. Die Datei vis-views.json öffnet ihr am besten in einem Text-Editor, und macht dort Suchen/Ersetzen (STRG+h): suchen nach 10_10_10_10, ersetzen durch den Channel eures Sonos-Gerätes zur Anzeige in VIS. Channel ist der Teil des States in eurem Sonos-Adapter. Also bei sonos.0.root.192_168_0_100 ist das dann 192_168_0_100.
          Dann importiert ihr das Projekt in VIS.

        3. Wichtig: Wenn ihr die Größe des Widgets zur Darstellung der Favoriten ändert, müsst ihr auch die CSS-Datei anpassen, damit die Darstellung nicht "unsauber" wird.


        Und nun?
        Das war es auch schon :-) Nun sollte alles laufen.
        Zur Formatierung im VIS passt ihr entsprechend das CSS im VIS an, also z.B. die Farbe des aktuell ausgewählten Favoriten.

        Ich freue mich auf eure Rückmeldung.

        matze55M Offline
        matze55M Offline
        matze55
        wrote on last edited by
        #141

        @mic Das Script funktioniert super bis auf die Anzeige der Buttons. Der Laut und Leise button zeigen an aber die restlichen nicht. Die Frage kamm aber hier schon mal aber es gab keine Lösung, deshalb frage ich noch mal nach.

        Danke lg

        Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
        Tapo C210 Cam
        WLED Steuerung über lcdwiki

        matze55M 1 Reply Last reply
        0
        • matze55M matze55

          @mic Das Script funktioniert super bis auf die Anzeige der Buttons. Der Laut und Leise button zeigen an aber die restlichen nicht. Die Frage kamm aber hier schon mal aber es gab keine Lösung, deshalb frage ich noch mal nach.

          Danke lg

          matze55M Offline
          matze55M Offline
          matze55
          wrote on last edited by
          #142

          @matze55

          Ich habe aber den Fehler gefunden, weil die Button nicht anzeigen ,-Start,- Stop ect.
          In Zeile ca. 259 ist der Fehler:

          /**
                   *  Refresh if the current Sonos favorite changes
                   */
                  on({id: sonosPath(lpChannel) + '.favorites_set', change: 'ne'}, function (obj) {
                      let channel = getChannel(obj.id);
                      refreshFavoritesHtmlList(channel, getState(scriptPath(lpChannel) + '.customFavoriteListArray').val, scriptPath(channel) + '.customFavoriteListHtml'); // Nun können wir refreshen
                  });
          
          

          Das muss so:

          /**
                   *  Refresh if the current Sonos favorite changes
                   */
                  on({id: sonosPath(lpChannel) + '.favorites_set', change: 'any'}, function (obj) {
                      let channel = getChannel(obj.id);
                      refreshFavoritesHtmlList(channel, getState(scriptPath(lpChannel) + '.customFavoriteListArray').val, scriptPath(channel) + '.customFavoriteListHtml'); // Nun können wir refreshen
                  });
          

          Dann zeigen die Button an.

          lg

          Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
          Tapo C210 Cam
          WLED Steuerung über lcdwiki

          L 1 Reply Last reply
          0
          • matze55M matze55

            @matze55

            Ich habe aber den Fehler gefunden, weil die Button nicht anzeigen ,-Start,- Stop ect.
            In Zeile ca. 259 ist der Fehler:

            /**
                     *  Refresh if the current Sonos favorite changes
                     */
                    on({id: sonosPath(lpChannel) + '.favorites_set', change: 'ne'}, function (obj) {
                        let channel = getChannel(obj.id);
                        refreshFavoritesHtmlList(channel, getState(scriptPath(lpChannel) + '.customFavoriteListArray').val, scriptPath(channel) + '.customFavoriteListHtml'); // Nun können wir refreshen
                    });
            
            

            Das muss so:

            /**
                     *  Refresh if the current Sonos favorite changes
                     */
                    on({id: sonosPath(lpChannel) + '.favorites_set', change: 'any'}, function (obj) {
                        let channel = getChannel(obj.id);
                        refreshFavoritesHtmlList(channel, getState(scriptPath(lpChannel) + '.customFavoriteListArray').val, scriptPath(channel) + '.customFavoriteListHtml'); // Nun können wir refreshen
                    });
            

            Dann zeigen die Button an.

            lg

            L Offline
            L Offline
            lustig29
            wrote on last edited by
            #143

            Ich habe die Datei angepasst und die ZIP Datei reingeladen. Leider wird mir das Projekt aber nicht angezeigt. Komme immer wieder zu der „Main Ansicht“. Kann ich denn das ganze nicht einfach als neuen View einfügen?

            L 1 Reply Last reply
            0
            • L lustig29

              Ich habe die Datei angepasst und die ZIP Datei reingeladen. Leider wird mir das Projekt aber nicht angezeigt. Komme immer wieder zu der „Main Ansicht“. Kann ich denn das ganze nicht einfach als neuen View einfügen?

              L Offline
              L Offline
              lustig29
              wrote on last edited by
              #144

              @lustig29
              Kann mir denn hier keiner helfen?

              L HomoranH 2 Replies Last reply
              0
              • L lustig29

                @lustig29
                Kann mir denn hier keiner helfen?

                L Offline
                L Offline
                lustig29
                wrote on last edited by
                #145

                Kann keine Favoriten hinzufügen, bzw. es sind keine vorhanden.

                matze55M 1 Reply Last reply
                0
                • L lustig29

                  @lustig29
                  Kann mir denn hier keiner helfen?

                  HomoranH Do not disturb
                  HomoranH Do not disturb
                  Homoran
                  Global Moderator Administrators
                  wrote on last edited by
                  #146

                  @lustig29 sagte in [Vorlage] Script für Sonos-Adapter:

                  @lustig29
                  Kann mir denn hier keiner helfen?

                  noch einen Thread?
                  und sooo ungeduldig?

                  kein Support per PN! - Fragen im Forum stellen -

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  ioBroker freut sich auch über eine Spende für das Forum. Benutzt dazu den Spendenbutton im Header. Danke!

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Reply Last reply
                  1
                  • L lustig29

                    Kann keine Favoriten hinzufügen, bzw. es sind keine vorhanden.

                    matze55M Offline
                    matze55M Offline
                    matze55
                    wrote on last edited by matze55
                    #147

                    @lustig29 ich arbeite an dem Script nach...geduld .....bin momentan an einer anderen Sache dran. Geduld bitte.
                    Das Script sieht für mich wie verhunzt aus.....da nichts erkannt wird . Bin aber um es voher zu sagen kein Programmierer....mit PHP ein wenig aber hier bin ich auch ANFÄNGER...ich verbeuge mich aber zu tiefst dem ersteller

                    Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                    Tapo C210 Cam
                    WLED Steuerung über lcdwiki

                    L 1 Reply Last reply
                    0
                    • matze55M matze55

                      @lustig29 ich arbeite an dem Script nach...geduld .....bin momentan an einer anderen Sache dran. Geduld bitte.
                      Das Script sieht für mich wie verhunzt aus.....da nichts erkannt wird . Bin aber um es voher zu sagen kein Programmierer....mit PHP ein wenig aber hier bin ich auch ANFÄNGER...ich verbeuge mich aber zu tiefst dem ersteller

                      L Offline
                      L Offline
                      lustig29
                      wrote on last edited by
                      #148

                      @matze55

                      Alles klar schon mal vielen Dank dafür. Im Moment kann ich Lautstärke, Play und Pause bedienen. Die Favoriten werden mir aber nicht angezeigt.

                      matze55M 1 Reply Last reply
                      0
                      • L lustig29

                        @matze55

                        Alles klar schon mal vielen Dank dafür. Im Moment kann ich Lautstärke, Play und Pause bedienen. Die Favoriten werden mir aber nicht angezeigt.

                        matze55M Offline
                        matze55M Offline
                        matze55
                        wrote on last edited by
                        #149

                        @lustig29
                        versuche mal nur eine Sonos in deinen Adapter zu integrieren. Wenn eine IP im Adapter steht kommt er besser zu recht, aber warum das so ist frag den Teufel...lol

                        lg

                        Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                        Tapo C210 Cam
                        WLED Steuerung über lcdwiki

                        L 1 Reply Last reply
                        0
                        • matze55M matze55

                          @lustig29
                          versuche mal nur eine Sonos in deinen Adapter zu integrieren. Wenn eine IP im Adapter steht kommt er besser zu recht, aber warum das so ist frag den Teufel...lol

                          lg

                          L Offline
                          L Offline
                          lustig29
                          wrote on last edited by
                          #150

                          @matze55
                          Habe es jetzt erstmal so realisiert. Finde es cool, dass du dich der Sache annimmst.

                          10ec7537-f23d-4857-9570-7088dc536c58-image.png

                          L 1 Reply Last reply
                          0
                          • L lustig29

                            @matze55
                            Habe es jetzt erstmal so realisiert. Finde es cool, dass du dich der Sache annimmst.

                            10ec7537-f23d-4857-9570-7088dc536c58-image.png

                            L Offline
                            L Offline
                            leonundjulie
                            wrote on last edited by leonundjulie
                            #151

                            Hallo.

                            Ich will heute Abend diesen Thread abarbeiten. Der SONOS-Adapter ist installiert, meine 6 Lautsprecher sind auch alle im iOBroker angelegt - ich sehe also 6 Datenpunkte mit 10 verschiednen IP-Adressen ... ist ja sowieit auch logisch. Wobei ich nichts mit dem EIntrag mit der IP 0.0.0.0 anfangen kann

                            eb3cdae8-3da7-4042-8bde-ad8de24c5bc5-image.png

                            Mir erschließt sich folgendes aus der Beschreibung noch nicht:
                            4af40edf-9a8e-493a-9774-3ce8c8fdde53-image.png

                            Welche IP-Adresse ist hier einzutragen?

                            10x JA-Solar (380Wp) unter 15° gen Süden und 12x JA-Solar (385Wp) unter 10° gen Westen auf Carport, HUAWEI SUN2000 WR

                            Daran HUAWEI LUNA2000, 10kWh

                            Und via Kaskade 8x JA-Solar (385Wp) unter 45° gen Osten und 14x JA-Solar (385Wp) unter 23° gen Westen am 2. HUAWEI SUN2000 WR.

                            SMARTFOX PRO als EMS, KEBA P30-X Wallbox

                            matze55M 1 Reply Last reply
                            0
                            • L leonundjulie

                              Hallo.

                              Ich will heute Abend diesen Thread abarbeiten. Der SONOS-Adapter ist installiert, meine 6 Lautsprecher sind auch alle im iOBroker angelegt - ich sehe also 6 Datenpunkte mit 10 verschiednen IP-Adressen ... ist ja sowieit auch logisch. Wobei ich nichts mit dem EIntrag mit der IP 0.0.0.0 anfangen kann

                              eb3cdae8-3da7-4042-8bde-ad8de24c5bc5-image.png

                              Mir erschließt sich folgendes aus der Beschreibung noch nicht:
                              4af40edf-9a8e-493a-9774-3ce8c8fdde53-image.png

                              Welche IP-Adresse ist hier einzutragen?

                              matze55M Offline
                              matze55M Offline
                              matze55
                              wrote on last edited by
                              #152

                              @leonundjulie stehen denn Werte drin bei der unbekannten IP-Adresse?
                              Dann schau doch mal im Router nach ob du deinen Sonosgeräten die Ip zuordnen kannst !
                              Bleistift und Zettel hilft :blush:

                              Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                              Tapo C210 Cam
                              WLED Steuerung über lcdwiki

                              L 1 Reply Last reply
                              0
                              • matze55M matze55

                                @leonundjulie stehen denn Werte drin bei der unbekannten IP-Adresse?
                                Dann schau doch mal im Router nach ob du deinen Sonosgeräten die Ip zuordnen kannst !
                                Bleistift und Zettel hilft :blush:

                                L Offline
                                L Offline
                                leonundjulie
                                wrote on last edited by leonundjulie
                                #153

                                @matze55 , die 0.0.0.0 gibt es nicht in meiner FB, die übrigen sind 1:1 zuzuordnen

                                Meine eigentliche Frage ist aber:

                                Mir erschließt sich folgendes aus der Beschreibung noch nicht:
                                7aac541c-d204-4b2e-af03-cde62a52fc7f-image.png
                                Welche IP-Adresse ist hier einzutragen?

                                10x JA-Solar (380Wp) unter 15° gen Süden und 12x JA-Solar (385Wp) unter 10° gen Westen auf Carport, HUAWEI SUN2000 WR

                                Daran HUAWEI LUNA2000, 10kWh

                                Und via Kaskade 8x JA-Solar (385Wp) unter 45° gen Osten und 14x JA-Solar (385Wp) unter 23° gen Westen am 2. HUAWEI SUN2000 WR.

                                SMARTFOX PRO als EMS, KEBA P30-X Wallbox

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                587

                                Online

                                32.7k

                                Users

                                82.4k

                                Topics

                                1.3m

                                Posts
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Home
                                • Recent
                                • Tags
                                • Unread 0
                                • Categories
                                • Unreplied
                                • Popular
                                • GitHub
                                • Docu
                                • Hilfe