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. ioBroker Allgemein
  4. Sonos-HTTP-API Installation für Newbies, Dummies und mich

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Sonos-HTTP-API Installation für Newbies, Dummies und mich

Scheduled Pinned Locked Moved ioBroker Allgemein
sonos
438 Posts 50 Posters 125.1k Views 48 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.
  • D Offline
    D Offline
    dwm
    wrote on last edited by
    #241

    Könnt mal jemand was ausprobieren?

    #!/bin/bash
    
    SONOSAPI_USER=sonosapi
    SONOSAPI_DIR=/opt/sonosapi
    SONOSAPI_SERVICE=sonosapi
    
    SONOSAPI_SERVICE_FILE=/etc/systemd/system/$SONOSAPI_SERVICE.service
    
    sonosapi_user(){
      useradd --system --home-dir $SONOSAPI_DIR --shell /bin/bash $SONOSAPI_USER
      mkdir -p $SONOSAPI_DIR
      chown $SONOSAPI_USER:$SONOSAPI_USER $SONOSAPI_DIR
    }
    
    
    sonosapi_install() {
      cd $SONOSAPI_DIR
      su -c 'wget https://github.com/jishi/node-sonos-http-api/archive/master.zip' $SONOSAPI_USER
      su -c 'unzip master.zip' $SONOSAPI_USER
      su -c 'cd node-sonos-http-api-master && npm install --production' $SONOSAPI_USER
      rm master.zip
    }
    
    sonosapi_service() {
    echo Writing $SONOSAPI_SERVICE_FILE
    cat << EOF > $SONOSAPI_SERVICE_FILE
    [Unit]
    Description=Sonos HTTP API Daemon
    After=syslog.target network.target
    
    [Service]
    Type=simple
    User=$SONOSAPI_USER
    ExecStart=/usr/bin/node $SONOSAPI_DIR/node-sonos-http-api-master/server.js
    Restart=always
    RestartSec=10
    
    [Install]
    WantedBy=multi-user.target
    EOF
    
    systemctl enable $SONOSAPI_SERVICE
    systemctl start $SONOSAPI_SERVICE
    }
    
    sonosapi_uninstall() {
        systemctl stop $SONOSAPI_SERVICE
        systemctl disable $SONOSAPI_SERVICE
        rm -rf $SONOSAPI_DIR
        userdel $SONOSAPI_USER
        rm $SONOSAPI_SERVICE_FILE
    }
    
    # sonosapi_uninstall
    sonosapi_user
    sonosapi_install
    sonosapi_service
    
    

    Den Code oben auf der Linux Kiste als "sonosapi_install.sh" abspeichern. Das ist im Prinzip die Installationsanleitung als bash-script.
    Dann ausführen mit

    sudo bash ./sonosapi_install.sh
    

    Danach sollte "eigentlich" alles geritzt sein. Die API läuft dann im Verzeichnis /opt/sonosapi mit einem eigenen User "sonosapi", das bitte berücksichtigen, wenn man im Filesystem was reinspeichert ...

    Ich hab das jetzt spaßeshalber mal auf ner Ubuntu 18.04 probiert, da klappts.

    S 1 Reply Last reply
    0
    • D dwm

      Könnt mal jemand was ausprobieren?

      #!/bin/bash
      
      SONOSAPI_USER=sonosapi
      SONOSAPI_DIR=/opt/sonosapi
      SONOSAPI_SERVICE=sonosapi
      
      SONOSAPI_SERVICE_FILE=/etc/systemd/system/$SONOSAPI_SERVICE.service
      
      sonosapi_user(){
        useradd --system --home-dir $SONOSAPI_DIR --shell /bin/bash $SONOSAPI_USER
        mkdir -p $SONOSAPI_DIR
        chown $SONOSAPI_USER:$SONOSAPI_USER $SONOSAPI_DIR
      }
      
      
      sonosapi_install() {
        cd $SONOSAPI_DIR
        su -c 'wget https://github.com/jishi/node-sonos-http-api/archive/master.zip' $SONOSAPI_USER
        su -c 'unzip master.zip' $SONOSAPI_USER
        su -c 'cd node-sonos-http-api-master && npm install --production' $SONOSAPI_USER
        rm master.zip
      }
      
      sonosapi_service() {
      echo Writing $SONOSAPI_SERVICE_FILE
      cat << EOF > $SONOSAPI_SERVICE_FILE
      [Unit]
      Description=Sonos HTTP API Daemon
      After=syslog.target network.target
      
      [Service]
      Type=simple
      User=$SONOSAPI_USER
      ExecStart=/usr/bin/node $SONOSAPI_DIR/node-sonos-http-api-master/server.js
      Restart=always
      RestartSec=10
      
      [Install]
      WantedBy=multi-user.target
      EOF
      
      systemctl enable $SONOSAPI_SERVICE
      systemctl start $SONOSAPI_SERVICE
      }
      
      sonosapi_uninstall() {
          systemctl stop $SONOSAPI_SERVICE
          systemctl disable $SONOSAPI_SERVICE
          rm -rf $SONOSAPI_DIR
          userdel $SONOSAPI_USER
          rm $SONOSAPI_SERVICE_FILE
      }
      
      # sonosapi_uninstall
      sonosapi_user
      sonosapi_install
      sonosapi_service
      
      

      Den Code oben auf der Linux Kiste als "sonosapi_install.sh" abspeichern. Das ist im Prinzip die Installationsanleitung als bash-script.
      Dann ausführen mit

      sudo bash ./sonosapi_install.sh
      

      Danach sollte "eigentlich" alles geritzt sein. Die API läuft dann im Verzeichnis /opt/sonosapi mit einem eigenen User "sonosapi", das bitte berücksichtigen, wenn man im Filesystem was reinspeichert ...

      Ich hab das jetzt spaßeshalber mal auf ner Ubuntu 18.04 probiert, da klappts.

      S Offline
      S Offline
      skokarl
      wrote on last edited by skokarl
      #242

      @dwm

      Du bist sicherlich um 1000% fitter als ich, aber bisher hat sich noch niemand über den autostart beschwert,
      da macht doch Matten irgendwas falsch .... oder liegt es an der Linux Version ??

      IOBroker mit Proxmox auf Celeron Nuc mit 16 GB und Debian11, Sonos API, Echo Show 15 als Wandtablet, Homematic IP, HUE, Sonos, Echos, DS718+ als Backup

      D M 2 Replies Last reply
      0
      • S skokarl

        @dwm

        Du bist sicherlich um 1000% fitter als ich, aber bisher hat sich noch niemand über den autostart beschwert,
        da macht doch Matten irgendwas falsch .... oder liegt es an der Linux Version ??

        D Offline
        D Offline
        dwm
        wrote on last edited by
        #243

        @skokarl ... Keine Ahnung, worans liegt.
        Der Autostart funktioniert schon so, wie beschrieben, das passt schon. Ohne log-Ausgabe ist das nur Raten, das führt zu nix. Irgendwas ist da halt falsch zusammengestöpselt.

        1 Reply Last reply
        1
        • C Offline
          C Offline
          chka
          wrote on last edited by
          #244

          morgen zusammen, ich nutze den adapter für die Sprachausgabe
          In 4 Zimmern sind größten teils Sonos 1 und Playbar verbaut.
          Ich lass mich über die Sonos Wecken in dem Musik abgespielt wird.
          Davor wollte ich noch eine Sprachausgabe über alle Sonos in den unterschiedlichen Zonen ausgeben.
          Laut Doku sieht dann die url wie folgt aus:

          http://IP:5005/sayall/Guten%20Morgen.%20Es%20ist:%206%20Uhr%20und%2044.%20Die%20Aktuelle%20Außentemperatur%20beträgt%20-4.3%20Grad%20Celsius.%20Achtung%20Wetterwarnung/de/20
          

          manuell geht das ganze mal man sieht auch das alle Zonen zu einer zusammengefast werden, lief Musik wird diese unterbrochen, allerdings von 10 Versuchen geht es vielleicht 2 mal. Und es wird ein Text ausgegeben.
          Schaue ich in den Sonos Controller sehe ich auch eine Datei die abgespielt werden soll aber es passiert nichts.

          INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

          Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

          RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

          1 Reply Last reply
          0
          • L Offline
            L Offline
            LJSven
            wrote on last edited by
            #245

            @dwm Ich habe heute Morgen folgende Fehlermeldung in der Logdatei - was heißt das?

            javascript.0	2020-02-12 07:09:37.885	error	(3232) at endReadableNT (_stream_readable.js:1145:12)
            javascript.0	2020-02-12 07:09:37.885	error	(3232) at IncomingMessage.emit (events.js:203:15)
            javascript.0	2020-02-12 07:09:37.884	error	(3232) at Object.onceWrapper (events.js:286:20)
            javascript.0	2020-02-12 07:09:37.884	error	(3232) at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1083:12)
            javascript.0	2020-02-12 07:09:37.883	error	(3232) at Request.emit (events.js:198:13)
            javascript.0	2020-02-12 07:09:37.883	error	(3232) at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1161:10)
            javascript.0	2020-02-12 07:09:37.882	error	(3232) at Request.emit (events.js:198:13)
            javascript.0	2020-02-12 07:09:37.882	error	(3232) at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
            javascript.0	2020-02-12 07:09:37.881	error	(3232) at Request._callback (script.js.common.SonosApi.SonosAPI:81:21)
            javascript.0	2020-02-12 07:09:37.881	error	(3232) at processPlaylists (script.js.common.SonosApi.SonosAPI:787:36)
            javascript.0	2020-02-12 07:09:37.878	error	(3232) script.js.common.SonosApi.SonosAPI: TypeError: PlaylistData.join is not a function
            
            D 1 Reply Last reply
            0
            • L LJSven

              @dwm Ich habe heute Morgen folgende Fehlermeldung in der Logdatei - was heißt das?

              javascript.0	2020-02-12 07:09:37.885	error	(3232) at endReadableNT (_stream_readable.js:1145:12)
              javascript.0	2020-02-12 07:09:37.885	error	(3232) at IncomingMessage.emit (events.js:203:15)
              javascript.0	2020-02-12 07:09:37.884	error	(3232) at Object.onceWrapper (events.js:286:20)
              javascript.0	2020-02-12 07:09:37.884	error	(3232) at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1083:12)
              javascript.0	2020-02-12 07:09:37.883	error	(3232) at Request.emit (events.js:198:13)
              javascript.0	2020-02-12 07:09:37.883	error	(3232) at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1161:10)
              javascript.0	2020-02-12 07:09:37.882	error	(3232) at Request.emit (events.js:198:13)
              javascript.0	2020-02-12 07:09:37.882	error	(3232) at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
              javascript.0	2020-02-12 07:09:37.881	error	(3232) at Request._callback (script.js.common.SonosApi.SonosAPI:81:21)
              javascript.0	2020-02-12 07:09:37.881	error	(3232) at processPlaylists (script.js.common.SonosApi.SonosAPI:787:36)
              javascript.0	2020-02-12 07:09:37.878	error	(3232) script.js.common.SonosApi.SonosAPI: TypeError: PlaylistData.join is not a function
              
              D Offline
              D Offline
              dwm
              wrote on last edited by
              #246

              @LJSven
              Hm ... grundsätzlich gibts bei den Funktionen, die die Playlists abfragen die "PlaylistData" ... das ist ein array, das dann eine "join" Funktion hat.
              In dem Fall war PlaylistData KEIN Array, also Typfehler.

              Nur einmal aufgetreten, oder öfters?
              Was liefert den die API, wenn man "/playlists" fragt?

              L 2 Replies Last reply
              0
              • D dwm

                @LJSven
                Hm ... grundsätzlich gibts bei den Funktionen, die die Playlists abfragen die "PlaylistData" ... das ist ein array, das dann eine "join" Funktion hat.
                In dem Fall war PlaylistData KEIN Array, also Typfehler.

                Nur einmal aufgetreten, oder öfters?
                Was liefert den die API, wenn man "/playlists" fragt?

                L Offline
                L Offline
                LJSven
                wrote on last edited by
                #247

                @dwm sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:

                @LJSven
                Hm ... grundsätzlich gibts bei den Funktionen, die die Playlists abfragen die "PlaylistData" ... das ist ein array, das dann eine "join" Funktion hat.
                In dem Fall war PlaylistData KEIN Array, also Typfehler.

                Nur einmal aufgetreten, oder öfters?
                Was liefert den die API, wenn man "/playlists" fragt?

                Bisher einmal - ich beobachte es mal weiter.

                1 Reply Last reply
                0
                • S skokarl

                  @dwm

                  Du bist sicherlich um 1000% fitter als ich, aber bisher hat sich noch niemand über den autostart beschwert,
                  da macht doch Matten irgendwas falsch .... oder liegt es an der Linux Version ??

                  M Offline
                  M Offline
                  Matten
                  wrote on last edited by
                  #248

                  @skokarl @dwm Da ich mit meinem zwave Adapter in meiner Virtualbox immer wieder Probleme hatte bin ich ich auf Proxmox umgestiegen, deshalb melde ich mich heute erst.

                  Ich habe damit den Adapter nochmals installiert, ebenso das Autostart Script, es läuft jetzt. Vielen Dank!

                  Hardware: NUC 386i, Proxmox: als VM ioBroker, HomeMatic, Hue(Zigbee), UnifiAC, Visualisierung: 24 Zoll Touchscreen Portrait Modus

                  S 1 Reply Last reply
                  1
                  • M Matten

                    @skokarl @dwm Da ich mit meinem zwave Adapter in meiner Virtualbox immer wieder Probleme hatte bin ich ich auf Proxmox umgestiegen, deshalb melde ich mich heute erst.

                    Ich habe damit den Adapter nochmals installiert, ebenso das Autostart Script, es läuft jetzt. Vielen Dank!

                    S Offline
                    S Offline
                    skokarl
                    wrote on last edited by
                    #249

                    @Matten

                    Danke für die Rückmeldung.

                    IOBroker mit Proxmox auf Celeron Nuc mit 16 GB und Debian11, Sonos API, Echo Show 15 als Wandtablet, Homematic IP, HUE, Sonos, Echos, DS718+ als Backup

                    1 Reply Last reply
                    0
                    • D dwm

                      @LJSven
                      Hm ... grundsätzlich gibts bei den Funktionen, die die Playlists abfragen die "PlaylistData" ... das ist ein array, das dann eine "join" Funktion hat.
                      In dem Fall war PlaylistData KEIN Array, also Typfehler.

                      Nur einmal aufgetreten, oder öfters?
                      Was liefert den die API, wenn man "/playlists" fragt?

                      L Offline
                      L Offline
                      LJSven
                      wrote on last edited by
                      #250

                      @dwm sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:

                      @LJSven
                      Hm ... grundsätzlich gibts bei den Funktionen, die die Playlists abfragen die "PlaylistData" ... das ist ein array, das dann eine "join" Funktion hat.
                      In dem Fall war PlaylistData KEIN Array, also Typfehler.

                      Nur einmal aufgetreten, oder öfters?
                      Was liefert den die API, wenn man "/playlists" fragt?

                      Hallo @dwm,

                      der Fehler ist heute wieder aufgreteten - auch bei dem FavData.join

                      Woran kann das liegen? Kann ich da was gegen machen? Ich kann nicht mal einen Zusammenhang feststellen - weil zu dem Zeitpunkt kein Befehl abgesetzt wurde. Ich kann auch nciht sehen, welches Gerät dafür verantwortlich ist, oder?

                      D 1 Reply Last reply
                      0
                      • L LJSven

                        @dwm sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:

                        @LJSven
                        Hm ... grundsätzlich gibts bei den Funktionen, die die Playlists abfragen die "PlaylistData" ... das ist ein array, das dann eine "join" Funktion hat.
                        In dem Fall war PlaylistData KEIN Array, also Typfehler.

                        Nur einmal aufgetreten, oder öfters?
                        Was liefert den die API, wenn man "/playlists" fragt?

                        Hallo @dwm,

                        der Fehler ist heute wieder aufgreteten - auch bei dem FavData.join

                        Woran kann das liegen? Kann ich da was gegen machen? Ich kann nicht mal einen Zusammenhang feststellen - weil zu dem Zeitpunkt kein Befehl abgesetzt wurde. Ich kann auch nciht sehen, welches Gerät dafür verantwortlich ist, oder?

                        D Offline
                        D Offline
                        dwm
                        wrote on last edited by
                        #251

                        @LJSven
                        Das sind die Sonos-Favoriten und die Sonos Playlists die da abgefragt werden, und zwar jede Minute einmal. Insofern ist da kein Gerät dafür verantwortlich, das kommt vom "Gesamtsystem Sonos". Trotzdem sollte die API natürlich den richtigen Datentyp liefern.
                        Ich hab jetzt mal ein Update hochgeladen, mit folgenden Änderungen:

                        function processFavorites(FavData, cbParam ){
                            forceCreate=false;
                            if (Array.isArray(FavData)){
                                var FavListStr = FavData.join(';');
                                // dwmlog ("Process Favorites Data: "+JSON.stringify(FavData,null,4)+" gives List "+FavListStr,5);
                                createOrSetState(AdapterId+".SonosAPI.FavList",FavListStr,forceCreate,{ type: 'string', name: "Sonos Favorites list"});
                            } else {
                                dwmlog("SonosAPI processFavorites got invalid data: "+JSON.stringify(FavData),2,"warn");
                            }
                        }
                        
                        function processPlaylists(PlaylistData, cbParam ){
                            forceCreate=false;
                            if (Array.isArray(PlaylistData)){
                                var PlayListStr = PlaylistData.join(';');
                                // dwmlog ("Process Favorites Data: "+JSON.stringify(FavData,null,4)+" gives List "+FavListStr,5);
                                createOrSetState(AdapterId+".SonosAPI.Playlists",PlayListStr,forceCreate,{ type: 'string', name: "Sonos Playlist list"});
                            } else {
                                dwmlog("SonosAPI processPlaylists got invalid data: "+JSON.stringify(PlaylistData),2,"warn");
                            }
                        }
                        

                        das härtet die beiden Funktionen gegen den falschen Datentyp, es wird dann eben eine Warnung ins Log geschrieben, aber die Exception passiert nicht mehr.
                        Ist irgendwie anscheinend ein Problem in der API selber. Wenns nur sporadisch auftritt, kann man's ignorieren, wie gesagt, die Synchronisierung von Playlists und Favoriten passiert einmal pro Minute.

                        L 1 Reply Last reply
                        0
                        • D dwm

                          @LJSven
                          Das sind die Sonos-Favoriten und die Sonos Playlists die da abgefragt werden, und zwar jede Minute einmal. Insofern ist da kein Gerät dafür verantwortlich, das kommt vom "Gesamtsystem Sonos". Trotzdem sollte die API natürlich den richtigen Datentyp liefern.
                          Ich hab jetzt mal ein Update hochgeladen, mit folgenden Änderungen:

                          function processFavorites(FavData, cbParam ){
                              forceCreate=false;
                              if (Array.isArray(FavData)){
                                  var FavListStr = FavData.join(';');
                                  // dwmlog ("Process Favorites Data: "+JSON.stringify(FavData,null,4)+" gives List "+FavListStr,5);
                                  createOrSetState(AdapterId+".SonosAPI.FavList",FavListStr,forceCreate,{ type: 'string', name: "Sonos Favorites list"});
                              } else {
                                  dwmlog("SonosAPI processFavorites got invalid data: "+JSON.stringify(FavData),2,"warn");
                              }
                          }
                          
                          function processPlaylists(PlaylistData, cbParam ){
                              forceCreate=false;
                              if (Array.isArray(PlaylistData)){
                                  var PlayListStr = PlaylistData.join(';');
                                  // dwmlog ("Process Favorites Data: "+JSON.stringify(FavData,null,4)+" gives List "+FavListStr,5);
                                  createOrSetState(AdapterId+".SonosAPI.Playlists",PlayListStr,forceCreate,{ type: 'string', name: "Sonos Playlist list"});
                              } else {
                                  dwmlog("SonosAPI processPlaylists got invalid data: "+JSON.stringify(PlaylistData),2,"warn");
                              }
                          }
                          

                          das härtet die beiden Funktionen gegen den falschen Datentyp, es wird dann eben eine Warnung ins Log geschrieben, aber die Exception passiert nicht mehr.
                          Ist irgendwie anscheinend ein Problem in der API selber. Wenns nur sporadisch auftritt, kann man's ignorieren, wie gesagt, die Synchronisierung von Playlists und Favoriten passiert einmal pro Minute.

                          L Offline
                          L Offline
                          LJSven
                          wrote on last edited by
                          #252

                          @dwm sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:

                          @LJSven
                          Das sind die Sonos-Favoriten und die Sonos Playlists die da abgefragt werden, und zwar jede Minute einmal. Insofern ist da kein Gerät dafür verantwortlich, das kommt vom "Gesamtsystem Sonos". Trotzdem sollte die API natürlich den richtigen Datentyp liefern.
                          Ich hab jetzt mal ein Update hochgeladen, mit folgenden Änderungen:

                          function processFavorites(FavData, cbParam ){
                              forceCreate=false;
                              if (Array.isArray(FavData)){
                                  var FavListStr = FavData.join(';');
                                  // dwmlog ("Process Favorites Data: "+JSON.stringify(FavData,null,4)+" gives List "+FavListStr,5);
                                  createOrSetState(AdapterId+".SonosAPI.FavList",FavListStr,forceCreate,{ type: 'string', name: "Sonos Favorites list"});
                              } else {
                                  dwmlog("SonosAPI processFavorites got invalid data: "+JSON.stringify(FavData),2,"warn");
                              }
                          }
                          
                          function processPlaylists(PlaylistData, cbParam ){
                              forceCreate=false;
                              if (Array.isArray(PlaylistData)){
                                  var PlayListStr = PlaylistData.join(';');
                                  // dwmlog ("Process Favorites Data: "+JSON.stringify(FavData,null,4)+" gives List "+FavListStr,5);
                                  createOrSetState(AdapterId+".SonosAPI.Playlists",PlayListStr,forceCreate,{ type: 'string', name: "Sonos Playlist list"});
                              } else {
                                  dwmlog("SonosAPI processPlaylists got invalid data: "+JSON.stringify(PlaylistData),2,"warn");
                              }
                          }
                          

                          das härtet die beiden Funktionen gegen den falschen Datentyp, es wird dann eben eine Warnung ins Log geschrieben, aber die Exception passiert nicht mehr.
                          Ist irgendwie anscheinend ein Problem in der API selber. Wenns nur sporadisch auftritt, kann man's ignorieren, wie gesagt, die Synchronisierung von Playlists und Favoriten passiert einmal pro Minute.

                          Wo finde ich das Update? Wie mache ich das?

                          1 Reply Last reply
                          0
                          • D Offline
                            D Offline
                            dwm
                            wrote on last edited by
                            #253

                            In meinem Github Repository...
                            https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPI

                            Einfach Script mit neuer Version ersetzen.

                            L 1 Reply Last reply
                            0
                            • R Offline
                              R Offline
                              rehmosch
                              wrote on last edited by
                              #254

                              Servus,

                              wie kann ich das Album-Cover auf der Sonos mit VIS aktualisieren? Oder wie kann ich VIS alle 5 Sekunden aktualisieren lassen? Das neue Album-Cover ist ja als Datenpunkt da und die Daten haben sich geändert, aber VIS ändert nichts, jedoch bei Spotify klappt es ;(

                              Soll ich es über einen eigenen Datenpunkt triggern? Danke

                              RP4/Conbee II/Pihilips Hue/HarmonyHub/Sonos/Alexa/Aqara Sensoren/Tradfri/ZigbeeThermostate/Xiaomi Saugroboter/Smarte Türklingel & Briefkasten ...

                              1 Reply Last reply
                              0
                              • D dwm

                                In meinem Github Repository...
                                https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPI

                                Einfach Script mit neuer Version ersetzen.

                                L Offline
                                L Offline
                                LJSven
                                wrote on last edited by LJSven
                                #255

                                @dwm sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:

                                In meinem Github Repository...
                                https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPI

                                Einfach Script mit neuer Version ersetzen.

                                Okay, erledigt - der Fehler oder das Warning ist bisher noch nicht wieder aufgetreten.

                                Andere Frage: Wenn der "PlaybackState" auf STOPPED geht, bleibt der "PlaybackStateSimple" auf true - ist das korrekt? Ausserdem springt der "playbackState" nach ca. 3 Minuten wieder um auf "PLAYING", wenn ich den Wert über die VIS ändere.

                                1 Reply Last reply
                                0
                                • D Offline
                                  D Offline
                                  dwm
                                  wrote on last edited by
                                  #256

                                  Seltsames Verhalten.
                                  Im Prinzip ist das so verdrahtet, dass der PlaybackStateSimple auf false geht, wenn der PlaybackState nicht "PLAYING" ist.

                                  Wenn man den PlaybackStateSimple auf "true" setzt, sollte eine "PLAY" Action ausgeführt werden, bei false ein "PAUSE".

                                  Was ich mir grad vorstellen könnte ist, dass das System durcheinanderkommt, wenn man die Kommandos sehr schnell hintereinander absetzt.

                                  1 Reply Last reply
                                  0
                                  • Q Qlink

                                    Hi Leute,

                                    ich hab die Sonos-http-api Installation jetzt auch erfolgreich unter Windows hinbekommen inkl. Autostart.

                                    Die Installationsschritte sind eigentlich fast identisch zu den oben genannten.

                                    node-sonos-http-api-master.zip von github herunterladen und nach C:\ioBroker\node_modules\node-sonos-http-api-master bzw. eurem iobroker Verzeichnis entpacken

                                    wie beschrieben mittels npm installieren

                                    den autostart habe ich mit pm2 hinbekommen:
                                    pm2 von github laden und ebenfalls wie sonos-http-api installieren https://github.com/Unitech/pm2

                                    dann autostart-sonos-http-api.bat erstellen und in einem beliebigen verzeichnis ablegen
                                    in das .bat file folgendens cmd einfügen

                                    pm2 start c:\iobroker\node_modules\node-sonos-http-api-master\server.js -x --name "sonos-api"
                                    

                                    Nun nur noch mittels Windows Task Scheduler eine neue Task erstellen, bei Trigger "at startup" und bei Action "start program" mit verweis auf das erstellte .bat file

                                    und fertig

                                    Beste Grüße

                                    surfer09S Offline
                                    surfer09S Offline
                                    surfer09
                                    wrote on last edited by surfer09
                                    #257

                                    @Qlink sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:

                                    Hi Leute,

                                    ich hab die Sonos-http-api Installation jetzt auch erfolgreich unter Windows hinbekommen inkl. Autostart.

                                    Die Installationsschritte sind eigentlich fast identisch zu den oben genannten.

                                    node-sonos-http-api-master.zip von github herunterladen und nach C:\ioBroker\node_modules\node-sonos-http-api-master bzw. eurem iobroker Verzeichnis entpacken

                                    wie beschrieben mittels npm installieren

                                    den autostart habe ich mit pm2 hinbekommen:
                                    pm2 von github laden und ebenfalls wie sonos-http-api installieren https://github.com/Unitech/pm2

                                    dann autostart-sonos-http-api.bat erstellen und in einem beliebigen verzeichnis ablegen
                                    in das .bat file folgendens cmd einfügen

                                    pm2 start c:\iobroker\node_modules\node-sonos-http-api-master\server.js -x --name "sonos-api"
                                    

                                    Nun nur noch mittels Windows Task Scheduler eine neue Task erstellen, bei Trigger "at startup" und bei Action "start program" mit verweis auf das erstellte .bat file

                                    und fertig

                                    Beste Grüße

                                    Danke für deine Anleitung! Ich habe das Ganze so installiert, wie du beschildert hast, allerdings funktioniert die Batch-Datei bei mir nicht. Meldung: "Der Befehl pm2 ist entweder falsch geschrieben, oder konnte nicht gefunden werden".
                                    Pm2 habe ich ebenfalls in den node_modules Ordner meiners IO-Brokers installiert.

                                    Aktuell starte ich die API immer manuell und das funktioniert dann scheinbar auch. Das muss ich aber nach jedem Neustart ausführen.. Wäre besser, wenn das doch automatisch ginge...

                                    API-start.jpg

                                    Gruß surfer ;-)

                                    IO-Broker Master/Slave auf Windows 11 64bit, NPM 10.9.4, Node 22.21.1 js-controller 7.0.7

                                    Q 1 Reply Last reply
                                    0
                                    • Q Offline
                                      Q Offline
                                      Qlink
                                      wrote on last edited by
                                      #258

                                      hmm das klingt so als ob die pm2 installation nicht korrekt durchgelaufen wäre ...
                                      kannst du den pm2 befehl manuell in der cli ausführen, oder geht das auch nicht ?
                                      Bei mir funktioniert das problemlos ...
                                      e794b818-3d39-48ba-9fb4-cc9d06d89c12-image.png

                                      Beste Grüße

                                      surfer09S 1 Reply Last reply
                                      0
                                      • Q Qlink

                                        hmm das klingt so als ob die pm2 installation nicht korrekt durchgelaufen wäre ...
                                        kannst du den pm2 befehl manuell in der cli ausführen, oder geht das auch nicht ?
                                        Bei mir funktioniert das problemlos ...
                                        e794b818-3d39-48ba-9fb4-cc9d06d89c12-image.png

                                        Beste Grüße

                                        surfer09S Offline
                                        surfer09S Offline
                                        surfer09
                                        wrote on last edited by
                                        #259

                                        @Qlink Das hatte ich auch bereits versucht, funktioniert aber auch nicht.

                                        pm2.jpg

                                        IO-Broker Master/Slave auf Windows 11 64bit, NPM 10.9.4, Node 22.21.1 js-controller 7.0.7

                                        1 Reply Last reply
                                        0
                                        • Q Offline
                                          Q Offline
                                          Qlink
                                          wrote on last edited by
                                          #260

                                          Da hats wohl definitiv etwas mit der pm2 Installation.
                                          Möglicherweise mag pm2 mit Server 2019 nicht ...

                                          Bei mir läuft alles aktuell unter Server 2016.
                                          01c0922f-1e03-41db-91a6-93441b9d68b9-image.png
                                          In den nächsten Wochen, wenn mein neuer Server in Betrieb geht werde ich allerdings auf Server 2019 migrieren und kann dazu dann mehr sagen ...

                                          Beste Grüße

                                          surfer09S 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          531

                                          Online

                                          32.6k

                                          Users

                                          82.2k

                                          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