Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Neues Plugin: Logitech Squeezebox - Anregungen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    De facto gibt es hier 2 Probleme:
    Das "?" beim init und das Verhindern vom Senden von Befehlen, wenn keine Player ID angegeben ist. Ich habe beides gefixt. Probier das bitte mal aus:
    https://github.com/onkelandy/plugins...box/squeezebox

    Wir könnten dann noch die structs aktualisieren und den PR mergen.. Den Struct für favourites count habe ich bereits eingepflegt.

    Kommentar


      Danke Onkelandy

      wird aber erst am Sonnabend.

      Kommentar


        Hallo Onkelandy

        es geht, danke

        Kommentar


          Hättest du noch interessante Vorlagen-Items für das Plugin?

          Kommentar


            Gibt mir mal noch eine Woche. Bin noch am Basteln. Auch in Hinblick auf das Quad in Smartvisu. Hoffe das es noch vor dem Urlaub wird

            Kommentar


              Hallo Onkelandy

              hab leider keine Zeit gehabt weiter zu basteln. Muss nach dem Urlaub werden
              Zuletzt geändert von stromie; 03.08.2019, 14:37.

              Kommentar


                Hallo Onkelandy

                hast du eine Ahnung wie ich folgenden String in ein Item spliten kann ?

                Got: ['favorites', 'items', '0', '25', 'title:Favoriten',
                'id:6e38ce6a.0', 'name:1 Mix Radio Trance', 'type:audio', 'isaudio:1', 'hasitems:0',
                'id:6e38ce6a.1','name:99Drei - Radio Mittweida 99.3 (Weltmusik)', 'type:audio', 'isaudio:1', 'hasitems:0',
                'id:6e38ce6a.2','name:ENERGY Sachsen 98.3 (Top 40/Pop)', 'type:audio', 'isaudio:1', 'hasitems:0',
                'id:6e38ce6a.3','name:Radio PSR 100.0 (Adult Contemporary)', 'type:audio', 'isaudio:1', 'hasitems:0',
                'id:6e38ce6a.4','name:MDR JUMP 89.8 (Adult Contemporary)', 'type:audio', 'isaudio:1', 'hasitems:0',
                'id:6e38ce6a.5','name:Name', 'isaudio:0', 'hasitems:1', 'count:6']

                das ist das Ergebnis auf die Anfrage der Favoriten.

                Interressant wäre eine Liste
                mit dem Inhalt der name:

                Grüße Stromie

                Kommentar


                  Das müsstest du wohl über eine Logik machen. Nach dem Motto:
                  Code:
                  neueliste = []
                  
                  for elem in liste:
                  
                        if elem.startswith('name:'):
                  
                           _, _, listentry = elem.partition(':')
                  
                           neueliste.append(listentry)
                  Man könnte sowas natürlich ins Plugin einbinden. Wie rufst du dann aber die Favoriten auf? Mit der ID schätze ich?

                  Kommentar


                    Danke
                    aktuell rufe ich die id:0 bis 5 auf. Da die komplette id nicht in der lms Oberfläche steht.

                    Kommentar


                      Zitat von Onkelandy Beitrag anzeigen
                      Das müsstest du wohl über eine Logik machen. Nach dem Motto:
                      Code:
                      neueliste = []
                      
                      for elem in liste:
                      
                      if elem.startswith('name:'):
                      
                      _, _, listentry = elem.partition(':')
                      
                      neueliste.append(listentry)
                      Man könnte sowas natürlich ins Plugin einbinden. Wie rufst du dann aber die Favoriten auf? Mit der ID schätze ich?
                      Das müsste gehen. Danke

                      Kommentar


                        Hab noch ein paar kleinere Sachen aktualisiert, wenn du noch testen willst stromie
                        Siehe github PR https://github.com/smarthomeNG/plugins/pull/326

                        Kommentar


                          Werde es am Wochenende testen

                          Kommentar


                            Hallo zusammen,

                            ich bin Neu in dem Thema hier und habe anhand der Codebeispiele erfolgreich das Squeezebox-Plugin inkl. Visu mit Playlistanwahl in mein SmarthomeNG 1.6.1 sowie smartVISU 2.9 einbinden können.
                            Die Steuerung funktioniert Problemlos und ich bin absolut begeistert. Auch hier möchte ich meinen Dank an die Entwickler zum Ausdruck bringen!!

                            Ich habe noch zwei kleine Probleme, für die ich leider keine Idee zur Abhilfe habe und ich hoffe Ihr könnt mir dabei helfen.

                            In meinen Logs finden sich folgende Einträge:
                            Code:
                            2020-02-06 13:10:53 ERROR plugins.squeezebox exception while parsing '['b8:27:eb:XX:XX:XX', 'mode']'
                            2020-02-06 13:10:53 ERROR plugins.squeezebox exception: list index out of range
                            2020-02-06 13:10:53 WARNING lib.item Item EG.Wohnzimmer.Musik.Play: value "stop" does not match type bool. Via LMS 192.168.X.XXX:9090
                            2020-02-06 13:10:53 WARNING lib.item Item EG.Wohnzimmer.Musik.Stop: value "stop" does not match type bool. Via LMS 192.168.X.XXX:9090
                            2020-02-06 13:10:53 WARNING lib.item Item EG.Wohnzimmer.Musik.Pause: value "stop" does not match type bool. Via LMS 192.168.X.XXX:9090
                            Mit dem Error weiß ich leider garnichts anzufangen.. Weiß jemand wie der verursacht wird, und noch besser, was ich dagegen unternehmen kann?

                            Die Warnung ist ja eindeutig. Einem boolean Item kann kein String-Wert zugewiesen werden.
                            Definiere ich z.B. Play als str anstatt bool, ist die Warnung weg, allerdings funktioniert dann die Anzeige des Status nicht mehr.

                            Besten Dank im Voraus.

                            Kommentar


                              Zieh dir bitte dir aktuellste develop Version vom Plugin und nutze die dort aktualisierten structs.
                              Was ist denn vor dem "list index out of range" passiert? Bitte um Debug Log.

                              Kommentar


                                Danke, das hat funktioniert. Ob es jetzt an der Version lag, hatte "Master" 1.3.2. oder an der Struktur kann ich leider nicht sagen. Hatte mir aus einem alten Item-Beispiel eine eigene Struktur erstellt und den Player damit eingebunden.

                                Gibt es evtl. eine elegantere Lösung, um auf die im Plugin enthaltenen Strukturen zuzugreifen?

                                Mein Item sieht aktuell folgendermaßen aus:

                                Code:
                                Musik:
                                    name: "{{ basic.value('value1', 'item.player.player_name') }} @ {{ basic.value('value2', 'item.player.player_ip') }}"
                                    squeezebox_playerid: b8:27:eb:XX:XX:XX # MAC Adresse von Server Webinterface entnehmen
                                    player:
                                       struct: squeezebox.player
                                    info:
                                       struct: squeezebox.info
                                    controls:
                                       struct: squeezebox.controls
                                    playlist:
                                       struct: squeezebox.playlist
                                Hatte es mit dem Ansatz versucht mir eine eigene Struktur anzulegen, in der alle Elemente enthalten sind

                                Code:
                                Player:
                                    player:
                                       struct: squeezebox.player
                                    info:
                                       struct: squeezebox.info
                                .....
                                und dann:

                                Code:
                                Musik:
                                    name: "{{ basic.value('value1', 'item.player.player_name') }} @ {{ basic.value('value2', 'item.player.player_ip') }}"
                                    squeezebox_playerid: b8:27:eb:XX:XX:XX # MAC Adresse von Server Webinterface entnehmen
                                    struct: Player
                                Allerdings kommt so keine Kommunikation zu stande. Auch im Item-Baum werden die einzelenen Items nicht mehr gelistet.

                                Kommentar

                                Lädt...
                                X