Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Logitech Squeezebox Weckersteuerung *gelöst*

    NEWS

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    Logitech Squeezebox Weckersteuerung *gelöst*

    This topic has been deleted. Only users with topic management privileges can see it.
    • OliverIO
      OliverIO @surfer09 last edited by OliverIO

      @surfer09

      ich geb dir mal nochmal eine tag zum überlegen.
      tip, schau dir meinen Vorschlag für "add" ganz genau an und versuche die beschreibung von cmdGeneral ganz genau zu verstehen

      surfer09 1 Reply Last reply Reply Quote 0
      • surfer09
        surfer09 @OliverIO last edited by

        @oliverio Guten Morgen!
        Also ich sitze jetzt schon 45 Minuten vor der Doku und bin immer noch kein Stück weiter, als vorher. In der Doku steht der Delete-Befehl so, wie ich ihn in Blockly sende, also schließe ich auch einen "," oder ""-Fehler aus. Auch die Player-ID und die ID vom Wecker sind korrekt.
        Also wenn das Ganze wirklich so schwierig ist, dann mache ich das wohl weiterhin manuell.. Da machen mich dann auch keine 20 Seiten Doku schlauer - zumal ich auch kein Programmierer bin.

        OliverIO 1 Reply Last reply Reply Quote 0
        • OliverIO
          OliverIO @surfer09 last edited by OliverIO

          @surfer09

          Also

          das ist die Beschreibung des iobroker-Adapters
          https://github.com/oweitman/ioBroker.squeezeboxrpc
          Hier stehen alle Datenpunkte, ihre Bedeutung und ihre Anwendung drin

          das hier ist die Beschreibung der Befehle für den LMS
          https://github.com/elParaguayo/LMS-CLI-Documentation/blob/master/LMS-CLI.md#alarm-commands-and-queries
          Hier steht was die einzelnen Parameter vom Inhalt her bedeuten (dow,time,url,etc)

          Der Adapter liefert dir einmal die Informationen aus dem LMS und gibt dir die Möglichkeit Funktionen auf dem LMS auszuführen. Manches wird von den widgets, im vis verwendet. die du verwenden kannst um auf einer schönen Oberfläche die wichtigsten Funktionen zum abspielen von Musik zu steuern.

          Einige dieser Befehle werden bereits im iobroker direkt unterstützt.
          Damit aber alle anderen, noch nicht direkt unterstützen Befehle auch durch den Adapter genutzt werden können,
          habe ich den Befehlsdatenpunkt cmdGeneral eingeführt.
          Damit der Adapter die einzelnen Parameter eines LMS-Befehls richtig interpretieren und weiterleiten kann, muss man eine gewisse Konvention einhalten.
          Wir lesen aus der Adapterbeschreibung, ich übersetze direkt

          cmdGeneral a general command field to send commands to the player. every field must enclosed by quotation marks. parameters musst be seperated by comma. Example: "play","1"

          Ein allgemeines Befehlsfeld zum Senden von Befehlen an den Player. Jedes Feld muss in Anführungszeichen gesetzt werden. Parameter müssen durch Komma getrennt werden. Beispiel: "play", "1"

          Darauf prüfst du, was ich mit dem Add-Befehl bereits geschrieben habe:

          "alarm","add","dow:1","enabled:1","playlist:file://some/playlist.m3u","time:9000"
          

          aha, wir sehen, verschiedene Parameter mit Komma getrennt und in Anführungsstriche.
          Dann vergleichen wir mit dem original Befehlsbeispiel aus der LMS Dokumentation

          "bd:a5:a9:9b:9d:df alarm add dow:1 enabled:1 playlist:file://some/playlist.m3u time:9000"
          

          Ich hoffe du erkennst den Unterschied und kannst das Schema nun anpassen.
          Die PlayerID kann man weglassen, da der Befehl cmdGeneral-Befehl bereits direkt zu einem Player gehört und alle Befehle hier nur für den jeweiligen Player gelten. Aller anderen Parameter sind mit Komma getrennt und jeweils in Anführungsstrichen

          Das übertragen wir nun auf den Delete-Befehl
          Hier das original Beispiel aus der LMS-Beschreibung

          "bd:a5:a9:9b:9d:df alarm delete id:eaf39"
          

          Das übertragen wir dann auf das Schema von cmdGeneral

          "alarm","delete","id:eaf39"
          

          Die ID ist der eindeutige Namen eines Weckers und wird für jeden Wecker neu individuell vom LMS vergeben,
          da musst du bei Alarms schauen wie der Wecker heist, den du löschen möchtest.

          Das Ergebnis, ob es funktioniert hat, kannst du aus dem Inhalt des Datenpunkt "Alarms" auslesen.
          Der Datenpunkt Alarms aktualisiert sich glaube ich nur alle 30 Sekunden. Du musst uU ein wenig warten bis die neuen Daten da drin sind.
          Da die Daten als JSON formatiert sind und in diesem kleinen Fenster schlecht zu lesen, verwende
          den Kopierknopf,. Dieser wird eingeblendet, sobald du mit der Maus über den Inhalt des Datenpunks schwebst
          und fügst es hier ein
          https://jsonformatter.curiousconcept.com/#
          Das formatiert die Daten so, das es besser lesbar ist.

          {
             "fade":"1",
             "count":1,
             "alarms_loop":[
                {
                   "id":"43ea07eb",
                   "dow":"1,2",
                   "enabled":"1",
                   "repeat":"1",
                   "time":120,
                   "volume":"50",
                   "url":"http://116.202.214.140:16074/;"
                }
             ]
          }
          

          Das ist nun die kleinklein-Beschreibung. Jetzt bin ich mal gespannt.

          surfer09 1 Reply Last reply Reply Quote 0
          • surfer09
            surfer09 @OliverIO last edited by

            @oliverio sagte in Logitech Squeezebox Weckersteuerung:

            "alarm","delete","id:eaf39"

            Was soll ich dir sagen? Es hat funktioniert! 🙂 Danke für deine Mühe und Geduld! 😉
            Ehrlich gesagt wäre ich in hundert Jahren nicht darauf gekommen, den Code so dort einzutragen.
            Löschen klappt also schon einmal. Deaktivieren wäre in meinem Fall aber die bessere Lösung.
            Was bedeutet hier das <wbr> vor dem "disableall"?

            <playerid> alarm <add|update|delete|enableall|<wbr>disableall|defaultvolume> <taggedParameters> 
            
            surfer09 hsteinme 2 Replies Last reply Reply Quote 0
            • surfer09
              surfer09 @surfer09 last edited by

              @surfer09 Kommando zurück, es hat doch schon funktioniert mit "alarm","disableall". Ich hatte gerade nur bei den einzelnen Alarmen in der App geschaut und die waren noch aktiv. Den Oberpunkt "Alle Alarme" hatte ich nicht gesehen.
              Somit denke ich, dass ich vorerst damit klar komme.

              Ich danke dir nochmals für deine mühevolle Hilfe @OliverIO ! 😉

              OliverIO 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @surfer09 last edited by

                @surfer09

                Hab auch nochmal geschaut was wbr heißt. ist aber in der doku nicht erklärt. das wbr kommt noch an anderen stellen vor.
                Ich habe auch gerade noch ein Problem mit Alarms festgestellt. Der Datenpunkt enthält nur die Aktiven und nicht die deaktivierten Datenpunkte.
                Habe das gerade hier lokal korrigiert.
                Kommt dann in der nächsten offiziellen Version auf latest

                surfer09 1 Reply Last reply Reply Quote 0
                • surfer09
                  surfer09 @OliverIO last edited by

                  Ich fasse jetzt nochmal ganz laienhaft zuammen, wie sich die Wecker aktivieren / deaktivieren lassen.

                  ID zu dem entsprechenden Wecker heraussuchen (wird der Wecker komplett gelöscht und neu erstellt, gibt es eine neue ID!)

                  Alarms.jpg

                  Im Blockly Skript (Sterungsblock) muss dann der Befehl eingetragen werden. Angesprochen wird der Datenpunkt "cmdGeneral"

                  Enabled.jpg

                  Wecker mit der ID 81bf1cdf wird hier deaktiviert (Befehl; enabled:0), soll er aktiviert werden bitte "enabled:1" einsetzen.
                  Sollen alle Wecker deaktiviert werden "alarm,"disableall" als Befehl eingeben.

                  Ich hoffe, das ist nun auch für Laien einmal kurz und bündig zusammengefasst 🙂 .

                  OliverIO 1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @surfer09 last edited by OliverIO

                    @surfer09

                    https://forum.iobroker.net/topic/21809/test-adapter-squeezeboxrpc-v0-8-x-latest/207?_=1611219098580
                    In der Regel dauert es ein paar Stunden, bis der Update-Mechanismus von iobroker bemerkt das es eine neue Version gibt
                    Allerdings musst du dafür hier den Verwahrort nochmals temporär auf latest umstellen

                    surfer09 1 Reply Last reply Reply Quote 0
                    • surfer09
                      surfer09 @OliverIO last edited by

                      @oliverio Super, Danke!

                      1 Reply Last reply Reply Quote 0
                      • hsteinme
                        hsteinme @surfer09 last edited by

                        @surfer09 sagte in Logitech Squeezebox Weckersteuerung *gelöst*:

                        Was bedeutet hier das <wbr> vor dem "disableall"?

                        @oliverio sagte in Logitech Squeezebox Weckersteuerung *gelöst*:

                        Hab auch nochmal geschaut was wbr heißt. ist aber in der doku nicht erklärt. das wbr kommt noch an anderen stellen vor.

                        Das <wbr> hat hier nichts zu suchen. In den mit dem LMS ausgelieferten Hilfeseiten (http://...:9000/html/docs/cli-api.html) sind diese Dinger an den entsprechenden Stellen nicht zu sehen. Ich denke, es handelt sich hier um Formatierungsanweisungen (word breaking???), die irgendwo auf dem Transportweg von Logitech zu GitHub versehentlich da rein gerutscht sind.

                        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

                        473
                        Online

                        32.1k
                        Users

                        80.6k
                        Topics

                        1.3m
                        Posts

                        blockly squeezebox wecker
                        4
                        48
                        2934
                        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