Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Sonos Arc & Satelliten LS per Steckdose ein- und ausschalten

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Sonos Arc & Satelliten LS per Steckdose ein- und ausschalten

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

      Hallo,
      Ich habe folgende Idee, weis aber nicht wie ich es am besten umsetzen soll.
      Meine Idee: Wenn meine Sonos Arc gerade nichts abspielt bzw nicht erreichbar ist, soll die Smarte Steckdose aus sein (also mein Satelliten LS nicht mehr mit Strom versorgt werden), sonst soll die Steckdose ein sein und die LS mit Strom versorgen.

      Ich habe versucht über Blockly den simple_state zu verwenden bzw. den alive Status. Ich bekomme meine Steckdose einfach nicht dazu richtig zu schalten.
      Was wäre hier der richtige Ansatz?

      LG
      Michael

      Cinimod BBTown 2 Replies Last reply Reply Quote 0
      • Cinimod
        Cinimod Most Active @skapi last edited by

        @skapi

        Zeig doch mal deinen Blockly Versuch/Ansatz. Ggf. noch welche Datenpunkte zur verfügung stehen, habe kein Sonos

        S 1 Reply Last reply Reply Quote 0
        • BBTown
          BBTown @skapi last edited by BBTown

          @skapi
          unabhängig davon ob dein Script schaltet, meinst Du dass Du mit der Lösung am Ende glücklich sein wirst?

          Ich hatte zunächst eine "Sonos Play 1" im Badezimmer über eine geschaltete Steckdose mit dem Licht gekoppelt. Allerdings dauert das Starten der "Sonos Play 1" derart lange, dass für mich das ganze sinnlos erschien ... es fing regelmäßig erst dann an zu dudeln, wenn ich schon wieder auf dem Weg aus dem Bad hinaus war. Nun lasse ich die "Play 1" im StandBy und die Musik spielt augenblicklich mit dem Betreten des Bades.

          Vielleicht - sofern noch nicht durchgespielt - probierst Du erst einmal aus, ob diese Verzögerung - wenn der Strom weg war - dich womöglich ebenso stört wies es bei mir der Fall war?!

          [Edit]
          Du könntest versuchen die Arc auch über folgende Datenpunkte abzufragen:
          play=true
          stop=false
          state=play
          state=stop
          volume>1

          Ich setze alle meine Sonos` zum Beispiel immer auf "Volume=1" wenn diese nicht spielen sollen, daher das letzte Beispiel mit "Volume>1".

          1 Reply Last reply Reply Quote 0
          • S
            skapi @Cinimod last edited by

            @cinimod
            anbei mein Versuch
            941e9bc5-e251-4b8c-a742-85848e2135d9-image.png

            on({id: "sonos.0.root.192_168_1_125.state_simple"/*Binary play/pause state*/, change: "ne"}, async function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              if (true) {
                setState("hue.0.Steckdose_Wohnzimmern.on"/*Steckdose Wohnzimmern.on*/, true);
              } else if (false) {
                setState("hue.0.Steckdose_Wohnzimmern.on"/*Steckdose Wohnzimmern.on*/, false);
              }
            });
            

            @BBTown
            Das mit dem Badezimmer kann ich nachvollziehen!
            Für die Satelliten LS ist es aus meiner Sicht ok wenn die etwas verspätet starten, da in erster Linie die Tonausgabe eh von der Arc kommt...

            Cinimod 1 Reply Last reply Reply Quote 0
            • Cinimod
              Cinimod Most Active @skapi last edited by Cinimod

              @skapi

              Dein Skript kann so nicht funktionieren.

              versuch es mal so:

              Bildschirmfoto 2021-11-30 um 21.50.13.png

              Den roten "Wert" Baustein findest du unter der Rubrik "Trigger" er wird aus dem hier umgewandelt.

              Bildschirmfoto 2021-11-30 um 21.46.14.png

              S 1 Reply Last reply Reply Quote 1
              • S
                skapi @Cinimod last edited by

                @cinimod
                Danke!! Das Script funktioniert!
                Was ich nur noch nicht versteht, woher weiße die schleife dass beim Wert "true" (Arc) die Steckdose auf "true" geschalten werden soll und nicht beim Arc Wert false?

                Wäre eine Negation des simple State der Sonos auch möglich?
                Also "if Sonos Arc simplestate ! true (not true); then .... (ich weis, false würde anstatt der negation gehen - nur aus Interesse)

                Danke!!

                Cinimod 1 Reply Last reply Reply Quote 0
                • Cinimod
                  Cinimod Most Active @skapi last edited by Cinimod

                  @skapi

                  Mit dem WERT Block aus dem Trigger, benutzt du direkt den "Wert von Objekt ID" des Trigger Datenpunktes.

                  Der blaue falls Block, braucht immer als Ergebnis ein WAHR um auszuführen.
                  So wie du es vorher hattest geht es nicht, wenn du mal nicht den Trigger als Falls abfrage brauchst, dann machst es so, in der Therorie:

                  Bildschirmfoto 2021-12-01 um 08.24.23.png

                  Da du dir die abfrage auf Wahr allerdings sparen kannst, macht man es in der Praxis eher so:

                  Bildschirmfoto 2021-12-01 um 08.31.20.png

                  Und da bei True/False Datenpunkten ja nur entweder oder sein kann, sieht es so aus wie du es jetzt schon nachgebaut hast.

                  (falls "wert von objekt ID" des trigger Datenpunktes WAHR, mache XY)
                  ( und SONST (kann ja nur false sein) mache XX)

                  Bildschirmfoto 2021-12-01 um 08.37.41.png

                  Phu ... ganzen Roman ... hoffe ich hab es halbwegs verständlich erklärt.

                  S 2 Replies Last reply Reply Quote 1
                  • S
                    skapi @Cinimod last edited by

                    @cinimod
                    Wow! Danke!!
                    Das hilft mir beim verstehen mal definitiv weiter!

                    1 Reply Last reply Reply Quote 1
                    • S
                      skapi @Cinimod last edited by

                      @cinimod
                      Das ganze funktioniert wirklich super, jedoch müsste ich beim sonst nochmal etwas verfeinern. Ich hab das Problem dass mein lieber Sohnemann gerne mal auf die Play/Pause Taste drück und dadurch das ausschalten der Steckdose auslöst.

                      Ich habe den sonst teil mit einer Verzögerung von 5 Minuten eingestellt, jedoch ist das auch nicht praktikabel da der Status nicht mehr aktualisiert wird.

                      Was wäre denn der Richtige Ansatz dass beim "sonst" teil ein Wait von 5 Minuten vorkommt, danach der "simplestate" nochmal geprüft wird und danach wenn wahr mache, wenn false mache?

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

                        @skapi

                        Du kannst dort einfach einen Timeout einfügen, das erst nach z.b. 2 Minuten Inaktivität die LS ausgeschaltet werden. Sollte sich der Datenpunkt innerhalb der 2 Minuten wieder ändern wird der Timeout angehalten

                        Bildschirmfoto 2021-12-04 um 19.37.33.png

                        1 Reply Last reply Reply Quote 1
                        • Homoran
                          Homoran Global Moderator Administrators last edited by Homoran

                          wenn der Trigger true/false liefert braucht es kein sonst, dann steuert man mit "wert"

                          EDIT:
                          mit dem Timeout ist das dann keine Einsparung mehr

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            skapi @Homoran last edited by

                            @homoran
                            ich kann dir leider nicht folgen...
                            @Cinimod
                            Vielen Dank!!

                            Cinimod Homoran 2 Replies Last reply Reply Quote 1
                            • Cinimod
                              Cinimod Most Active @skapi last edited by

                              @skapi

                              er meinte wenn der timeout jetzt nicht notwendig währe kann man einfach die LS direkt mit dem WERT von trigger ansteuern:

                              Bildschirmfoto 2021-12-04 um 21.35.54.png

                              Auch einzig dieser block währe möglich: WO zu beachten ist das Objekt2 immer das (nach-)macht was Objekt1 vorgibt (NICHT ANDERSRUM!)

                              Bildschirmfoto 2021-12-04 um 21.36.14.png

                              bei beiden Varianten kannst du keine Abschaltverzögerung einbauen.

                              1 Reply Last reply Reply Quote 2
                              • Homoran
                                Homoran Global Moderator Administrators @skapi last edited by Homoran

                                @skapi sagte in Sonos Arc & Satelliten LS per Steckdose ein- und ausschalten:

                                ich kann dir leider nicht folgen...

                                bin leider nicht mehr am PC.

                                wenn die Verzögerung beim Ausschalten nicht wäre und wenn der triggernde Datenpunkt einen bool'schen Wert (true/false) liefert reicht quasi eine Zeile innerhal des triggers.
                                Nämlich : steuere 2.ID mit Wert

                                noch rinfacher wäre nur noch die Konstruktion mit binde

                                Dann wird einfach bei true auch der zweite true, und bei false der zeite ebenfalls false.
                                Wenn du willst kann ich morgen ein Bild machen.

                                EDIT
                                Habe ich am Tablet jetzt >5Minuten gebrsucht?

                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  skapi @Homoran last edited by skapi

                                  @homoran
                                  Ahh, jetzt habe Ichs...
                                  @Cinimod
                                  Auch nochmal Danke für die Erklärung!

                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    skapi @skapi last edited by

                                    Hallo,
                                    ich würde mal wieder ein wenig Hilfe benötigen da sich seit dem letzen Sonos update wieder was geändert hat...

                                    Ich weis nicht wieso aber ich tu mir mit der Blockly Logik echt schwer...
                                    Logik aktuell: wenn Objekt ID Simplestate = true, dann mache
                                    Folgende Logik würde noch benötigt werden: wenn Objekt ID Simplestate = true oder coordinator ist nicht 192_168_1_125, dann mache

                                    Würde mich freuen wenn mir hier jemand behilflich sein könnte!

                                    LG

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    715
                                    Online

                                    31.9k
                                    Users

                                    80.1k
                                    Topics

                                    1.3m
                                    Posts

                                    4
                                    16
                                    889
                                    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