Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Alles Licht aus bei verlassen des Hauses

    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

    Alles Licht aus bei verlassen des Hauses

    This topic has been deleted. Only users with topic management privileges can see it.
    • Mic
      Mic Developer @pcone last edited by

      Hey @pcone

      Es sollen alle Geräte (Dimmer & Steckdosen) abgeschaltet werden, wenn der Trigger "AlleLichterAus" auf "true" ist.

      Schau dir mal den Smart Control Adapter an, damit solltest du das gut und sehr einfach umsetzen können.

      Du kannst da unter "1. ZIELGERÄTE" deine Zielgeräte anlegen und in "4. ZONEN" diese aktivieren, sobald "AlleLichterAus" (definiert in "3. AUSLÖSER") ausgelöst wird.

      P 3 Replies Last reply Reply Quote 0
      • P
        pcone @Mic last edited by

        @Mic said in Alles Licht aus bei verlassen des Hauses:

        Smart Control Adapter

        Danke Dir! Schaue ich mir auf jeden Fall an! Sieht wirklich vielversprechend aus.

        Um aber meine JS Kenntnisse zu verbessern, wäre ich dennoch für Feedback zum Skript dankbar. Es macht mich verrückt, dass ich den Fehler nicht finde, bzw. es nicht verstehe ;-/

        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @pcone last edited by paul53

          @pcone sagte:

          es wird nichts getriggert

          Du meinst, dass die Selektoren nichts finden ? Stimmt die Schreibweise der Gewerke "Licht" und "Steckdose" ? Die Schreibweise muss identisch mit der in der ID sein, nicht mit der des Namen.

          P 1 Reply Last reply Reply Quote 0
          • P
            pcone @Mic last edited by

            @Mic irgendwie bin ich scheinbar sogar für deinen Adapter zu 🤦‍♂️ denn ich bekomme es nicht hin. Ich will eigentlich nur, dass alle Lichter aus der Gruppe "Lichter" (= Zielgeräte Aufzählung siehe #1) ausgeschaltet werden, wenn der Trigger Pete Anwesend = "false" (siehe #2) ausgelöst wird. Es sollten ja alle Lichter ausgeschaltet werden. Unter #4 kannst du sehen, dass ich den Trigger auf "false" gesetzt habe, aber die Lichter (Bsp. #5) nicht auf false schalten. Was habe ich hier denn falsch gemacht? alt text

            Mic 1 Reply Last reply Reply Quote 0
            • P
              pcone @paul53 last edited by

              @paul53 hi, also eigentlich sollten die passen. siehe Bsp. für Dimmer.

              alt text

              1 Reply Last reply Reply Quote 0
              • P
                pcone @Mic last edited by

                @Mic servus, kannst du mir hierzu vielleicht kurz Feedback geben, damit ich meinen Fehler verstehe und etwas weiter mit deinem Adapter "spielen" kann? Wäre super 😉

                1 Reply Last reply Reply Quote 0
                • Mic
                  Mic Developer @pcone last edited by

                  @pcone sagte in Alles Licht aus bei verlassen des Hauses:

                  Ich will eigentlich nur, dass alle Lichter aus der Gruppe "Lichter" (= Zielgeräte Aufzählung siehe #1) ausgeschaltet werden, wenn der Trigger Pete Anwesend = "false" (siehe #2) ausgelöst wird. Es sollten ja alle Lichter ausgeschaltet werden. Unter #4 kannst du sehen, dass ich den Trigger auf "false" gesetzt habe, aber die Lichter (Bsp. #5) nicht auf false schalten. Was habe ich hier denn falsch gemacht? alt text

                  Zeige am besten mal Debug Log.

                  1 Reply Last reply Reply Quote 0
                  • J
                    Jan1 last edited by

                    Wenn Alex im Spiel ist, ist das sehr einfach, da über den Alexa Adapter alle Gruppen inklusive der Gruppe Lichter als DP den man schalten kann zur Verfügung stehen.

                    L 1 Reply Last reply Reply Quote 0
                    • L
                      LogSeb @Jan1 last edited by LogSeb

                      Hi zusammen,

                      ich nutze im Grunde dasselbe Skript wie pcone weiter oben.

                      // -----------------------------------------------
                       // Variable
                       // -----------------------------------------------
                      
                       var idTrigger = "hm-rega.0.xyz"/*Alle Lampen aus*/;
                        
                       // -----------------------------------------------
                       // Trigger
                       // -----------------------------------------------
                       on(
                           {
                           id: idTrigger,
                           val: true
                           }, 
                        
                       // -----------------------------------------------
                       // Aktion
                       // -----------------------------------------------    
                           function (obj) 
                           {
                               var idx = 0;
                               var interval = 300;
                      
                              log($('channel(functions=Light)[state.id=*.STATE](rooms=LivingRoom)'));
                               
                               $('channel(functions=Light)[state.id=*.STATE](rooms=LivingRoom)').each(function(id,i) {
                                   if (getState(id).val) setStateDelayed(id, false, (idx++) * interval); 
                               });
                        
                               setTimeout(function () {
                                   setState(idTrigger, false);
                               }, 2000);
                        
                               log('Licht im Wohnzimmer ausgeschaltet.');
                           }
                       );
                      

                      Das Skript schaltet zuverlässig und setzt auch die Variable "Alle Lampen aus" wieder zurück, nachdem alles durchgelaufen ist. Mein Problem ist, dass das Skript nicht nur alle Lichter schaltet, sondern auch die Steckdosen im jeweiligen Raum.

                      Ich habe die Selektion mal geloggt:


                      2020-12-31 13:31:55.547 - info: javascript.0 (446) script.js.Homematic_Programme.Beleuchtung.Alle_Lampen_aus: {'0':'hm-rpc.0.OEQ016xyz.13.STATE','1':'hm-rpc.0.OEQ016xyz.14.STATE','2':'hm-rpc.0.OEQ016xyz.15.STATE','3':'hm-rpc.0.OEQ016xyz.16.STATE','4':'hm-rpc.0.OEQ016xyz.17.STATE','5':'hm-rpc.0.OEQ016xyz.18.STATE','6':'hm-rpc.0.OEQ016xyz.19.STATE','length':7}

                      Das Skript scheint sämtliche Geräte mit .STATE-Kanälen im Wohnzimmer zu schalten, unabhängig von Functions=Light. Schränke ich hingegen auf "Esszimmer" ein, werden dort korrekt nur die Lichter ausgeschaltet. Steckdosen bleiben an.

                      Im ioBroker ist im Wohnzimmer soweit ich das sehen kann alles korrekt hinterlegt. Steckdosen sind unter Funktion korrekt angelegt und nicht dem Gewerk "Licht" zugeordnet. Dennoch werden sie über das Skript geschaltet.


                      Bildschirmfoto 2021-01-01 um 12.57.20.png

                      Hat jemand eine Idee, woran das liegen kann?

                      Danke euch und beste Grüße!

                      1 Reply Last reply Reply Quote 0
                      • machs-smart.de
                        machs-smart.de last edited by

                        Alle Geräte einer Aufzählung auf einmal steuern
                        Ich zeige dir in diesem Artikel, wie du alle Geräte einer Aufzählung auf einmal steuern kannst. Diese Anleitung lässt sich auf alle Datenpunkte anwenden, wie beispielsweise Steckdosen, Lichter, Aktoren, Steuerungen usw.

                        https://www.machs-smart.de/iobroker-blockly-alle-gerate-einer-aufzahlung-steuern/

                        J 1 Reply Last reply Reply Quote 1
                        • J
                          Jan1 @machs-smart.de last edited by

                          @mxbr
                          Wenn ne Alexa im Spiel ist, ist das sehr einfach. Einfach den DP Licht im Alexa Adapter schalten und alle Lichter gehen aus 😉

                          1 Reply Last reply Reply Quote 0
                          • M
                            Michi_Pi last edited by

                            Ist auch eine elegante Lösung mit dem Skript.
                            Ich habe das bei mir recht einfach über den Szenen Adapter gelöst. Da ich bei mir ohnehin ja für jeden Raum verschiedene Szenen hab, (auch jeweils eine Szene für alle Lichter pro Raum) hab ich eine Szene erstellt, die einfach dann alle Räume beinhaltet. (Nicht nur Lichter, sondern auch Steckdosen und Geräte werden hier geschalten)
                            Da unterscheide ich dann aber nochmal ob ich es per Sprache oder über die Vis steueren möchte oder an der Haustür per Taster ausschalte. Denn wenn ich das Haus verlasse, möchte ich die Außenbeleuchtung zeitversetzt zu allen anderen Geräte ausschalten.

                            1 Reply Last reply Reply Quote 0
                            • J
                              Ja.rod @lobomau last edited by

                              @lobomau Vielleicht kannst du mir helfen, bin in Javascript so gut wie nicht bewandert. Es werden bei mir alle relevanten Lichter ausgeschaltet wenn der Datenpunkt auf "false" gestellt wird und angeschalten bei "true". Falls der Datenpunkt auf aber bereits auf "false" steht bewirkt eine erneutes setzen "false" nichts, die Lichter bleiben an. Es wenn er vorher auf "true" war und dann wieder auf "false" gesetzt wird, werden die Lichter ausgeschalten. Was muss getan werden damit das Script auch bei einer Aktualisierung mit dem gleich Wert durchgeläuft?

                              Gruß
                              Ja.rod

                              lobomau M 2 Replies Last reply Reply Quote 0
                              • lobomau
                                lobomau @Ja.rod last edited by

                                @ja-rod ja, das Script triggert nur auf eine Änderung.
                                Aber ich bin auch nicht bewandert mit javascript und weiß nicht wie man das Script diesbzgl. ändern muss.

                                1 Reply Last reply Reply Quote 0
                                • R
                                  Robbi12 last edited by

                                  Also ich habe es mit einer Scene gelöst. Einfach alles was ich ausschalten möchte rein, entsprechend anpassen und nur für ausschalten eingestellt. Dann mit einfachem blockly welches auf tastendruck eines Schalters geht ausschalten.

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    Michi_Pi @Ja.rod last edited by

                                    @ja-rod
                                    wie schon @Robbi12 erwähnt und auch ich hier schon gesagt, löse ich das über Szenen.

                                    Alternativ sollte es auch per Blockly mittlerweile einfacher sein, Stichwort IDs vom Selektor
                                    07e21144-df8c-4999-91bc-fa3de57ddf78-grafik.png

                                    mit Java kenn ich mich selbst auch nicht aus.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    878
                                    Online

                                    31.9k
                                    Users

                                    80.1k
                                    Topics

                                    1.3m
                                    Posts

                                    13
                                    29
                                    5205
                                    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