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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Logitech Squeezebox Weckersteuerung *gelöst*

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

      @oliverio: Ich musste die Installation 2 Mal durchlaufen lassen, erst jetzt habe ich bei den Instanzen den entsprechenden Eintrag und konnte dort auch den Server eingeben. Soweit habe ich es jetzt schon geschafft. Du müsstest mich jetzt nur noch zu den Weckern lotsen 😉
      Ahhh einfach abwarten, dann erscheint "alarms" bei den Objekten. Dort steht auch ein Wert eingetragen, aber aus dem "Salat" werde ich nicht ganz schlau

      Alarm.jpg

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

        @surfer09

        also einen Alarm kannst du wie folgt setzen:
        du schreibst in den Datenpunkt cmdGeneral das folgende rein:

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

        Die Erklärung für die einzelnen Parameter findest du hier. Auch die Befehle zum löschen, aktivieren deaktivieren
        https://github.com/elParaguayo/LMS-CLI-Documentation/blob/master/LMS-CLI.md#alarm-commands-and-queries

        Die Liste der definierten Alarme, sollten dann im Datenpunkt
        Alarms des jeweiligen Players stehen.

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

          @surfer09 sagte in Logitech Squeezebox Weckersteuerung:

          @oliverio: Ich musste die Installation 2 Mal durchlaufen lassen, erst jetzt habe ich bei den

          Alarm.jpg

          Im Datenpunkt Alarms stehen die Daten der gesetzten Alarme als JSON
          Wenn ich das richtig sehe ist es ein Alarm für alle Wochentage, 21300 Sekunden nach Mitternacht, also irgendwas kurz vor 18:Uhr

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

            @oliverio Genau, das habe ich auch schon gerade gefunden :-). Der Alarm ist für alle Wochentage um 5:55 Uhr. Ich muss jetzt nur ein bisschen experimentieren, wie ich die Befehle mit Blockly in den Datenpunkt schreibe. Ich fange erst einmal mit "alle Wecker aus" an. 🙂

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

              @surfer09
              viel Spass

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

                @oliverio Danke auf jeden Fall schon einmal! Wenn ich nicht weiterkommen sollte, würde ich mich nochmal melden 😉

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

                  Schon kommt mein erstes Problem: Der Datenpunkt wird zwar eingetragen, aber der Befehl kommt scheinbar nicht dort an, wo der Wecker deaktiviert werden soll.

                  2021-01-19 16_38_10-objects - ioBroker.jpg

                  Bei "bestätigt" steht immer "false", wenn über Blockly ein Eintrag erfolgt. Setze ich die Wecker wieder über die Handy-App auf "aktiv" steht "bestätigt" auf "true".

                  2021-01-19 16_40_44-objects - ioBroker.jpg

                  Was mache ich falsch? Im Blockly habe ich bereits "aktualisiere" und "steuere" getestet

                  Blockly.jpg

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

                    @OliverIO : Ich lese gerade, dass die Werte als JSON dort eingetragen sind. Hast du zufällig eine Ahnung, wie ich das über Blockly veranstalte?

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

                      @surfer09
                      dann lese nochmal was ich oben geschrieben habe.
                      Alarms ist nur read only und du kannst dort lesen, welche alarme für den player am LMS eingetragen sind.
                      zum steuern ist der Datenpunkt cmdGeneral
                      cmd steht für command

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

                        @oliverio Ahhh alles klar! Danke! 😉

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

                          @oliverio So ich habe das Skript jetzt mal umgebaut und beschreibe den Datenpunkt "cmdGeneral". Allerdings bleiben die Wecker weiterhin aktiv. Ist hier noch etwas verkehrt?

                          Skript.jpg

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

                            @surfer09 sagte in Logitech Squeezebox Weckersteuerung:

                            @oliverio So ich habe das Skript jetzt mal umgebaut und beschreibe den Datenpunkt "cmdGeneral". Allerdings bleiben die Wecker weiterhin aktiv. Ist hier noch etwas verkehrt?

                            Skript.jpg

                            oh mann, warum hab ich mur nu so viel mühe gemach wenn es an der Aufmeksamkeit mangelt.
                            das hab ich oben geschrieben

                            also einen Alarm kannst du wie folgt setzen:
                            du schreibst in den Datenpunkt cmdGeneral das folgende rein:

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

                            Die Erklärung für die einzelnen Parameter findest du hier. Auch die Befehle zum löschen, aktivieren deaktivieren
                            https://github.com/elParaguayo/LMS-CLI-Documentation/blob/master/LMS-CLI.md#alarm-commands-and-queries

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

                              @oliverio sagte in Logitech Squeezebox Weckersteuerung:

                              oh mann, warum hab ich mur nu so viel mühe gemach wenn es an der Aufmeksamkeit mangelt.

                              Ich glaube nicht, dass meine Aufmerksamkeit das Problem ist.
                              Es steht zwar beschrieben, wie ich einen neuen Alarm setze, aber nicht wie ich einen löschen kann. Wenn ich über die App die Alarme lösche, steht genau dieser Befehl in dem einen Datenpunkt, deswegen bin ich davon ausgegangen, dass dieser auch die Alarme löscht, wenn er in den Datenpunkt cmdGeneral geschrieben wird.
                              Sorry, aber wenn ich das noch nie gemacht habe kann ich das nicht wissen, daher habe ich ja diesen Beitrag geschrieben....

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

                                @surfer09
                                doch,
                                ein aufmerksamer leser hätte das gelesen was man in den datenpunkt reinschreibt
                                und nicht den inhalt aus dem daten punkt alarms(oder was das mit fade out n deinem blockly erkennen kann.

                                ein aufmerksamer leser hätte in der anderen dokumentation neben dem parameter add auch noch die anderen erkannt, so wie ich es geschrieben habe aber ich koiere es dir hier nochmal rein

                                <playerid> alarm <add|update|delete|enableall|<wbr>disableall|defaultvolume> <taggedParameters>
                                

                                da kann man erkennen, das es neben add auch noch update, enableall, disableall und delete gibt

                                weiter unten sogar mit beispiele
                                in kombination mit der dokumentation zum datenpunt cmdGeneral könnte man sich das herleiten

                                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"
                                

                                am besten den ganzen thread nochmal lesen, fängt ganz oben an und auch die beiliegenden links

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

                                  @oliverio Ich glaube schon, dass ich das Grundgerüst schon abgebildet habe, aber es tut sich trotzdem nichts. Vermutlich mache ich noch irgendwo einen Fehler..
                                  Die ID vom Player und die ID vom Wecker sind hinterlegt, der "delete-Befehl" ebenfalls.

                                  2021-01-20 18_18_00-LMS-CLI-Documentation_LMS-CLI.md at master · elParaguayo_LMS-CLI-Documentation ·.jpg

                                  2021-01-20 18_15_31-javascript - ioBroker.jpg

                                  OliverIO 1 Reply Last reply Reply Quote 0
                                  • 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
                                            • First post
                                              Last post

                                            Support us

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

                                            537
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

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