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.1k

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

  • 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 124.9k 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.
  • L Offline
    L Offline
    LJSven
    wrote on last edited by
    #201

    Okay, das bedeutet, dass der Name des presets "Klingel" heißt und die MP3 mit dem Nanen "horch.mp3" in den definierten Räumen aufgerufen wird, korrekt?

    Bei Presets ist aber das Problem, daß der Ursprungszustand nicht wieder hergestellt wird, oder?

    Würdest du sagen, daß "clippreset" schneller ist als "clipall"?

    D 1 Reply Last reply
    0
    • L LJSven

      Okay, das bedeutet, dass der Name des presets "Klingel" heißt und die MP3 mit dem Nanen "horch.mp3" in den definierten Räumen aufgerufen wird, korrekt?

      Bei Presets ist aber das Problem, daß der Ursprungszustand nicht wieder hergestellt wird, oder?

      Würdest du sagen, daß "clippreset" schneller ist als "clipall"?

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

      Genau, der Name des Presets kommt vom Namen der json-Datei.
      Bei mir zumindest wurde bei "clippreset" der Basiszustand restauriert.

      Ohne jetzt ne Stoppuhr verwendet zu haben, nein, clippreset ist NICHT schneller.

      L 1 Reply Last reply
      0
      • D dwm

        Genau, der Name des Presets kommt vom Namen der json-Datei.
        Bei mir zumindest wurde bei "clippreset" der Basiszustand restauriert.

        Ohne jetzt ne Stoppuhr verwendet zu haben, nein, clippreset ist NICHT schneller.

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

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

        Genau, der Name des Presets kommt vom Namen der json-Datei.
        Bei mir zumindest wurde bei "clippreset" der Basiszustand restauriert.

        Ohne jetzt ne Stoppuhr verwendet zu haben, nein, clippreset ist NICHT schneller.

        Kehrt es in den Basisursprung wieder her, weil du es so programmiert hast oder macht er das von der HTTP-API aus? Wo siehst du den Vorteil bei "clippreset" anstelle von "clipall"?

        D 1 Reply Last reply
        0
        • L LJSven

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

          Genau, der Name des Presets kommt vom Namen der json-Datei.
          Bei mir zumindest wurde bei "clippreset" der Basiszustand restauriert.

          Ohne jetzt ne Stoppuhr verwendet zu haben, nein, clippreset ist NICHT schneller.

          Kehrt es in den Basisursprung wieder her, weil du es so programmiert hast oder macht er das von der HTTP-API aus? Wo siehst du den Vorteil bei "clippreset" anstelle von "clipall"?

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

          Die Restauration macht er von der HTTP-API aus, bei meinem Script sind die Presets noch nicht eingebaut. Ich hab vorhin einfach nur den API Aufruf abgesetzt ...

          Der Vorteil von clippreset: Du steuerst halt nicht ALLE an ...

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

          Ich habe da 2 Szenarien -> zwischen 08 Uhr - 21 Uhr soll der Sound auf allen Lautsprechern ausgegeben werden, sonst nur auf 2 von 3 Lautsprechern.

          ... sind das halt einfach zwei verschiedene Presets, die Du je nach Uhrzeit ansteuerst.

          1 Reply Last reply
          0
          • D dwm

            Ich hab übrigens mein Script für die Sonos API noch ein bisschen aufgebohrt...
            https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPI

            Version 0.9.1

            • Setzen der TransportURI
            • TV Mode eingeführt (nur SPDIF an der Playbar), pause und pauseall workaround.
            • groupVolume (also Gruppenlautstärke) wird unterstützt.
              Version 0.9.5
              playlists unterstützt
              favorites haben verändertes Verhalten (reset des action Datenpunkts)
              Gruppen unterstützt (setzen des Coordinators, Coordinator List)

            @maloross ... im Prinzip sollte die Geschichte mit dem TV-Mode jetzt einigermassen klappen, zumindest als Workaround :)

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

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

            Ich hab übrigens mein Script für die Sonos API noch ein bisschen aufgebohrt...
            https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPI

            Version 0.9.1

            • Setzen der TransportURI
            • TV Mode eingeführt (nur SPDIF an der Playbar), pause und pauseall workaround.
            • groupVolume (also Gruppenlautstärke) wird unterstützt.
              Version 0.9.5
              playlists unterstützt
              favorites haben verändertes Verhalten (reset des action Datenpunkts)
              Gruppen unterstützt (setzen des Coordinators, Coordinator List)

            @maloross ... im Prinzip sollte die Geschichte mit dem TV-Mode jetzt einigermassen klappen, zumindest als Workaround :)

            Ich wollte mir gerade mal dein Script anschauen / testen. Was mache ich falsch?

            
            javascript.0	2020-01-29 14:58:09.352	error	(6336) at Script.runInContext (vm.js:133:20)
            javascript.0	2020-01-29 14:58:09.352	error	(6336) at script.js.common.SonosApi.SonosAPI:926:1
            javascript.0	2020-01-29 14:58:09.351	error	(6336) at requestSonosZones (script.js.common.SonosApi.SonosAPI:806:5)
            javascript.0	2020-01-29 14:58:09.351	error	(6336) at requestSonosAPI (script.js.common.SonosApi.SonosAPI:62:5)
            javascript.0	2020-01-29 14:58:09.350	error	(6336) ReferenceError: dwmlog is not defined
            javascript.0	2020-01-29 14:58:09.350	error	(6336) ^
            javascript.0	2020-01-29 14:58:09.350	error	(6336) dwmlog("requestSonosAPI URL: "+url,3);
            javascript.0	2020-01-29 14:58:09.349	error	(6336) script.js.common.SonosApi.SonosAPI: script.js.common.SonosApi.SonosAPI:62
            
            1 Reply Last reply
            0
            • D Offline
              D Offline
              dwm
              wrote on last edited by
              #206

              Du hast die log Funktion nicht importiert.

              "Eine weitere Voraussetzung ist das Vorhandensein der ebenfalls in diesem Repository zu findenden logging Funktion: https://github.com/dwm66/iobroker-scripts/tree/master/debug-log"

              Du musst die "dwmlog" Funktion entweder unter "global" speichern, oder Du kopierst die dwmlog Funktion noch mit in das Script rein:

              function dwmlog( message, level, channel) {
                  if (typeof channel === 'undefined') {
                      channel = debugchannel;
                  }
                  if ( typeof level === 'undefined')
                  {
                      level = debuglevel;
                  }
                  if ( debuglevel >= level ) {
                      log (message, channel );
                  }
              }
              
              L 1 Reply Last reply
              0
              • D dwm

                Du hast die log Funktion nicht importiert.

                "Eine weitere Voraussetzung ist das Vorhandensein der ebenfalls in diesem Repository zu findenden logging Funktion: https://github.com/dwm66/iobroker-scripts/tree/master/debug-log"

                Du musst die "dwmlog" Funktion entweder unter "global" speichern, oder Du kopierst die dwmlog Funktion noch mit in das Script rein:

                function dwmlog( message, level, channel) {
                    if (typeof channel === 'undefined') {
                        channel = debugchannel;
                    }
                    if ( typeof level === 'undefined')
                    {
                        level = debuglevel;
                    }
                    if ( debuglevel >= level ) {
                        log (message, channel );
                    }
                }
                
                L Offline
                L Offline
                LJSven
                wrote on last edited by
                #207

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

                Du hast die log Funktion nicht importiert.

                "Eine weitere Voraussetzung ist das Vorhandensein der ebenfalls in diesem Repository zu findenden logging Funktion: https://github.com/dwm66/iobroker-scripts/tree/master/debug-log"

                Du musst die "dwmlog" Funktion entweder unter "global" speichern, oder Du kopierst die dwmlog Funktion noch mit in das Script rein:

                Okay, mein Fehler! States sind angelegt - allerdings bekomme ich keine "state -> current Tracks"-Updates? Muss ich da was triggern?
                Kann ich im Log die "requestSonosAPI URL" abschalten?

                D 1 Reply Last reply
                0
                • L LJSven

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

                  Du hast die log Funktion nicht importiert.

                  "Eine weitere Voraussetzung ist das Vorhandensein der ebenfalls in diesem Repository zu findenden logging Funktion: https://github.com/dwm66/iobroker-scripts/tree/master/debug-log"

                  Du musst die "dwmlog" Funktion entweder unter "global" speichern, oder Du kopierst die dwmlog Funktion noch mit in das Script rein:

                  Okay, mein Fehler! States sind angelegt - allerdings bekomme ich keine "state -> current Tracks"-Updates? Muss ich da was triggern?
                  Kann ich im Log die "requestSonosAPI URL" abschalten?

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

                  Funktioniert der webhook, sprich kann die SonosAPI an das Script Daten senden?

                  Mein ioBroker Rechner ist 10.22.1.40, wenn ich aufrufe:

                  http://10.22.1.40:1884/info
                  

                  kommt zurück

                  {
                      "code": 200,
                      "data": {
                          "version": "0.9.5",
                          "sonosAPI": "https://10.22.1.40:5006",
                          "SSMLMode": "Polly"
                      }
                  }
                  

                  Sollte so ähnlich auch bei Dir aussehen.
                  In der Sonos API MUSS auch der webhook mit dieser URL konfiguriert sein! Das ist quasi der Rückkanal. Damit kriegt das Script auch mit, wenn Du z.B. mit dem regulären Sonos-Controller was änderst.

                  Du solltest dann im log ab und zu sowas sehen:

                  2020-01-29 15:51:23.400 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                  2020-01-29 15:51:23.401 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"transport-state","data":{"uuid":"RINCON_000E588A9E5601400","coordinator":"RINCON_000E588A9E5601400","roomName":"Büro","state":{"volume":10,"mute":false,"equalizer":{"bass":0,"treble":0,"loudness":true},"currentTrack":{"artist":"The Monkees","title":"Daydream Believer","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":179,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","type":"track","stationName":"","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"nextTrack":{"artist":"ABBA","title":"Knowing Me, Knowing You","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":241,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"trackNo":9,"elapsedTime":0,"elapsedTimeFormatted":"00:00:00","playbackState":"PLAYING","playMode":{"repeat":"none","shuffle":true,"crossfade":false}},"groupState":{"volume":10,"mute":false},"avTransportUri":"x-rincon-queue:RINCON_000E588A9E5601400#0","avTransportUriMetadata":""}}
                  

                  wenn sich der Titel ändert, oder wenn Du z.B. die Lautstärke änderst:

                  2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                  2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"volume-change","data":{"uuid":"RINCON_000E588A9E5601400","previousVolume":15,"newVolume":15,"roomName":"Büro"}}
                  

                  die Debugausgaben kannst Du abschalten, ja ... einfach oben im script ändern:

                  debuglevel = 1;
                  

                  ... bei level 4 wird das recht geschwätzig ... genau dafür hab ich ja meine eigene log Funktion :)
                  dann verschwindet allerdings auch das debugging der Webhooks.

                  L 1 Reply Last reply
                  0
                  • D dwm

                    Funktioniert der webhook, sprich kann die SonosAPI an das Script Daten senden?

                    Mein ioBroker Rechner ist 10.22.1.40, wenn ich aufrufe:

                    http://10.22.1.40:1884/info
                    

                    kommt zurück

                    {
                        "code": 200,
                        "data": {
                            "version": "0.9.5",
                            "sonosAPI": "https://10.22.1.40:5006",
                            "SSMLMode": "Polly"
                        }
                    }
                    

                    Sollte so ähnlich auch bei Dir aussehen.
                    In der Sonos API MUSS auch der webhook mit dieser URL konfiguriert sein! Das ist quasi der Rückkanal. Damit kriegt das Script auch mit, wenn Du z.B. mit dem regulären Sonos-Controller was änderst.

                    Du solltest dann im log ab und zu sowas sehen:

                    2020-01-29 15:51:23.400 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                    2020-01-29 15:51:23.401 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"transport-state","data":{"uuid":"RINCON_000E588A9E5601400","coordinator":"RINCON_000E588A9E5601400","roomName":"Büro","state":{"volume":10,"mute":false,"equalizer":{"bass":0,"treble":0,"loudness":true},"currentTrack":{"artist":"The Monkees","title":"Daydream Believer","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":179,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","type":"track","stationName":"","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"nextTrack":{"artist":"ABBA","title":"Knowing Me, Knowing You","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":241,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"trackNo":9,"elapsedTime":0,"elapsedTimeFormatted":"00:00:00","playbackState":"PLAYING","playMode":{"repeat":"none","shuffle":true,"crossfade":false}},"groupState":{"volume":10,"mute":false},"avTransportUri":"x-rincon-queue:RINCON_000E588A9E5601400#0","avTransportUriMetadata":""}}
                    

                    wenn sich der Titel ändert, oder wenn Du z.B. die Lautstärke änderst:

                    2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                    2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"volume-change","data":{"uuid":"RINCON_000E588A9E5601400","previousVolume":15,"newVolume":15,"roomName":"Büro"}}
                    

                    die Debugausgaben kannst Du abschalten, ja ... einfach oben im script ändern:

                    debuglevel = 1;
                    

                    ... bei level 4 wird das recht geschwätzig ... genau dafür hab ich ja meine eigene log Funktion :)
                    dann verschwindet allerdings auch das debugging der Webhooks.

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

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

                    Funktioniert der webhook, sprich kann die SonosAPI an das Script Daten senden?

                    Mein ioBroker Rechner ist 10.22.1.40, wenn ich aufrufe:

                    http://10.22.1.40:1884/info
                    

                    kommt zurück

                    {
                        "code": 200,
                        "data": {
                            "version": "0.9.5",
                            "sonosAPI": "https://10.22.1.40:5006",
                            "SSMLMode": "Polly"
                        }
                    }
                    

                    Sollte so ähnlich auch bei Dir aussehen.
                    In der Sonos API MUSS auch der webhook mit dieser URL konfiguriert sein! Das ist quasi der Rückkanal. Damit kriegt das Script auch mit, wenn Du z.B. mit dem regulären Sonos-Controller was änderst.

                    Du solltest dann im log ab und zu sowas sehen:

                    2020-01-29 15:51:23.400 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                    2020-01-29 15:51:23.401 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"transport-state","data":{"uuid":"RINCON_000E588A9E5601400","coordinator":"RINCON_000E588A9E5601400","roomName":"Büro","state":{"volume":10,"mute":false,"equalizer":{"bass":0,"treble":0,"loudness":true},"currentTrack":{"artist":"The Monkees","title":"Daydream Believer","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":179,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","type":"track","stationName":"","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"nextTrack":{"artist":"ABBA","title":"Knowing Me, Knowing You","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":241,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"trackNo":9,"elapsedTime":0,"elapsedTimeFormatted":"00:00:00","playbackState":"PLAYING","playMode":{"repeat":"none","shuffle":true,"crossfade":false}},"groupState":{"volume":10,"mute":false},"avTransportUri":"x-rincon-queue:RINCON_000E588A9E5601400#0","avTransportUriMetadata":""}}
                    

                    wenn sich der Titel ändert, oder wenn Du z.B. die Lautstärke änderst:

                    2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                    2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"volume-change","data":{"uuid":"RINCON_000E588A9E5601400","previousVolume":15,"newVolume":15,"roomName":"Büro"}}
                    

                    die Debugausgaben kannst Du abschalten, ja ... einfach oben im script ändern:

                    debuglevel = 1;
                    

                    ... bei level 4 wird das recht geschwätzig ... genau dafür hab ich ja meine eigene log Funktion :)
                    dann verschwindet allerdings auch das debugging der Webhooks.

                    KLASSE - läuft! Ich hatte den Webhook falsch eingetragen.

                    D 1 Reply Last reply
                    0
                    • L LJSven

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

                      Funktioniert der webhook, sprich kann die SonosAPI an das Script Daten senden?

                      Mein ioBroker Rechner ist 10.22.1.40, wenn ich aufrufe:

                      http://10.22.1.40:1884/info
                      

                      kommt zurück

                      {
                          "code": 200,
                          "data": {
                              "version": "0.9.5",
                              "sonosAPI": "https://10.22.1.40:5006",
                              "SSMLMode": "Polly"
                          }
                      }
                      

                      Sollte so ähnlich auch bei Dir aussehen.
                      In der Sonos API MUSS auch der webhook mit dieser URL konfiguriert sein! Das ist quasi der Rückkanal. Damit kriegt das Script auch mit, wenn Du z.B. mit dem regulären Sonos-Controller was änderst.

                      Du solltest dann im log ab und zu sowas sehen:

                      2020-01-29 15:51:23.400 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                      2020-01-29 15:51:23.401 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"transport-state","data":{"uuid":"RINCON_000E588A9E5601400","coordinator":"RINCON_000E588A9E5601400","roomName":"Büro","state":{"volume":10,"mute":false,"equalizer":{"bass":0,"treble":0,"loudness":true},"currentTrack":{"artist":"The Monkees","title":"Daydream Believer","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":179,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB003YN355M%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","type":"track","stationName":"","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB003YN355M%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"nextTrack":{"artist":"ABBA","title":"Knowing Me, Knowing You","album":"Oldies für die Arbeit","albumArtUri":"/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3","duration":241,"uri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","trackUri":"x-sonosapi-hls-static:catalog%2ftracks%2fB001SQ1IC4%2f%3fplaylistAsin%3dB07QPPMS9T%26playlistType%3dprimePlaylist?sid=201&flags=0&sn=3","absoluteAlbumArtUri":"http://10.22.1.25:1400/getaa?s=1&u=x-sonosapi-hls-static%3acatalog%252ftracks%252fB001SQ1IC4%252f%253fplaylistAsin%253dB07QPPMS9T%2526playlistType%253dprimePlaylist%3fsid%3d201%26flags%3d0%26sn%3d3"},"trackNo":9,"elapsedTime":0,"elapsedTimeFormatted":"00:00:00","playbackState":"PLAYING","playMode":{"repeat":"none","shuffle":true,"crossfade":false}},"groupState":{"volume":10,"mute":false},"avTransportUri":"x-rincon-queue:RINCON_000E588A9E5601400#0","avTransportUriMetadata":""}}
                      

                      wenn sich der Titel ändert, oder wenn Du z.B. die Lautstärke änderst:

                      2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Received Post
                      2020-01-29 15:56:04.223 - info: javascript.0 (21352) script.js.Steuerung.sonosapi: Result: {"type":"volume-change","data":{"uuid":"RINCON_000E588A9E5601400","previousVolume":15,"newVolume":15,"roomName":"Büro"}}
                      

                      die Debugausgaben kannst Du abschalten, ja ... einfach oben im script ändern:

                      debuglevel = 1;
                      

                      ... bei level 4 wird das recht geschwätzig ... genau dafür hab ich ja meine eigene log Funktion :)
                      dann verschwindet allerdings auch das debugging der Webhooks.

                      KLASSE - läuft! Ich hatte den Webhook falsch eingetragen.

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

                      :+1: :+1:

                      1 Reply Last reply
                      0
                      • L LJSven

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

                        @LJSven
                        Ich muss mir das heute abend nochmal selbst angucken, glaube ich nutze die settings doch gar nicht für spotify....
                        Bin im Moment nur am Handy

                        Du kannst doch Spotify schon in der Sonos App einbinden, hast Du das gemacht ?
                        Ja, da ist es drin.

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

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

                        Es scheint daran zu liegen, daß die "settings.json" nicht angelegt ist - traue mich da nicht so richtig dran - will eigentlich nur Spotify integrieren.

                        Also, ich hab in den settings nichts von Spotify, hab mich geirrt, das war nur für voicerss.
                        Spotify muss fuktionieren wenn Du es in der Sonos App als Dienst laufen hast.

                        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
                        • L Offline
                          L Offline
                          LJSven
                          wrote on last edited by LJSven
                          #212

                          @dwm Habe jetzt dein Script am Laufen - alles cool soweit, allerdings ist mir heute aufgefallen, daß er wenn ich einen CLIP abspiele, nicht zurück in den Ursprungszustand zurück kehrt. Hast du eine Idee, woran das liegen kann? Ich habe mal den Raspberry, wo die Sonos API drauf läuft neugestartet, dann geht es wieder.

                          Kannst du das auch feststellen?

                          EDIT: Es scheint daran zu legen, wenn man den Clip öfter abspielt, bevor er zu Ende ist. Kannst ich denke ein DP der sagt, daß es ein CLIP ist auf TRUE oder FALSE wäre hilfrich.

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

                            Das stimmt schon, clip oder say, wenn schon sowas läuft, geht eher suboptimal. Sprich, die API merkt sich da halt einen "Level", den sie restaurieren kann, wenn man das quasi in mehreren Stufen macht, gehts schief.

                            Ein Datenpunkt, der anzeigt ob da grad schon was läuft ... hm. Mal grübeln wie man das am besten machen kann.

                            In Bezug auf Klingel ... "Sturmklingeln" ... DAS Problem kenn ich :)

                            Hab das damit gelöst, dass ein Klingeln eine 10s Totzeit auf dem Klingelknopf auslöst, und nur ein Telegram schickt "Sturmklingeln".
                            Macht auch Spaß mit den Lieferanten, wenn die meinen sie könnten da was ausrichten :)

                            L 1 Reply Last reply
                            0
                            • D dwm

                              Das stimmt schon, clip oder say, wenn schon sowas läuft, geht eher suboptimal. Sprich, die API merkt sich da halt einen "Level", den sie restaurieren kann, wenn man das quasi in mehreren Stufen macht, gehts schief.

                              Ein Datenpunkt, der anzeigt ob da grad schon was läuft ... hm. Mal grübeln wie man das am besten machen kann.

                              In Bezug auf Klingel ... "Sturmklingeln" ... DAS Problem kenn ich :)

                              Hab das damit gelöst, dass ein Klingeln eine 10s Totzeit auf dem Klingelknopf auslöst, und nur ein Telegram schickt "Sturmklingeln".
                              Macht auch Spaß mit den Lieferanten, wenn die meinen sie könnten da was ausrichten :)

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

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

                              Hab das damit gelöst, dass ein Klingeln eine 10s Totzeit auf dem Klingelknopf auslöst, und nur ein Telegram schickt "Sturmklingeln".
                              Macht auch Spaß mit den Lieferanten, wenn die meinen sie könnten da was ausrichten

                              Das kenne ich - bei mir ist es eher die Tochter, die enttäuscht ist, wenn es nicht klingelt ;-)

                              Mit welchem Button realisierst du die VIS?

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

                                Du meinst die Hardware vom Klingelknopf? Weil der hat keine VIS :) , der spielt blos "horch was kommt ..."
                                Der Batterie-Klingeltaster von Homematic ...

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

                                  NEIN ;-) ich meine die Steuerung vom Sonos

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

                                    :)
                                    Da benutz ich im Prinzip Standard Widgets. Meine Visualisierung basiert auf dem Material CSS vom Uhula, da gibts dann für jede Zone eine "Card" mit Icon, dem "niceInfoHTML", Buttons für pause, play, next, prev, einem Slider für die Lautstärke und noch ein dropdown für die Favorites.
                                    Wenn man das noch mit Bedingungen für die Sichtbarkeit koppelt und paar Farben dazubaut, wird das recht hübsch :)

                                    1c00b22f-3bf8-409c-ac2b-20f670c3a4e6-image.png

                                    Kann ich gerne mal als Vorlage hochladen, muss man halt anpassen.

                                    L M 2 Replies Last reply
                                    0
                                    • L Offline
                                      L Offline
                                      LJSven
                                      wrote on last edited by
                                      #218

                                      Meiner Freundin ist die Verzögerung zwischen Klingelknopf drücken und Ausführung zu lang via

                                      http://api:port/room/clip/sample.mp3/35

                                      Gibt es eine schnellere Variante?

                                      1 Reply Last reply
                                      1
                                      • D dwm

                                        :)
                                        Da benutz ich im Prinzip Standard Widgets. Meine Visualisierung basiert auf dem Material CSS vom Uhula, da gibts dann für jede Zone eine "Card" mit Icon, dem "niceInfoHTML", Buttons für pause, play, next, prev, einem Slider für die Lautstärke und noch ein dropdown für die Favorites.
                                        Wenn man das noch mit Bedingungen für die Sichtbarkeit koppelt und paar Farben dazubaut, wird das recht hübsch :)

                                        1c00b22f-3bf8-409c-ac2b-20f670c3a4e6-image.png

                                        Kann ich gerne mal als Vorlage hochladen, muss man halt anpassen.

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

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

                                        ann ich gerne mal als Vorlage hochladen, muss man halt anpassen.

                                        Magst du das machen?

                                        1 Reply Last reply
                                        0
                                        • D dwm

                                          :)
                                          Da benutz ich im Prinzip Standard Widgets. Meine Visualisierung basiert auf dem Material CSS vom Uhula, da gibts dann für jede Zone eine "Card" mit Icon, dem "niceInfoHTML", Buttons für pause, play, next, prev, einem Slider für die Lautstärke und noch ein dropdown für die Favorites.
                                          Wenn man das noch mit Bedingungen für die Sichtbarkeit koppelt und paar Farben dazubaut, wird das recht hübsch :)

                                          1c00b22f-3bf8-409c-ac2b-20f670c3a4e6-image.png

                                          Kann ich gerne mal als Vorlage hochladen, muss man halt anpassen.

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

                                          @dwm Kannst Du es bitte mal hochladen?

                                          und noch was anderes: Da ich in meiner Vis recht umfangreich den Sonos - Adapter nutze wollte ich diesen behalten. Ich benötige jedoch jetzt die mp3 Ausgabe über iobroker. Kann ich den Sonos Server parallel zum alten Adapter nutzen oder gibt es dann Probleme welche bekannt sind?

                                          Vielen Dank!

                                          Vielen Dank!

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

                                          S 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

                                          779

                                          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