Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Sonos Favoriten auslesen und über Dialog auswählen

    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 Favoriten auslesen und über Dialog auswählen

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

      @pix:

      @stephan:

      Hall darf man mal fragen wo ich die Sender Logos herbekomme.

      Gruss Stephan `
      Klar darf man fragen! Hier gibt's sogar eine Antwort ->> http://forum.iobroker.net/viewtopic.php … ogo#p79044

      Gruß

      Pix

      EDIT: :lol: Warst es nicht auch du, der die Frage im verlinkten Thread gestellt hat? :roll: `

      1 Reply Last reply Reply Quote 0
      • cash
        cash Most Active last edited by

        Sieht wirklich top aus. Das einzige was nun noch fehlt wäre die Möglichkeit von Random Play für die Favoriten. :mrgreen:

        1 Reply Last reply Reply Quote 0
        • M
          Mogli96 last edited by

          Hallo pix,

          ich bin neu hier, würde aber auch gerne meine Sonos in VIS einbinden allerdings finde ich diese Widgets die du verwendest nicht kannst Du mir sagen wie ich diese bekomme.

          Danke und Gruß

          1 Reply Last reply Reply Quote 0
          • D
            dominik.braun82 last edited by

            Hallo zusammen.

            Habe mich auch lange eingelesen, aber ich komme nicht weiter.

            Hat jemand einen Tip für mich?

            Was ich getan habe:

            javascript hinzugefügt. Dann bei scripte den Code eingefügt und gestartet-

            //GetSonosFavorites
            var FavoritesObj  = $('channel[state.id=*.favorites_list]');
            function GetSonosFavorites() {
                FavoritesObj.each(function (id, i){
                    var Favorites = String(getState(id).val);
                    var Favorites_list = [];
                    var SonosDevice
                    var NewFavorites = "";
            
                    SonosDevice = (id.split("."))[3];
            
                    Favorites_list = Favorites.split(",");
            
                    Favorites_list.forEach(function (FavoriteName){
                        var FavoriteNameTrimmed = (FavoriteName.trim()).replace(/\s+/g, '%20');
                        NewFavorites += "[" + FavoriteName +"](\"http://192.168.178.40:8082/vis/index.html?MyHome#view-sonos\")
            ";
                    });
            
                    createState('Sonos.' + SonosDevice + '_Favorites', "");
                    setState('Sonos.' + SonosDevice + '_Favorites', NewFavorites); 
                    log("Sonos Favoriten aktualisiert für " + SonosDevice);
                });
            }
            
            FavoritesObj.on(function() {
               GetSonosFavorites(); //Aktualisiert die Favoriten, wenn sie geändert werden.
            });
            

            als zweites script Dieses eingefügt und gestartet…

            Ich habe den Sonos Adapter installiert. Ich kann hier auch darauf zugreifen.

            Dann habe ich simple-api installiert.

            Hier die Einstellungen:

            Erweitere WEB Adapter: keins

            IP: PIv4 0.0.0.0 Alle IPs zulassen

            Port: 8087

            Laufen unter Anwender Admin

            Dann habe ich in meiner aktuellen View ein HTML eingefügt und folgenden Code ei "HTML" eingetragen

            Muss ich an den scripten noch Änderungen vornehmen?

            Ich sehe in der View nämlich nichts… 😞

            Kann denke ich nicht viel fehlen, oder?

            🙂

            Danke

            1 Reply Last reply Reply Quote 0
            • D
              dominik.braun82 last edited by

              kann mir jemand helfen?

              Soll ich weitere Infos zu Verfügung stellen?

              1 Reply Last reply Reply Quote 0
              • C
                Conquest last edited by

                @dominik.braun82:

                kann mir jemand helfen?

                Soll ich weitere Infos zu Verfügung stellen? `

                Hallo Dominik,

                also bei mir funktioniert es so.

                Ich hab diese beiden Scripte angelegt:

                createState('sonos.favTexte', '', {
                    type: 'string',
                    def: ''
                });
                
                function formatList(list) {
                    setState('sonos.favTexte', list.replace(/, /g,';'));
                }
                
                var favList = getState("sonos.0.root.192_168_178_23.favorites_list").val;
                formatList(favList);  // Script start
                
                // Änderung der Favoriten-Liste
                on("sonos.0.root.192_168_178_23.favorites_list", function(dp) {
                    formatList(dp.state.val);
                });
                
                //GetSonosFavorites
                var FavoritesObj  = $('channel[state.id=*.favorites_list]');
                function GetSonosFavorites() {
                    FavoritesObj.each(function (id, i){
                        var Favorites = String(getState(id).val);
                        var Favorites_list = [];
                        var SonosDevice;
                        var NewFavorites = "";
                
                        SonosDevice = (id.split("."))[3];
                
                        Favorites_list = Favorites.split(",");
                
                        Favorites_list.forEach(function (FavoriteName){
                            var FavoriteNameTrimmed = (FavoriteName.trim()).replace(/\s+/g, '%20');
                            // NewFavorites += "[" + FavoriteName +"](\"http://192.168.178.346:8082/vis/index.html?#Sonos\")
                ";
                            NewFavorites += "[" + FavoriteName +"](\"http://192.168.178.46:8082/vis/index.html?#Sonos\")";
                
                        });
                
                        createState('Sonos.' + SonosDevice + '_Favorites', "");
                        setState('Sonos.' + SonosDevice + '_Favorites', NewFavorites); 
                        log("Sonos Favoriten aktualisiert für " + SonosDevice);
                    });
                }
                
                FavoritesObj.on(function() {
                   GetSonosFavorites(); //Aktualisiert die Favoriten, wenn sie geändert werden.
                });
                

                Dann habe ich in einem Basic-Html Widget folgendes unter HTML eingetragen:

                Und im Bild siehst du noch mein Widget zur Auswahl der Favoriten mit Einstellungen.

                Hoffe ich konnte dir helfen bin auch noch Anfänger 😄

                LG Torsten
                470_screenshot-localhost-8082-2018.05.29-04-44-49.png

                1 Reply Last reply Reply Quote 0
                • D
                  dominik.braun82 last edited by

                  Hi.

                  Jetzt bin ich total verwirrt.

                  Erstmal Danke für die Antwort 🙂

                  Wo ist denn das HTML Widget? In den Screenshot sieht man ein Drop-Down Feld. Davon war hier noch keine Rede :roll:

                  Hab jetzt auch das Drop Down Feld eingefügt, aber die favorites_set ist bei mir auch leer obwohl ich Favoriten drin hab.

                  7511_2018-05-29_09h55_27.jpg

                  7511_2018-05-29_10h22_22.jpg

                  7511_2018-05-29_10h24_14.jpg

                  Kommst Du nicht zufällig aus dem Saarland :lol:

                  Wie ist das jetzt mit dem HTML Widet….. Wo ist das?

                  1 Reply Last reply Reply Quote 0
                  • C
                    Conquest last edited by

                    Nein komme leider nicht aus dem Saarland.

                    Das HTML-Widget befindet sich einfach irgendwo auf der View. Bei mir links unten das kleine weiße Quadrat.

                    Du hast die Einstellungen von mir einfach übernommen oder ist bei dir auch alles unter javascript.5 abgelegt ansonsten trag mal noch deine Javascript-Instanz bei Texte und Werte ein.

                    Werden den deine Favoriten überhaupt abgerufen also werden sie unter Objekte angezeigt?

                    LG Torsten

                    Gesendet von meinem MHA-L29 mit Tapatalk

                    1 Reply Last reply Reply Quote 0
                    • D
                      dominik.braun82 last edited by

                      Hi.

                      Also unter Objekte steht folgendes:

                      7511_2018-05-29_20h34_39.jpg

                      In Deinem Code waren auch 3 IP´s drin. (.46, .346 und .23)

                      Ich habe hier jeweils meine SONOS IP eingetragen .40

                      Ist das korrekt?

                      Habe auch jetzt {JavaScript.0.sonos.favTexte} und {JavaScript.0.sonos.favTexte} aber auch ohne Erfolg.

                      1 Reply Last reply Reply Quote 0
                      • D
                        dominik.braun82 last edited by

                        evtl. hilft Dir das noch weiter…

                        7511_2018-05-29_20h46_48.jpg

                        7511_2018-05-29_20h47_07.jpg

                        1 Reply Last reply Reply Quote 0
                        • D
                          dominik.braun82 last edited by

                          Habe jetzt die das Object ID der Dropdownloste geändert von favorites set zu favorites list da dort Daten drin waren. Darauf hin erscheint auch bei den Objekten bei favorites list undefined. Scheint also nicht am Sonos selbst zu hängen?

                          7511_2018-05-29_20h52_04.jpg

                          1 Reply Last reply Reply Quote 0
                          • D
                            dominik.braun82 last edited by

                            Hat geklappt…. 🙂

                            Habe alles nochmal neu angelegt. Schritt für Schritt.

                            Danke

                            1 Reply Last reply Reply Quote 0
                            • A
                              Alero last edited by Alero

                              Hi,

                              ich muss das Thema hier noich einmal aufgreifen.
                              Installiert : Sonos Apt. Simple api.
                              Über den Sonos Adapt. kann ich auch die webseite aufrufen.
                              Ich habe mir das Widget ein wenig umgebaut.
                              Bei den Fav. bleibe ich stecken. Hier koimme ich nicht weiter.
                              Habe beide Scripte als Javascrip eingerichtet Fav un text.
                              Bei Fav bekomme ich eine FM:
                              avascript.0 script.js.common.Sonos_Fav compile failed: at script.js.common.Sonos_Fav:17
                              FAV

                              //GetSonosFavorites
                              var FavoritesObj = $('channel[state.id=*.favorites_list]');
                              function GetSonosFavorites() {
                              FavoritesObj.each(function (id, i){
                              var Favorites = String(getState(id).val);
                              var Favorites_list = [];
                              var SonosDevice;
                              var NewFavorites = "";

                                  SonosDevice = (id.split("."))[3];
                              
                                  Favorites_list = Favorites.split(",");
                              
                                  Favorites_list.forEach(function (FavoriteName){
                                      var FavoriteNameTrimmed = (FavoriteName.trim()).replace(/\s+/g, '%20');
                                      // NewFavorites += "[" + FavoriteName +"](\"http://192.168.178.346:8082/vis/index.html?#Sonos\")
                              

                              ";
                              NewFavorites += "" + FavoriteName +"";

                                  });
                              
                                  createState('Sonos.' + SonosDevice + '_Favorites', "");
                                  setState('Sonos.' + SonosDevice + '_Favorites', NewFavorites); 
                                  log("Sonos Favoriten aktualisiert für " + SonosDevice);
                              });
                              

                              }

                              FavoritesObj.on(function() {
                              GetSonosFavorites(); //Aktualisiert die Favoriten, wenn sie geändert werden.
                              });


                              Text
                              createState('sonos.favTexte', '', {

                              type: 'string',
                              
                              def: ''
                              

                              });

                              function formatList(list) {

                              setState('sonos.favTexte', list.replace(/, /g,';'));
                              

                              }

                              var favList = getState("sonos.0.root.192_168_42_31.favorites_list").val;

                              formatList(favList); // Script start

                              // Änderung der Favoriten-Liste

                              on("sonos.0.root.192_168_42_31.favorites_list", function(dp) {

                              formatList(dp.state.val);
                              

                              });


                              Muss erst einmal den Fehler beheben.
                              es werden keine Fav angezeigt.
                              Hat jemand einen Idee?

                              Gruß
                              Alero

                              1 Reply Last reply Reply Quote 0
                              • M
                                michihorn @pix last edited by

                                @pix
                                Hallo Pix wo finde ich denn das Script?
                                Unbenannt.JPG
                                Gruß Michael

                                1 Reply Last reply Reply Quote 0
                                • M
                                  michihorn last edited by michihorn

                                  Hat sich schon erledigt, aber wie hast du das mit den Senderlogos hinbekommen?

                                  M 1 Reply Last reply Reply Quote 0
                                  • M
                                    michihorn @michihorn last edited by

                                    Ich antworte mir selbst 😉
                                    Bei Google einfach suchen:
                                    Unbenannt.JPG

                                    Das erste Suchergebnis ist dann von TunIn
                                    Unbenannt1.JPG
                                    Dann mit der rechten Maustaste auf das Logo klicken und "Bildadresse" kopieren

                                    1 Reply 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

                                    834
                                    Online

                                    31.9k
                                    Users

                                    80.2k
                                    Topics

                                    1.3m
                                    Posts

                                    17
                                    49
                                    12742
                                    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