Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test/Support Adapter SqueezeboxRPC

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Test/Support Adapter SqueezeboxRPC

Geplant Angeheftet Gesperrt Verschoben Tester
squeezeboxrpc adapter
376 Beiträge 29 Kommentatoren 78.5k Aufrufe 31 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • OliverIOO OliverIO

    @hsteinme
    so in der Version 0.8.28 habe ich die Funktionalität eingebaut.
    Das Server und die Playerobjekte werden nun aktualisiert, sobald signalisiert wird, das ein Player connected oder disconnected.
    ggfs. musst du die Funktion erst in den Adapter Settings unter Reiter Performance aktivieren.

    Bei mir hat es Funktioniert, da das bei andern nicht unbedingt der Fall sein muss (man kann nicht alle Fälle vorausdenken).
    Bitte aktiviere zusätzlich noch in den Settings Reiter Debug Settings die Einstellung "Create debug output for server" und stelle nach Speichern der Konfiguration in der Instanzübersicht in der Expertendarstellung den Log-Level der Instanz auf "debug".
    Dort solltest du dann einmal sehen, ob sich der Adapter mittels Telnet mit dem LNS verbindet.
    Im Log sieht das dann wie folgt aus:

    squeezeboxrpc.0	2020-01-09 00:21:34.576	debug	(16011) doTelnet recieved reconnect for : 00:27:00:be:00:b7
    squeezeboxrpc.0	2020-01-09 00:21:02.032	debug	(16011) doTelnet recieved disconnect for : 00:27:00:be:00:b7
    squeezeboxrpc.0	2020-01-09 00:20:13.265	debug	(16011) doTelnet connected to server!
    

    Wenn Fehler auftauchen, dann bitte diese hier melden.

    hsteinmeH Offline
    hsteinmeH Offline
    hsteinme
    schrieb am zuletzt editiert von
    #124

    @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

    so in der Version 0.8.28 habe ich die Funktionalität eingebaut.

    Danke schön für die schnelle Bereitstellung, OliverIO!

    ggfs. musst du die Funktion erst in den Adapter Settings unter Reiter Performance aktivieren.

    "ggfs."? In welchem gegebenen Fall?

    "in den Adapter Settings"? Meinst Du die Instanzen Settings? Im dortigen Reiter performance settings sehe ich jedoch nur zwei altbekannte Optionen zu den Playlist-Infos und zu den anderen LMS Servern. Mehr ist bei mir nicht zu finden.

    *Bitte aktiviere zusätzlich noch in den Settings Reiter Debug Settings die Einstellung "Create debug output for server" und stelle nach Speichern der Konfiguration in der Instanzübersicht in der Expertendarstellung den Log-Level der Instanz auf "debug".

    Das habe ich getan.

    Dort solltest du dann einmal sehen, ob sich der Adapter mittels Telnet mit dem LNS verbindet.
    Im Log sieht das dann wie folgt aus:

    Derartige Einträge sehe ich bei mir nicht, auch nicht nach einem stop/start von ioBroker.

    1 Antwort Letzte Antwort
    0
    • OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von
      #125

      @hsteinme
      dann bitte auf der commandozeile folgenden befehl eingeben:

      iobroker upload squeezeboxrpc

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      OliverIOO hsteinmeH 2 Antworten Letzte Antwort
      0
      • OliverIOO OliverIO

        @hsteinme
        dann bitte auf der commandozeile folgenden befehl eingeben:

        iobroker upload squeezeboxrpc

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von
        #126

        @OliverIO Alternativ bzw als erstes kannst du auch noch <strg> + <f5> auf der Konfigurationsseite machen, falls im browsercache noch die alte seite gespeichert ist

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @hsteinme
          dann bitte auf der commandozeile folgenden befehl eingeben:

          iobroker upload squeezeboxrpc

          hsteinmeH Offline
          hsteinmeH Offline
          hsteinme
          schrieb am zuletzt editiert von
          #127

          @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

          iobroker upload squeezeboxrpc

          Das ist ja ein schönes Kommando :blush: Danach waren nun drei Optionen unter den performance settings zu sehen. Ich habe dann die telnet-Methode aktiviert. Die gesuchten doTelnet Einträge waren danach auch im Log zu sehen.

          Heute scheint aber kein guter Tag zum Testen zu sein. Etwa nur in 10% der Einschaltvorgänge meiner Badezimmer-Squeezebox wurde eine Musikausgabe gestartet. Erste Blicke in mein Anwendungslog und in die History des Connected-Datenpunkts legen den Schluss nahe, dass der Connected-Datenpunkt in diesen Fällen nicht auf 1 gesetzt wurde. Da ich momentan unter Zeitdruck stehe, schiebe ich dieses Thema auf die nächsten Tage. Ich schaue dann etwas tiefer und genauer hin und melde mich hier wieder.

          hsteinmeH 1 Antwort Letzte Antwort
          0
          • OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von OliverIO
            #128

            Das playlist widget steht schon seit längerem noch auf der Entwicklungsliste.
            Hat jemand Lust mit mir zu besprechen, wobei man bei der Entwicklung der Playlist achten sollte, so dass es die folgenden Anforderungen erfüllt werden
            (Liste kann ggfs. auch erweitert werden):

            Stufe 1: Nur Anzeige

            • Bereitstellung folgender Informationen je Track auf einer Playlist: Titel, Album, Artist, RadioName, Duration, Bitrate, Type
            • Konfigurierbares Ein/Ausblenden einzelner Informationen
            • Anpassen der Reihenfolge zur Ausgabe der Informationen
            • Jede Information wird in einem eigenen DIV ausgegeben mit einem adressierbaren class-name
            • Standardlayout wird wegen vereinfachtem Einsatz mitgegeben, kann aber durch eigene CSS-Angaben angepasst werden.

            Sufe 2: (Interaktion)

            • Auswahl eines Titels welcher dann gespielt wird (problem, der vorhandene Playbutton kann hier wahrscheinlich nicht wiederverwendet werden, sondern muss explizit neu Programmiert werden, wenn er verwednet werden kann, kann dieser nicht über vis gestylt werden. Alternativ eine vereinfachte Version
            • Umsortieren der vorgegebenen Playlist (Titel eine Position hoch/runter

            Relativ kurzfristig könnte Level 1 fertig gestellt werden. Mich würde interessieren was man bei Konfiguration sonst noch so beachten müsste, dass ich hier nicht in eine falsche Richtung laufe.

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            hsteinmeH 1 Antwort Letzte Antwort
            0
            • hsteinmeH hsteinme

              @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

              iobroker upload squeezeboxrpc

              Das ist ja ein schönes Kommando :blush: Danach waren nun drei Optionen unter den performance settings zu sehen. Ich habe dann die telnet-Methode aktiviert. Die gesuchten doTelnet Einträge waren danach auch im Log zu sehen.

              Heute scheint aber kein guter Tag zum Testen zu sein. Etwa nur in 10% der Einschaltvorgänge meiner Badezimmer-Squeezebox wurde eine Musikausgabe gestartet. Erste Blicke in mein Anwendungslog und in die History des Connected-Datenpunkts legen den Schluss nahe, dass der Connected-Datenpunkt in diesen Fällen nicht auf 1 gesetzt wurde. Da ich momentan unter Zeitdruck stehe, schiebe ich dieses Thema auf die nächsten Tage. Ich schaue dann etwas tiefer und genauer hin und melde mich hier wieder.

              hsteinmeH Offline
              hsteinmeH Offline
              hsteinme
              schrieb am zuletzt editiert von hsteinme
              #129

              @hsteinme sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

              schiebe ich dieses Thema auf die nächsten Tage. Ich schaue dann etwas tiefer und genauer hin und melde mich hier wieder.

              @OliverIO: Heute habe ich nun meine angekündigte Test-Vertiefung durchführen können - mit einem leider überraschenden Ergebnis.

              Test-Nebenbedingungen:

              • meine eigenen Squeezebox-Skripte = nicht aktiv
              • Squeezebox = Squeezebox Duet
              • Serverrefresh = 30
              • Player refresh = 950
              • Favorite refresh = 720
              • Discovery refresh = 30
              • Provide Playlistinfos in as JSON-datapoint = true
              • Search for other LMS-Server = false
              • Create debug output for Server = true
              • andere Create * output for * = false

              In der ersten Testreihe wurde die Option "Use Telnet for advanced signaling" auf false gesetzt. Die Ergebnisse:

              ---------------------------------------
              Auszeit     bis Conn.=1    Abbruch nach
              ---------------------------------------
                 10         30            
                 10         95
                 10         60   
                 10         65
                 10         85
              ---------------------------------------
                 50         38
                 50         58
                 50         --              150
                 50         43
                 50         40
              ---------------------------------------
              

              Zur Erläuterung:

              • Auszeit: Sekunden zwischen Aus- und Einschalten der Squeezebox
              • bis Conn.=1: Sekunden vom Einschalten bis Connected-Status 1 wurde
              • Abbruch nach: Sekunden vom Einschalten bis Abbruch der Messung, wenn Connected-Status nicht 1 wurde
              • Ausschalten: Stromversorgung der Squeezebox ausschalten
              • Einschalten: Stromversorgung der Squeezebox einschalten

              In der (versuchten) zweiten Testreihe wurde die Option "Use Telnet for advanced signaling" auf true gesetzt. Die Wirksamkeit dieser Einstellung wurde im Log über die Existenz der doTelnet-Einträge überprüft.

              Das Ergebnis: Nach dem Restart des Adapters stand Connected zunächst auf null. Beim ersten Einschalten der Squeezebox wechselte (nach der üblichen Wartezeit) der Connected-Status auf 1. Nachfolgendes Ausschalten sowie daraufhin erfolgte mehrmalige Aus-/Einschaltvorgänge änderten nichts am Connected-Status. Er blieb standhaft auf 1.

              3ae91a7a-0ae9-46c9-8bda-eecc274ef1c6-image.png

              Dieses Verhalten entspricht auch meiner ersten Auf-die-Schnelle-Erfahrung vom Donnerstag: Beim ersten Einschalten startete meine Anwendung eine Musikausgabe, danach nie wieder. Nach dem Ausschalten der Telnet-Option startete meine Anwendung (fast) immer eine Musikausgabe. (Zum "fast" siehe auch oben den nach 150 Sekunden abgebrochenen Testlauf.)

              Welche Informationen kann ich Dir noch liefern, um Dich bei der Diagnose dieses Verhaltens zu unterstützen?

              Übrigens: Eine derartige Testreihe kann auch gut mit der SqueezePlay App auf einem PC durchgeführt werden (Einschalten = Starten der App, Ausschalten = Schließen der App), wobei natürlich die Wartezeiten auf Connect = 1 deutlich geringer sind, da die Hochfahrzeiten der Anwendung wesentlich kleiner als die Hochfahrzeiten einer "realen" Squeezebox sind.

              OliverIOO 1 Antwort Letzte Antwort
              0
              • OliverIOO OliverIO

                Das playlist widget steht schon seit längerem noch auf der Entwicklungsliste.
                Hat jemand Lust mit mir zu besprechen, wobei man bei der Entwicklung der Playlist achten sollte, so dass es die folgenden Anforderungen erfüllt werden
                (Liste kann ggfs. auch erweitert werden):

                Stufe 1: Nur Anzeige

                • Bereitstellung folgender Informationen je Track auf einer Playlist: Titel, Album, Artist, RadioName, Duration, Bitrate, Type
                • Konfigurierbares Ein/Ausblenden einzelner Informationen
                • Anpassen der Reihenfolge zur Ausgabe der Informationen
                • Jede Information wird in einem eigenen DIV ausgegeben mit einem adressierbaren class-name
                • Standardlayout wird wegen vereinfachtem Einsatz mitgegeben, kann aber durch eigene CSS-Angaben angepasst werden.

                Sufe 2: (Interaktion)

                • Auswahl eines Titels welcher dann gespielt wird (problem, der vorhandene Playbutton kann hier wahrscheinlich nicht wiederverwendet werden, sondern muss explizit neu Programmiert werden, wenn er verwednet werden kann, kann dieser nicht über vis gestylt werden. Alternativ eine vereinfachte Version
                • Umsortieren der vorgegebenen Playlist (Titel eine Position hoch/runter

                Relativ kurzfristig könnte Level 1 fertig gestellt werden. Mich würde interessieren was man bei Konfiguration sonst noch so beachten müsste, dass ich hier nicht in eine falsche Richtung laufe.

                hsteinmeH Offline
                hsteinmeH Offline
                hsteinme
                schrieb am zuletzt editiert von
                #130

                @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                Hat jemand Lust mit mir zu besprechen, wobei man bei der Entwicklung der Playlist achten sollte, [...]
                Stufe 1: Nur Anzeige

                • Anzahl der Playlist-Items
                • Positonsnummer des aktuellen Items
                1 Antwort Letzte Antwort
                0
                • hsteinmeH hsteinme

                  @hsteinme sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                  schiebe ich dieses Thema auf die nächsten Tage. Ich schaue dann etwas tiefer und genauer hin und melde mich hier wieder.

                  @OliverIO: Heute habe ich nun meine angekündigte Test-Vertiefung durchführen können - mit einem leider überraschenden Ergebnis.

                  Test-Nebenbedingungen:

                  • meine eigenen Squeezebox-Skripte = nicht aktiv
                  • Squeezebox = Squeezebox Duet
                  • Serverrefresh = 30
                  • Player refresh = 950
                  • Favorite refresh = 720
                  • Discovery refresh = 30
                  • Provide Playlistinfos in as JSON-datapoint = true
                  • Search for other LMS-Server = false
                  • Create debug output for Server = true
                  • andere Create * output for * = false

                  In der ersten Testreihe wurde die Option "Use Telnet for advanced signaling" auf false gesetzt. Die Ergebnisse:

                  ---------------------------------------
                  Auszeit     bis Conn.=1    Abbruch nach
                  ---------------------------------------
                     10         30            
                     10         95
                     10         60   
                     10         65
                     10         85
                  ---------------------------------------
                     50         38
                     50         58
                     50         --              150
                     50         43
                     50         40
                  ---------------------------------------
                  

                  Zur Erläuterung:

                  • Auszeit: Sekunden zwischen Aus- und Einschalten der Squeezebox
                  • bis Conn.=1: Sekunden vom Einschalten bis Connected-Status 1 wurde
                  • Abbruch nach: Sekunden vom Einschalten bis Abbruch der Messung, wenn Connected-Status nicht 1 wurde
                  • Ausschalten: Stromversorgung der Squeezebox ausschalten
                  • Einschalten: Stromversorgung der Squeezebox einschalten

                  In der (versuchten) zweiten Testreihe wurde die Option "Use Telnet for advanced signaling" auf true gesetzt. Die Wirksamkeit dieser Einstellung wurde im Log über die Existenz der doTelnet-Einträge überprüft.

                  Das Ergebnis: Nach dem Restart des Adapters stand Connected zunächst auf null. Beim ersten Einschalten der Squeezebox wechselte (nach der üblichen Wartezeit) der Connected-Status auf 1. Nachfolgendes Ausschalten sowie daraufhin erfolgte mehrmalige Aus-/Einschaltvorgänge änderten nichts am Connected-Status. Er blieb standhaft auf 1.

                  3ae91a7a-0ae9-46c9-8bda-eecc274ef1c6-image.png

                  Dieses Verhalten entspricht auch meiner ersten Auf-die-Schnelle-Erfahrung vom Donnerstag: Beim ersten Einschalten startete meine Anwendung eine Musikausgabe, danach nie wieder. Nach dem Ausschalten der Telnet-Option startete meine Anwendung (fast) immer eine Musikausgabe. (Zum "fast" siehe auch oben den nach 150 Sekunden abgebrochenen Testlauf.)

                  Welche Informationen kann ich Dir noch liefern, um Dich bei der Diagnose dieses Verhaltens zu unterstützen?

                  Übrigens: Eine derartige Testreihe kann auch gut mit der SqueezePlay App auf einem PC durchgeführt werden (Einschalten = Starten der App, Ausschalten = Schließen der App), wobei natürlich die Wartezeiten auf Connect = 1 deutlich geringer sind, da die Hochfahrzeiten der Anwendung wesentlich kleiner als die Hochfahrzeiten einer "realen" Squeezebox sind.

                  OliverIOO Offline
                  OliverIOO Offline
                  OliverIO
                  schrieb am zuletzt editiert von
                  #131

                  @hsteinme
                  hab mir das verhalten vom LMS nochmal angeschaut und folgendes ist mir aufgefallen.
                  Man darf nicht nur den Status Connected anschauen, sondern auch Power.
                  Den verwaltet der LMS unabhängig voneinander, so dass
                  Ein Gerät aus sein kann (power=0), aber dennoch noch connected (connected=1)
                  Für den LMS kann erstaunlicherweise ein Gerät auch nicht connected (connected = 0) sein und dennoch an (power=1). Das habe ich im adapter aber korrigiert.

                  Für dein Skript musst du nach dem Status Power schauen. folgende Zustände können nun vorkommen

                  power=0,connected=0; gerät nicht verfügbar
                  power=1,connected=0; kann nicht mehr in iobroker vorkommen, LMS kennt das aber noch
                  Power=0,connected=1; player ist mit LMS verbunden, aber Soft ausgeschaltet
                  Power=1,connected=1, player verbunden und eingeschaltet

                  Da ich Power bei der Ereignissignalisierung noch nicht berücksichtigt hatte, habe ich das nun ergänzt, sowie die oben erwähnte Korrektur eingearbeitet.
                  Damit man sieht was sonst noch über die Ereignissteuerung läuft, werden alle eingehenden Daten nun im Debug-Level ausgegeben.
                  Dies steht nun in Version 0.8.29 zur Verfügung.

                  Meine Adapter und Widgets
                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                  Links im Profil

                  1 Antwort Letzte Antwort
                  0
                  • hsteinmeH Offline
                    hsteinmeH Offline
                    hsteinme
                    schrieb am zuletzt editiert von
                    #132

                    @OliverIO: Heißen Dank für die wieder mal schnelle Diagnose und Lösungsbereitstellung.

                    Zwei Logs aus meiner früheren Anwendung:

                    Rec 22.12.2019 07:58:17 Data Received (47/47):
                                            xx:xx:xx:xx:ca:58 client disconnect
                    Rec 22.12.2019 08:03:17 Data Received (43/43):
                                            xx:xx:xx:xx:ca:58 client forget
                    Rec 22.12.2019 08:03:17 Data Received (43/83):
                                            xx:xx:xx:xx:ca:58 playlist stop
                    Rec 22.12.2019 08:14:35 Data Received (40/40):
                                            xx:xx:xx:xx:ca:58 client new
                    

                    Wurde einem Client der Strom entzogen, so reichte der Server nach kurzer Zeit ein Signal "client disconnect" hoch. Blieb der Client weiter stromlos, so kam nach 5 Minuten die Notification "client forget". Bei einer erneuten Stromzufuhr meldete dann der Server "client new".

                    Rec 22.12.2019 00:06:59 Data Received (47/47):
                                            xx:xx:xx:xx:ca:58 client disconnect
                    Rec 22.12.2019 00:07:12 Data Received (46/46):
                                            xx:xx:xx:xx:ca:58 client reconnect
                    

                    Erhielt ein stromlos gewordener Client innerhalb der 5-Minuten-Galgenfrist wieder Strom, so wurde seine Reanimation mit dem Status "client reconnect" kundgetan.

                    Meine frühere Anwendung reagierte also simpel auf die Signale "client new" und "client reconnect", auf sonst nix.

                    Man darf nicht nur den Status Connected anschauen, sondern auch Power.

                    Das Signal "power 1" konnte ich bisher ignorieren.

                    folgende Zustände können nun vorkommen

                    power=0,connected=0; gerät nicht verfügbar
                    power=1,connected=0; kann nicht mehr in iobroker vorkommen, LMS kennt das aber noch
                    Power=0,connected=1; player ist mit LMS verbunden, aber Soft ausgeschaltet
                    Power=1,connected=1, player verbunden und eingeschaltet

                    Ja, dem ist so. Das konnte ich ebenfalls verifizieren.

                    Für dein Skript musst du nach dem Status Power schauen.

                    Ja, auch dem ist nun so. Ich habe es nun in meinem Skript geändert (ein Hoch auf den Erfinder der Replace-all-Funktion in Editoren).

                    Damit man sieht was sonst noch über die Ereignissteuerung läuft, werden alle eingehenden Daten nun im Debug-Level ausgegeben.

                    Schön, dann kann ich ab sofort darauf verzichten, einen Telnet-Client mit "listen 1" mitlaufen zu lassen.

                    Dies steht nun in Version 0.8.29 zur Verfügung.

                    Danke schön! Runter geladen, installiert, Upload angestoßen (!), getestet: Siehe da, es läuft alles bestens :blush: Daher konnte ich mir natürlich Zeitmessungen nicht verkneifen:

                    ---------------------------------------
                    Auszeit    bis Power=1     Abbruch nach
                    ---------------------------------------
                       10         35            
                       10         50
                       10         14   
                       10         31
                       10         38
                       10         38   
                       10         37
                       10         51
                    ---------------------------------------
                    

                    Auch wenn diese geringe Zahl an Testläufen nicht repräsentativ sein kann, so wage ich doch ein erstes Fazit:

                    • Die zuvor aufgetretenen großen Ausreisser nach oben wurden nicht mehr beobachtet.
                    • Auch die Werte im mittleren Bereich haben sich im Allgemeinen verkürzt.

                    Von daher hat der Wechsel "vom Abfrage-Modus auf den Lausch-Modus" wohl die erhoffte Wirkung erzielt :+1:

                    Übrigens: Bei meinem heutigen Handling mit LMS/Adapter/Skript habe ich erneut zweimal die Situation gehabt, dass nach dem Einschalten des Clients keine Power/Connected-Änderung an mein Skript gemeldet wurde. Da ich gerade parallel einen Telnet-Client zwecks LMS-Beobachtung mitlaufen hatte, konnte ich jedoch die "Unschuld" des Adapters belegen: Der LMS selbst hatte die Status-Änderung nicht über die listen-Schiene signalisiert.

                    OliverIOO 1 Antwort Letzte Antwort
                    0
                    • hsteinmeH hsteinme

                      @OliverIO: Heißen Dank für die wieder mal schnelle Diagnose und Lösungsbereitstellung.

                      Zwei Logs aus meiner früheren Anwendung:

                      Rec 22.12.2019 07:58:17 Data Received (47/47):
                                              xx:xx:xx:xx:ca:58 client disconnect
                      Rec 22.12.2019 08:03:17 Data Received (43/43):
                                              xx:xx:xx:xx:ca:58 client forget
                      Rec 22.12.2019 08:03:17 Data Received (43/83):
                                              xx:xx:xx:xx:ca:58 playlist stop
                      Rec 22.12.2019 08:14:35 Data Received (40/40):
                                              xx:xx:xx:xx:ca:58 client new
                      

                      Wurde einem Client der Strom entzogen, so reichte der Server nach kurzer Zeit ein Signal "client disconnect" hoch. Blieb der Client weiter stromlos, so kam nach 5 Minuten die Notification "client forget". Bei einer erneuten Stromzufuhr meldete dann der Server "client new".

                      Rec 22.12.2019 00:06:59 Data Received (47/47):
                                              xx:xx:xx:xx:ca:58 client disconnect
                      Rec 22.12.2019 00:07:12 Data Received (46/46):
                                              xx:xx:xx:xx:ca:58 client reconnect
                      

                      Erhielt ein stromlos gewordener Client innerhalb der 5-Minuten-Galgenfrist wieder Strom, so wurde seine Reanimation mit dem Status "client reconnect" kundgetan.

                      Meine frühere Anwendung reagierte also simpel auf die Signale "client new" und "client reconnect", auf sonst nix.

                      Man darf nicht nur den Status Connected anschauen, sondern auch Power.

                      Das Signal "power 1" konnte ich bisher ignorieren.

                      folgende Zustände können nun vorkommen

                      power=0,connected=0; gerät nicht verfügbar
                      power=1,connected=0; kann nicht mehr in iobroker vorkommen, LMS kennt das aber noch
                      Power=0,connected=1; player ist mit LMS verbunden, aber Soft ausgeschaltet
                      Power=1,connected=1, player verbunden und eingeschaltet

                      Ja, dem ist so. Das konnte ich ebenfalls verifizieren.

                      Für dein Skript musst du nach dem Status Power schauen.

                      Ja, auch dem ist nun so. Ich habe es nun in meinem Skript geändert (ein Hoch auf den Erfinder der Replace-all-Funktion in Editoren).

                      Damit man sieht was sonst noch über die Ereignissteuerung läuft, werden alle eingehenden Daten nun im Debug-Level ausgegeben.

                      Schön, dann kann ich ab sofort darauf verzichten, einen Telnet-Client mit "listen 1" mitlaufen zu lassen.

                      Dies steht nun in Version 0.8.29 zur Verfügung.

                      Danke schön! Runter geladen, installiert, Upload angestoßen (!), getestet: Siehe da, es läuft alles bestens :blush: Daher konnte ich mir natürlich Zeitmessungen nicht verkneifen:

                      ---------------------------------------
                      Auszeit    bis Power=1     Abbruch nach
                      ---------------------------------------
                         10         35            
                         10         50
                         10         14   
                         10         31
                         10         38
                         10         38   
                         10         37
                         10         51
                      ---------------------------------------
                      

                      Auch wenn diese geringe Zahl an Testläufen nicht repräsentativ sein kann, so wage ich doch ein erstes Fazit:

                      • Die zuvor aufgetretenen großen Ausreisser nach oben wurden nicht mehr beobachtet.
                      • Auch die Werte im mittleren Bereich haben sich im Allgemeinen verkürzt.

                      Von daher hat der Wechsel "vom Abfrage-Modus auf den Lausch-Modus" wohl die erhoffte Wirkung erzielt :+1:

                      Übrigens: Bei meinem heutigen Handling mit LMS/Adapter/Skript habe ich erneut zweimal die Situation gehabt, dass nach dem Einschalten des Clients keine Power/Connected-Änderung an mein Skript gemeldet wurde. Da ich gerade parallel einen Telnet-Client zwecks LMS-Beobachtung mitlaufen hatte, konnte ich jedoch die "Unschuld" des Adapters belegen: Der LMS selbst hatte die Status-Änderung nicht über die listen-Schiene signalisiert.

                      OliverIOO Offline
                      OliverIOO Offline
                      OliverIO
                      schrieb am zuletzt editiert von
                      #133

                      @hsteinme Das ist schön das es jetzt funktioniert.

                      Meine Adapter und Widgets
                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                      Links im Profil

                      1 Antwort Letzte Antwort
                      0
                      • hsteinmeH Offline
                        hsteinmeH Offline
                        hsteinme
                        schrieb am zuletzt editiert von
                        #134

                        Mein Favorite-Refresh-Setting steht auf Standard, also auf 6 Stunden. Gelegentlich strukturiere ich meine SqueezeBox-Favoriten um. Da ich dann nicht bis zu 6 Stunden warten möchte, stellt sich die Frage, ob es eine Möglichkeit gibt, einen Favorite-Refresh manuell anzustoßen.

                        Der Adapter-Restart gehört nicht zu diesen Möglichkeiten. Das Favorite-Refresh-Setting runter und dann wieder rauf zu drehen, ist sicherlich eine Möglichkeit, aber nicht meine allerliebste.

                        OliverIOO 1 Antwort Letzte Antwort
                        0
                        • hsteinmeH hsteinme

                          Mein Favorite-Refresh-Setting steht auf Standard, also auf 6 Stunden. Gelegentlich strukturiere ich meine SqueezeBox-Favoriten um. Da ich dann nicht bis zu 6 Stunden warten möchte, stellt sich die Frage, ob es eine Möglichkeit gibt, einen Favorite-Refresh manuell anzustoßen.

                          Der Adapter-Restart gehört nicht zu diesen Möglichkeiten. Das Favorite-Refresh-Setting runter und dann wieder rauf zu drehen, ist sicherlich eine Möglichkeit, aber nicht meine allerliebste.

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von
                          #135

                          @hsteinme
                          ja gibt es.
                          In den Objekten unter Server gibt es einen Kommandoknopf getFavorites

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          1 Antwort Letzte Antwort
                          0
                          • hsteinmeH Offline
                            hsteinmeH Offline
                            hsteinme
                            schrieb am zuletzt editiert von hsteinme
                            #136

                            Upps! Hatte ich gesucht - und übersehen. Sorry & Danke!

                            1 Antwort Letzte Antwort
                            0
                            • hsteinmeH Offline
                              hsteinmeH Offline
                              hsteinme
                              schrieb am zuletzt editiert von
                              #137

                              Das Löschen von Favoriten hinterlässt "Leichen" im Favoriten-Objektbaum von SqueezeboxRPC. Ein Beispiel:

                              • Die Ausgangslage:
                                5e5a3536-dc7c-4853-8dcf-a86e8dbbe6fb-image.png

                              8d679ee7-ab23-4227-b3e6-656ade0aeb97-image.png

                              • Der Eintrag "Test eins" wird auf dem LMS gelöscht:
                                d8de1850-8705-47eb-88ff-d9e7584d6e65-image.png

                              • Der Button squeezeboxrpc.0.Server.getFavorites wird gedrückt. Das Objektfenster im Browser wird zur Vorsicht geschlossen. Es wird ein neues Objektfenster im Browser geöffnet:
                                9ccd0496-9ad9-43ce-9fa8-d13653c2a335-image.png

                              Man sieht nun:

                              • Der Eintrag "Test zwei" ist nach oben gerutscht, um den vorherigen Platz von "Test eins" einzunehmen.
                              • Auf dem bisherigen Platz von "Test zwei" bleibt jedoch sein alter Eintrag stehen (siehe Timestamps)
                              1 Antwort Letzte Antwort
                              0
                              • OliverIOO Offline
                                OliverIOO Offline
                                OliverIO
                                schrieb am zuletzt editiert von
                                #138

                                Ja, der objektbaum hinterlässt manchmal artefakte. Die Objekte existieren eigentlich nicht mehr, sondern kommen wahrscheinlich aus dem Browser Cache
                                Oben links gibt es für den objektbaum ein aktualisieren Knopf. Spätestens dann müssten diese Zombie Objekte weg sein. Wenn nicht, dann schauen wir weiter.

                                Technisch wird bei jedem aktualisieren im Hintergrund alle Favoriten states gelöscht und dann neu angelegt.

                                Meine Adapter und Widgets
                                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                Links im Profil

                                hsteinmeH 1 Antwort Letzte Antwort
                                0
                                • OliverIOO OliverIO

                                  Ja, der objektbaum hinterlässt manchmal artefakte. Die Objekte existieren eigentlich nicht mehr, sondern kommen wahrscheinlich aus dem Browser Cache
                                  Oben links gibt es für den objektbaum ein aktualisieren Knopf. Spätestens dann müssten diese Zombie Objekte weg sein. Wenn nicht, dann schauen wir weiter.

                                  Technisch wird bei jedem aktualisieren im Hintergrund alle Favoriten states gelöscht und dann neu angelegt.

                                  hsteinmeH Offline
                                  hsteinmeH Offline
                                  hsteinme
                                  schrieb am zuletzt editiert von
                                  #139

                                  @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                                  Die Objekte existieren eigentlich nicht mehr, sondern kommen wahrscheinlich aus dem Browser Cache
                                  Oben links gibt es für den objektbaum ein aktualisieren Knopf. Spätestens dann müssten diese Zombie Objekte weg sein. Wenn nicht, dann schauen wir weiter.

                                  Ja, dann lass uns mal bitte weiterschauen.

                                  Der Refresh-Knopf brachte keine Heilung.

                                  Nachdem zwei Stunden nach dem Löschvorgang vier verschiedene Browser auf demselben PC sowie zwei verschiedene Browser auf einem zweiten PC immer noch den Zombie im Objekt-Fenster anzeigten, habe ich dann meinen Knopf für das Auslesen des Favoriten-Objektbaums bemüht. Das Log zeigt dann folgendes an:

                                  2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 1.0
                                  2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: DR+P8+Jazz .
                                  2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 1.1
                                  2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: Test zwei
                                  2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 1.2
                                  2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: Test zwei
                                  2020-02-04 16:59:46.145 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 10.0
                                  2020-02-04 16:59:46.145 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: Ö1 .
                                  

                                  Das scheint also kein reines Anzeigeproblem zu sein.

                                  Hier zum Quercheck mein Code-Schnipsel, der obige Logeinträge erzeugt:

                                      AnfangsLaenge = FavoritesAccessKey.split('.').length;    
                                      TrefferListe  = $(FavoritesAccessKey + '.*.id');
                                      TrefferListe.each(function (Key, Position) {
                                          Tmp = Key.split('.');
                                          if(Tmp.length == (AnfangsLaenge + 2)) {
                                              if (getState(NachbarKey(Key, 'isaudio')).val) {
                                                  if (getState(NachbarKey(Key, 'type')).val == 'audio') {
                                                      Id = getState(Key).val;
                                                      Log(true, 'FavoriteId: ' + Id);
                                                      Name = getState(NachbarKey(Key, 'Name')).val;
                                                      Log(true, 'FavoriteName: ' + Name);
                                  
                                  

                                  Technisch wird bei jedem aktualisieren im Hintergrund alle Favoriten states gelöscht und dann neu angelegt.

                                  Vielleicht läuft ja in dieser Ecke etwas schief. Wäre schön, wenn Du da nochmal rein schauen könntest. Besten Dank im Voraus.

                                  OliverIOO 1 Antwort Letzte Antwort
                                  0
                                  • hsteinmeH hsteinme

                                    @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                                    Die Objekte existieren eigentlich nicht mehr, sondern kommen wahrscheinlich aus dem Browser Cache
                                    Oben links gibt es für den objektbaum ein aktualisieren Knopf. Spätestens dann müssten diese Zombie Objekte weg sein. Wenn nicht, dann schauen wir weiter.

                                    Ja, dann lass uns mal bitte weiterschauen.

                                    Der Refresh-Knopf brachte keine Heilung.

                                    Nachdem zwei Stunden nach dem Löschvorgang vier verschiedene Browser auf demselben PC sowie zwei verschiedene Browser auf einem zweiten PC immer noch den Zombie im Objekt-Fenster anzeigten, habe ich dann meinen Knopf für das Auslesen des Favoriten-Objektbaums bemüht. Das Log zeigt dann folgendes an:

                                    2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 1.0
                                    2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: DR+P8+Jazz .
                                    2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 1.1
                                    2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: Test zwei
                                    2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 1.2
                                    2020-02-04 16:59:46.144 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: Test zwei
                                    2020-02-04 16:59:46.145 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteId: 10.0
                                    2020-02-04 16:59:46.145 - info: javascript.0 script.js.common.MultiMedia.SqueezeBoxFavorites: Debug Info: FavoriteName: Ö1 .
                                    

                                    Das scheint also kein reines Anzeigeproblem zu sein.

                                    Hier zum Quercheck mein Code-Schnipsel, der obige Logeinträge erzeugt:

                                        AnfangsLaenge = FavoritesAccessKey.split('.').length;    
                                        TrefferListe  = $(FavoritesAccessKey + '.*.id');
                                        TrefferListe.each(function (Key, Position) {
                                            Tmp = Key.split('.');
                                            if(Tmp.length == (AnfangsLaenge + 2)) {
                                                if (getState(NachbarKey(Key, 'isaudio')).val) {
                                                    if (getState(NachbarKey(Key, 'type')).val == 'audio') {
                                                        Id = getState(Key).val;
                                                        Log(true, 'FavoriteId: ' + Id);
                                                        Name = getState(NachbarKey(Key, 'Name')).val;
                                                        Log(true, 'FavoriteName: ' + Name);
                                    
                                    

                                    Technisch wird bei jedem aktualisieren im Hintergrund alle Favoriten states gelöscht und dann neu angelegt.

                                    Vielleicht läuft ja in dieser Ecke etwas schief. Wäre schön, wenn Du da nochmal rein schauen könntest. Besten Dank im Voraus.

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von
                                    #140

                                    @hsteinme ich hab etwas gefunden, was temporär zu Differenzen führt und nun in 0.8.31 behoben.
                                    Die Favoriten sind nur im refresh gelöscht worden und nicht wenn man individuell abfragt.
                                    jetzt wird es jedes mal gelöscht.

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    1 Antwort Letzte Antwort
                                    0
                                    • OliverIOO OliverIO

                                      @BoehserWolf said in Neuer Adapter SqueezeboxRPC:

                                      Musste nach dem Update 1x den Upload anschieben damit die neuen Widgets übernommen wurden - nur zur Info.

                                      Ja weiß ich, ich glaube wenn man über den normalen Updatemechanismus von iobroker aktualisiert, wird das automatisch gemacht. Ich werde einen Hinweis in die Doku mit aufnehmen

                                      hsteinmeH Offline
                                      hsteinmeH Offline
                                      hsteinme
                                      schrieb am zuletzt editiert von
                                      #141

                                      @BoehserWolf said in Neuer Adapter SqueezeboxRPC:

                                      Musste nach dem Update 1x den Upload anschieben damit die neuen Widgets übernommen wurden - nur zur Info.

                                      @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                                      Ja weiß ich, ich glaube wenn man über den normalen Updatemechanismus von iobroker aktualisiert, wird das automatisch gemacht. Ich werde einen Hinweis in die Doku mit aufnehmen

                                      Ich habe keinen Upload-Hinweis in der README.md gefunden. Habe ich da was übersehen?

                                      OliverIOO 1 Antwort Letzte Antwort
                                      0
                                      • hsteinmeH hsteinme

                                        @BoehserWolf said in Neuer Adapter SqueezeboxRPC:

                                        Musste nach dem Update 1x den Upload anschieben damit die neuen Widgets übernommen wurden - nur zur Info.

                                        @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                                        Ja weiß ich, ich glaube wenn man über den normalen Updatemechanismus von iobroker aktualisiert, wird das automatisch gemacht. Ich werde einen Hinweis in die Doku mit aufnehmen

                                        Ich habe keinen Upload-Hinweis in der README.md gefunden. Habe ich da was übersehen?

                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von
                                        #142

                                        @hsteinme ne stimmt, war noch nicht drin. habe es gerade eingebaut. wird dann beim nächsten release dann auch in der onlinedoku landen.

                                        der befehl lautet

                                        iobroker upload squeezeboxrpc
                                        

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        hsteinmeH 1 Antwort Letzte Antwort
                                        0
                                        • hsteinmeH Offline
                                          hsteinmeH Offline
                                          hsteinme
                                          schrieb am zuletzt editiert von hsteinme
                                          #143

                                          @OliverIO sagte in Test Adapter SqueezeboxRPC v0.8.x Latest:

                                          ich hab etwas gefunden, was temporär zu Differenzen führt und nun in 0.8.31 behoben

                                          Danke schön!

                                          Ich habe nun folgendes getan

                                          • Update SqueezeboxRPC über die github-Adresse
                                          • sudo iobroker upload squeezeboxrpc
                                          • Version im Adapter-Reiter überprüft:
                                            ** 0.8.31
                                          • Im LMS wie vor zwei Tagen die Favoriten Test eins und Test zwei angelegt
                                          • Favorit Test zwei gelöscht
                                          • Button squeezeboxrpc.0.Server.getFavorites gedrückt
                                          • Browser geschlossen
                                          • Browser erneut geöffnet
                                          • Im Objects-Reiter squeezeboxrpc.0.Favorites.* überprüft:
                                            ** Test eins ist nicht mehr vorhanden
                                            ** Test zwei hat dessen Platz eingenommen mit aktuellem Timestamp
                                            ** Ein zweiter Test zwei Eintrag mit älterem Timestamp steht weiterhin auf dem früheren Platz von Test zwei
                                          • Per Javascript den Favoritenbaum ausgelesen:
                                            ** Zwei Einträge für den Favoriten Test zwei werden gefunden

                                          Was habe ich wo falsch gemacht?

                                          Übrigens: Auch nach einem etwa 20 Minuten nach der Favorit-Löschung erfolgten Restart des ioBroker ist der veraltete Eintrag von Test zwei immer noch vorhanden.

                                          OliverIOO 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          889

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe