Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Sonos-HTTP-API Installation für Newbies, Dummies und mich

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

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

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

      hey,

      hat den irgendjemand eine Ahnung wie wir über http den Befehl für für Daumen runter bzw. hoch (dislike this song: thumbdown) absetzen können. Ich finde leider gar nichts dazu in der Sonos Api und Sonos reagiert nicht. Habe den ganzen Sonntag vergeblich recherchiert ;(

      http://192.168.1.253:5005/kueche/thumbsdown

      Danke!

      1 Reply Last reply Reply Quote 0
      • R
        rehmosch @skokarl last edited by

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

        Moin @BBTown,

        Workaround wäre, statt einem http, 4 http's abzusetzen.

        Ich muss das mal in Ruhe alles testen. Ansonsten müsste ja im Netz ein Issue zu finden sein.

        Nur so gehts bei mir jetzt zu 100%. Muss jedes Lautsprecherpaar (7x Stereo) seperat die /volume/20 setzen.

        Ist es möglich ein Skript zu bauen (volume_all_20) und dieses dann in einem neuen Script einzubauen.

        Danke

        S 1 Reply Last reply Reply Quote 0
        • S
          skokarl @rehmosch last edited by skokarl

          @rehmosch

          Ich machs jetzt so......ein Group Volume Regler, und einmal einzelne Regler.
          Der Group steuert alle einzeln, hier ein Blockly Script Beispiel.

          2.PNG

          Links, einer für alle, Blockly dazu unten

          1.PNG

          Über State hole ich mir im Nachgang die Daten der Lautsprecher, damit sehe ich das eingestellte als Kontrolle.

          BBTown 1 Reply Last reply Reply Quote 2
          • BBTown
            BBTown @skokarl last edited by BBTown

            @skokarl Klasse optisch umgesetzt 👍

            S 1 Reply Last reply Reply Quote 0
            • S
              skokarl @BBTown last edited by

              @BBTown
              Danke, ich hab mal die Material Widgets getestet.
              Machen echt Spaß.

              BBTown 1 Reply Last reply Reply Quote 0
              • BBTown
                BBTown @skokarl last edited by

                @skokarl magst Du das hier reinstellen (auch die Grafiken)?

                S 1 Reply Last reply Reply Quote 0
                • S
                  skokarl @BBTown last edited by

                  @BBTown
                  ja, moment.

                  1 Reply Last reply Reply Quote 0
                  • S
                    skokarl last edited by skokarl

                    also, das ist alles noch Beta !! ..... hab ich erst gestern gemacht.....
                    Die View sieht so aus,.... der jeweils spielende Sender wird grün unterstrichen.

                    1.PNG

                    view.txt
                    icons.zip

                    Senderwahl :

                    1.PNG

                    Die Sender kommen von Tunein

                    1 Reply Last reply Reply Quote 1
                    • S
                      skokarl last edited by

                      @BBTown

                      guck mal ob Du damit klar kommst, ansonsten, kannste alles haben, hab keine Geheimnisse.
                      Bin aber noch Anfänger, also hab Mitleid mit meinen Blockly Versuchen. 😁

                      BBTown 1 Reply Last reply Reply Quote 0
                      • BBTown
                        BBTown @skokarl last edited by BBTown

                        @skokarl passt ... du hast damit ja viel grundsätzlicher Arbeit bereits zur Verfügung gestellt 👍
                        vielen Dank !

                        1 Reply Last reply Reply Quote 0
                        • S
                          skokarl last edited by skokarl

                          Script für den aktuellen State.
                          Wenn state bei mir true wird, wird das Script ausgeführt.

                          Somit kriege ich den aktuellen Status der Boxen.
                          Gelesen wird die jeweilig eingestellte Lautstärke, und Station, Artist und Title vom Koordiantor.

                          Dieses Script ist von @Pepsi1183 und läuft super.

                          on({id: '0_userdata.0.Sonos.state', change: "ne"}, function (obj) {
                          
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;  
                            
                            if (getState("0_userdata.0.Sonos.state").val == true) 
                          
                             {
                          
                           
                                var tablet;
                                var kueche;
                                var wohnl;
                                var wohnr; 
                                 
                                  var test;
                          
                              try {
                          
                                    require("request")('http://192.168.178.56:5005/tablet/state/', function (error, response, result) 
                          
                                    {
                          
                          			  tablet =  JSON.parse(result);
                                        
                          			  setState("0_userdata.0.Sonos.lautstaerke_tablet", tablet.volume); 
                                        setState("0_userdata.0.Sonos.stationName", tablet.currentTrack.stationName);
                                        setState("0_userdata.0.Sonos.artist", tablet.currentTrack.artist);
                                        setState("0_userdata.0.Sonos.title", tablet.currentTrack.title);
                                        
                          
                                }).on("error", function (e) {console.error(e);});
                          
                              } catch (e) { console.error(e); }
                           
                            
                             try {
                          
                                    require("request")('http://192.168.178.56:5005/kueche/state/', function (error, response, result) 
                          
                                    {
                          
                          			  kueche =  JSON.parse(result);
                          
                          			                setState("0_userdata.0.Sonos.lautstaerke_kueche", kueche.volume);
                                                      
                          
                                }).on("error", function (e) {console.error(e);});
                          
                              } catch (e) { console.error(e); }
                           
                               
                               
                               try {
                          
                                    require("request")('http://192.168.178.56:5005/wohnl/state/', function (error, response, result) 
                          
                                    {
                          
                          			  wohnl =  JSON.parse(result);
                          
                          			                setState("0_userdata.0.Sonos.lautstaerke_wohnl", wohnl.volume);
                                                      
                          
                                }).on("error", function (e) {console.error(e);});
                          
                              } catch (e) { console.error(e); }
                            
                               
                               try {
                          
                                    require("request")('http://192.168.178.56:5005/wohnr/state/', function (error, response, result) 
                          
                                    {
                          
                          			  wohnr =  JSON.parse(result);
                          
                          			                setState("0_userdata.0.Sonos.lautstaerke_wohnr", wohnr.volume);
                                                      
                          
                                }).on("error", function (e) {console.error(e);});
                          
                              } catch (e) { console.error(e); }
                            
                                    
                               setState("0_userdata.0.Sonos.state", false);             
                          
                             }
                          
                            
                          });
                          

                          update: Script aktualisiert.

                          1 Reply Last reply Reply Quote 1
                          • S
                            skokarl last edited by

                            @rehmosch

                            Wir wollen aber dann schon später Dein Ergebnis sehen .... 😬

                            1 Reply Last reply Reply Quote 1
                            • S
                              skokarl last edited by

                              @Pepsi1183

                              Hi Pepsi, nochmal Danke für das Script.

                              Das Script läuft bei mir immer wenn state true ist, das passiert bei einer Veränderung, z.B. Lautstärke oder Sender.
                              Blöd ist, dass ich einen Titelwechsel ( nächste Lied ) beim Radiosender nicht mitbekomme, somit wird nur der erste Liedtitel richtig angezeigt.
                              Hast Du eine Idee dazu ?
                              Danke, Gruß Bernd

                              BBTown Pepsi1183 2 Replies Last reply Reply Quote 0
                              • BBTown
                                BBTown @skokarl last edited by

                                @skokarl ich bin ja nach wie vor ein Fan davon Sonos über die Kombination "Sonos-Adapter" + "Sonos http-Api" zu betreiben. 😎

                                Über den Adapter bekommst Du die ganzen States die es (mir) in vielen Situationen leichter machen auf Veränderungen zu reagieren bzw. diese darzustellen.

                                S 2 Replies Last reply Reply Quote 0
                                • S
                                  skokarl @BBTown last edited by

                                  @BBTown
                                  ich war so froh, dass ich ihn los war ..... 😬
                                  Vielleicht aktiviere ich ihn aber genau deshalb doch nochmal.

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    skokarl @BBTown last edited by

                                    @BBTown

                                    sag mal, holst Du eigentlich zur Laufzeit auch irgendwo die Cover her ?

                                    BBTown 1 Reply Last reply Reply Quote 0
                                    • BBTown
                                      BBTown @skokarl last edited by BBTown

                                      @skokarl nein, da mich am meisten die Sprachsteuerung und die automatische Raumsteuerung (bei Licht an, Musik an) interessiert. Ich habe keine Visualisierung für Sonos ausser die originalen Apps

                                      1 Reply Last reply Reply Quote 0
                                      • Pepsi1183
                                        Pepsi1183 @skokarl last edited by

                                        @skokarl: generell würde ich sagen mach ein Skript um jede minuten den State auf false zu setzen...sollte für Titelinformationen reichen...was anderes macht der Sonos Adapter im endeffekt auch nicht (Polling).

                                        Wobei ich, wie BBTown auch, wieder den Sonos Adapter aktiviert habe um informationen abzurufen.
                                        (unter anderem das aktuelle Cover für mein Webinterface)

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          skokarl last edited by

                                          Ja, ich mach das jetzt auch.

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

                                            @skokarl Danke nochmals für deinen Tipp zu diesem Thread.

                                            Läuft mittlerweile so weit so gut, nur mit TTS habe ich Probleme. Ich verwende keine Alexa/Siri & Co und habe es auch nicht vor. Hans/Marlene von AWS-Polly habe ich aktiviert und es funktioniert grundsätzlich einwandfrei. Jetzt spricht Hans/Marlene teilweise sehr rasch und ich suchte nach einer Möglichkeit die Sprachgeschwindigkeit zu steuern oder bewußr Pausen zu setzen und stieß auf diese Seite: https://docs.aws.amazon.com/de_de/polly/latest/dg/supportedtags.html#prosody-tag
                                            Wirklich arg, was man damit alles machen kann, sogar Atemgeräusche hinzufügen, aber ich muss es ja nicht übertreiben 😊

                                            Wo liegt mein Problem?
                                            Mit dem SayIt-Adapter funktioniert Folgendes einwandfrei, Ausgabe über den Browser eines VIS-Tablets.

                                            Jeden Morgen wenn ich aufwache, <prosody rate="slow">spreche ich sehr langsam bis ich meinen ersten Cafe trinke. </prosody>
                                            

                                            (ab „spreche …..“ wird die Sprache deutlich langsamer)

                                            Mit der installierten Sonos-HTTP-API über den Browser (Firefox) funktioniert es nicht. Der Browser kann nicht mit den <> Zeichen umgehen.
                                            Aus der EIngabe:

                                            http://192.168.0.96:5005/Wohnzimmer/say/Einen wunderschönen Abend! <prosody rate="slow"> Es ist jetzt Zeit mit der Zeit zu üben.</prosody>/Hans/30
                                            

                                            wird

                                            http://192.168.0.96:5005/Wohnzimmer/say/Einen%20wundersch%C3%B6nen%20Abend!%20%3Cprosody%20rate=%22slow%22%3E%20Es%20ist%20jetzt%20Zeit%20mit%20der%20Zeit%20zu%20%C3%BCben.%3C/prosody%3E/Hans/30
                                            

                                            und es kommt gar nix mehr aus den Sonos.

                                            Leider auch nicht mit einem Blockly in verschiedenen Versionen, das Ergebnis bleibt das Selbe.

                                            Der Ursprung meines Problems liegt an der Ansage von Tag & Uhrzeit, direkt hintereinander ist die Uhrzeit kaum verständlich. Verwende ich Punkt und Beistrich als Abstand, spricht Hans/Marlene diese auch wörtlich aus, da sie keinen Satz erkennen.

                                            Hat Jemand einen Tipp für mich?
                                            LG, mxa

                                            S 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            655
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            sonos
                                            50
                                            438
                                            95696
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo