Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Zeitsteuerung mal etwas anders..

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Zeitsteuerung mal etwas anders..

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      joachim.knape last edited by

      Mein Weib vergisst des öfteren, abends die kellertür abzuschließen. nein, ich sage nicht, wo ich wohne. gg
      die kellertür ist mit einem zigbee aqara sensor ausgestattet, der mir in der vis auch brav anzeigt, ob die tür auf oder zu ist.
      wie kann ich im blockly eine abfrage erstellen, die folgendes können soll:
      abends ab 2100 die tür abfragen.
      wenn noch offen, im periodischen abstand von 5 minuten alexa speak "Kellertür offen" ansagen lassen, bis mein Weib aus dem Sofa hoch ist und die Kellertür geschlossen hat.
      danach das script stoppen.
      diese abfrage sollte aber jeden tag bis ca. nachts um 0200 gemacht werden (also auch, wenn die tür schonmal geschlossen war), falls sie doch nochmal in den keller geht und wäsche hoch holt - und wieder die kellertür vergisst..
      ich stehe hier voll auf dem schlauch, wie ich das mit blockly hinbekomme.. muss ich da mit der timeout funktion arbeiten, oder welchen baustein benutzt man am besten?

      sigi234 1 Reply Last reply Reply Quote 0
      • sigi234
        sigi234 Forum Testing Most Active @joachim.knape last edited by sigi234

        @joachim-knape

        Als Ansatz ein Blockly Skript von @dslraser

        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable id="#;wCh21CJ;hK(*=w2c4l">Zaehler</variable>
            <variable id="HGh$As`$N^0W}Ki[4F6^">Echo_Esszimmer</variable>
            <variable type="interval" id="Fenster_Timer">Fenster_Timer</variable>
            <variable id="gvn.@ec[1RiFVpP7PX{a">Nachricht</variable>
          </variables>
          <block type="variables_set" id="l:]p[.m/yTGjjtWkI2gq" x="313" y="-162">
            <field name="VAR" id="#;wCh21CJ;hK(*=w2c4l">Zaehler</field>
            <value name="VALUE">
              <block type="math_number" id="M}/k`clF3elu1D[RVD[`">
                <field name="NUM">0</field>
              </block>
            </value>
            <next>
              <block type="variables_set" id="|0(W7wFH4ptVC;qeap1P">
                <field name="VAR" id="HGh$As`$N^0W}Ki[4F6^">Echo_Esszimmer</field>
                <value name="VALUE">
                  <block type="field_oid" id="-.18yO;*svLGI{,BF%Jr">
                    <field name="oid">alexa2.0.Echo-Devices.G0913L0592570PHD.Commands.speak</field>
                  </block>
                </value>
                <next>
                  <block type="control" id="@.X-r7ycZ3n=bk5]|VTf">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">alexa2.0.Echo-Devices.G0913L0592570PHD.Player.volume</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="math_number" id="w6{*zt!/{t?p(`:MPc5U">
                        <field name="NUM">60</field>
                      </block>
                    </value>
                    <next>
                      <block type="on_ext" id="F!vi?BKRsLZog%?FBH:g">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                        <field name="CONDITION">ne</field>
                        <field name="ACK_CONDITION"></field>
                        <value name="OID0">
                          <shadow type="field_oid" id=".%Kic*EGFUiKPCQ*RKf^">
                            <field name="oid">hm-rpc.0.OEQ0926852.1.STATE</field>
                          </shadow>
                        </value>
                        <statement name="STATEMENT">
                          <block type="controls_if" id="X3z1#^5Fw/yt.JJH%mgG">
                            <mutation else="1"></mutation>
                            <value name="IF0">
                              <block type="logic_compare" id="kz6a*@]rTi@)ZP{,]#*:">
                                <field name="OP">NEQ</field>
                                <value name="A">
                                  <block type="get_value" id="XEaJQQQ*$nX}=}pk-D/r">
                                    <field name="ATTR">val</field>
                                    <field name="OID">hm-rpc.0.OEQ0926852.1.STATE</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="math_number" id="Yrl[!=%9ZHJUAD;25Obz">
                                    <field name="NUM">0</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="timeouts_clearinterval" id="tO=/.@3F=NZC4)X0%t2V">
                                <field name="NAME">Zaehler</field>
                                <next>
                                  <block type="timeouts_setinterval" id="u#rS73GY/m7T~.#Bh9QU">
                                    <field name="NAME">Fenster_Timer</field>
                                    <field name="INTERVAL">15</field>
                                    <field name="UNIT">min</field>
                                    <statement name="STATEMENT">
                                      <block type="variables_set" id="f55gkbe[jX_=959Esj)[">
                                        <field name="VAR" id="#;wCh21CJ;hK(*=w2c4l">Zaehler</field>
                                        <value name="VALUE">
                                          <block type="math_arithmetic" id="`Lr(7fL~SD:u(8rV=ac9">
                                            <field name="OP">ADD</field>
                                            <value name="A">
                                              <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="PH5Vh.Qc`t|,m%{m^~F5">
                                                <field name="NUM">1</field>
                                              </shadow>
                                              <block type="variables_get" id="3EYN7qJuKcWTcF_bM[T]">
                                                <field name="VAR" id="#;wCh21CJ;hK(*=w2c4l">Zaehler</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <shadow type="math_number" id="c4hKg(Qm0W4-h8^$@.!*">
                                                <field name="NUM">15</field>
                                              </shadow>
                                            </value>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="controls_if" id="su+`OL7B?lh4Ln6_8TQ+">
                                            <mutation else="1"></mutation>
                                            <value name="IF0">
                                              <block type="logic_compare" id="sh3+N!CF]eT4wo`$|sre">
                                                <field name="OP">LTE</field>
                                                <value name="A">
                                                  <block type="get_value" id="M}{|)ER0ipTg/+8l~7qp">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">alexa2.0.Echo-Devices.G090U50784350DKU.Player.volume</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="math_number" id="q{6NWIBv5BL*${DRE:^%">
                                                    <field name="NUM">95</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="control" id=";7LC91tyx]rjyFQM?YqX">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">alexa2.0.Echo-Devices.G090U50784350DKU.Player.volume</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="math_arithmetic" id="_houhb,QcNv{K*?yToWl">
                                                    <field name="OP">ADD</field>
                                                    <value name="A">
                                                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="iK-Rj9=G(|Q,+{~~jPC}">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                      <block type="get_value" id="`;8A%(+e?8_zQL/KHb/^">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">alexa2.0.Echo-Devices.G090U50784350DKU.Player.volume</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <shadow type="math_number" id=",0n9PR$_+:hbRUxXWT?p">
                                                        <field name="NUM">5</field>
                                                      </shadow>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </statement>
                                            <statement name="ELSE">
                                              <block type="control" id="=9(xFgJK8+;wB.[my0of">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">alexa2.0.Echo-Devices.G090U50784350DKU.Player.volume</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="math_number" id="V%jI39P{+5iVFr$^g5L*">
                                                    <field name="NUM">100</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="variables_set" id="*_1Trl}.^)5sC%/.lNvv">
                                                <field name="VAR" id="gvn.@ec[1RiFVpP7PX{a">Nachricht</field>
                                                <value name="VALUE">
                                                  <block type="text_join" id="~aWj=ZJK`;i$u=C#PMk+">
                                                    <mutation items="3"></mutation>
                                                    <value name="ADD0">
                                                      <block type="text" id="GGxz]|4m5/6h_4j6^K+v">
                                                        <field name="TEXT">Das Badezimmerfenster ist seit </field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD1">
                                                      <block type="variables_get" id="!zE$wP|^u8@#Ahq-pkrb">
                                                        <field name="VAR" id="#;wCh21CJ;hK(*=w2c4l">Zaehler</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD2">
                                                      <block type="text" id="Uqzsr=FFV/o+AKIwnzvF">
                                                        <field name="TEXT"> Minuten offen. Bitte schließe das Badezimmerfenster.</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="control_ex" id="Lya;Sx:n`ob6$I0guX]F">
                                                    <field name="TYPE">false</field>
                                                    <field name="CLEAR_RUNNING">FALSE</field>
                                                    <value name="OID">
                                                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="DWgN4ggi@.z8uJj*KlGY">
                                                        <field name="oid">Object ID</field>
                                                      </shadow>
                                                      <block type="variables_get" id="fyWnu]POf[cRwgCVVBBA">
                                                        <field name="VAR" id="HGh$As`$N^0W}Ki[4F6^">Echo_Esszimmer</field>
                                                      </block>
                                                    </value>
                                                    <value name="VALUE">
                                                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="DO8$+jH~2=|[eg`X.aTT">
                                                        <field name="BOOL">TRUE</field>
                                                      </shadow>
                                                      <block type="variables_get" id="k)c6Fdm#4E{L+nAY7YyK">
                                                        <field name="VAR" id="gvn.@ec[1RiFVpP7PX{a">Nachricht</field>
                                                      </block>
                                                    </value>
                                                    <value name="DELAY_MS">
                                                      <shadow type="math_number" id="d}#HDwNCbef$9Qi!P4T1">
                                                        <field name="NUM">0</field>
                                                      </shadow>
                                                    </value>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </statement>
                            <statement name="ELSE">
                              <block type="timeouts_clearinterval" id="e^!S+IEUkz74-KWuLP)]">
                                <field name="NAME">Fenster_Timer</field>
                                <next>
                                  <block type="variables_set" id="ldI2T{QSVIxlFtGIg:$@">
                                    <field name="VAR" id="#;wCh21CJ;hK(*=w2c4l">Zaehler</field>
                                    <value name="VALUE">
                                      <block type="math_number" id=",D0jzu`pl6D)q(n41qZN">
                                        <field name="NUM">0</field>
                                      </block>
                                    </value>
                                    <next>
                                      <block type="control" id="H663]^O0Cj=3z2~;NB~l">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                        <field name="OID">alexa2.0.Echo-Devices.G090U50784350DKU.Player.volume</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="math_number" id="-K226Z`qy=]qR2#@Of6F">
                                            <field name="NUM">80</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="control_ex" id="^G%?e)6F}rujcbmkrQ2U">
                                            <field name="TYPE">false</field>
                                            <field name="CLEAR_RUNNING">FALSE</field>
                                            <value name="OID">
                                              <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="DWgN4ggi@.z8uJj*KlGY">
                                                <field name="oid">Object ID</field>
                                              </shadow>
                                              <block type="variables_get" id="*X6|~z6Y/IQ~:lBRL0-!">
                                                <field name="VAR" id="HGh$As`$N^0W}Ki[4F6^">Echo_Esszimmer</field>
                                              </block>
                                            </value>
                                            <value name="VALUE">
                                              <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="DO8$+jH~2=|[eg`X.aTT">
                                                <field name="BOOL">TRUE</field>
                                              </shadow>
                                              <block type="text" id="Jm4bT`j^~3?/2_^iq_-6">
                                                <field name="TEXT">Danke das Du das Badezimmerfenster geschlossen hast.</field>
                                              </block>
                                            </value>
                                            <value name="DELAY_MS">
                                              <shadow type="math_number" id=")X|08^)cf#:t1*9SP7._">
                                                <field name="NUM">0</field>
                                              </shadow>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </statement>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </xml>
        
        J 1 Reply Last reply Reply Quote 0
        • J
          joachim.knape @sigi234 last edited by

          @sigi234 verwirrtguck.. habs hinbekommen.. kichert
          Unbenannt.png

          B Homoran 2 Replies Last reply Reply Quote 0
          • B
            Burg_Io @joachim.knape last edited by Burg_Io

            @joachim-knape

            wolltest du nicht die zeit von 20.00 - 02.00 uhr erfassen? und warum mit einer pause von 5sek arbeiten?

            meine idee wäre so:

            blockly.JPG

            die sache mit der zeit wurde in dem video von stefan (.verdrahtet.info) gut erklärt:
            ioBroker Blockly #4: Wie erkenne ich die Nacht?

            J 1 Reply Last reply Reply Quote 0
            • J
              joachim.knape @Burg_Io last edited by

              @burg_io das wird so wie in deinem script nicht funktionieren. der trigger soll ja nicht die statusänderung der tür sein (sie könnte ja auch schon seit 1700 offen stehen) sondern die zeit, daß eben ab einer bestimmten uhrzeit mit den alexa hinweisen begonnen wird. und daß alexa dann eben so lange nervt, bis die tür geschlossen wurde.
              die 5sekunden pause ist ein test, weil ich 2 verschiedene dots anspreche und die sich nicht ins gehege kommen sollen.

              B 1 Reply Last reply Reply Quote 0
              • B
                Burg_Io @joachim.knape last edited by

                @joachim-knape

                nicht ganz. er fragt den ganzen tag den trigger ab, aber nur wenn die tür offen ist und die zeit in deinem benannten zeitraum liegt, wird die meldung ausgelöst und aller 5min widerholt.

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @joachim.knape last edited by

                  @joachim-knape wiederhole solange feuert im Millisekundentakt und legt dir deine Installation lahm

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    joachim.knape @Homoran last edited by

                    @homoran also eher so?

                    Unbenannt.png

                    Homoran G 2 Replies Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @joachim.knape last edited by

                      @joachim-knape sagte in Zeitsteuerung mal etwas anders..:

                      also eher so?

                      Ja, eher!
                      Aber da muss noch ein stop Intervall rein wenn die Tür zu ist.

                      Such mal im Forum da gibt es gefühlt hunderte solcher "Erinnerungs"-Blocklys

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        joachim.knape @Homoran last edited by

                        @homoran finde dafür keinen baustein.. grummel

                        Homoran G 2 Replies Last reply Reply Quote 0
                        • G
                          guergen @joachim.knape last edited by guergen

                          @joachim-knape Trigger im Trigger ist nicht gut... nimm einfach ein blaues falls-Objekt!
                          Vielleicht kann man in dem Fall ja auch mit einem "wird aktualisiert" arbeiten

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @joachim.knape last edited by

                            @joachim-knape sagte in Zeitsteuerung mal etwas anders..:

                            @homoran finde dafür keinen baustein.. grummel

                            in etwa so (mit der ganz heißen Nadel gestrickt!):
                            tuerwarner.png

                            ABER:

                            was ist wenn die Tür um 02:00 immer noch nicht zu ist?
                            oder erst um 03:00 geöffnet wird

                            Da sind bestimmt noch Fehler drin

                            G 1 Reply Last reply Reply Quote 0
                            • G
                              guergen @joachim.knape last edited by

                              @joachim-knape Ich würde das hier mal versuchen, da ist der aktuelle Zustand der Tür egal, kommt aber immer drauf an, wann der Sensor sich aktualisiert:
                              fcd19b51-2ff3-4881-8a1c-8b0c3170e38b-grafik.png

                              1 Reply Last reply Reply Quote 0
                              • G
                                guergen @Homoran last edited by

                                @homoran sagte in Zeitsteuerung mal etwas anders..:

                                ABER:

                                was ist wenn die Tür um 02:00 immer noch nicht zu ist?
                                oder erst um 03:00 geöffnet wird

                                Da sind bestimmt noch Fehler drin

                                Wenn die Tür noch nicht zu ist, passiert nix mehr, genauso nach 2:00Uhr!

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

                                  @guergen sagte in Zeitsteuerung mal etwas anders..:

                                  Wenn die Tür noch nicht zu ist, passiert nix mehr, genauso nach 2:00Uhr!

                                  eben!
                                  Keinerlei Warnung und wer weiß wer kann die Schlafenden aus dem Bett klauen

                                  G 1 Reply Last reply Reply Quote 0
                                  • G
                                    guergen @Homoran last edited by

                                    @homoran Aber mal ganz ehrlich, wenn ab 22 Uhr im 10 Minutentakt die Meldung kommt und ignoriert wird, bringt das smarte Haus auch nix!
                                    Es sei denn, man kommt er später heim, dann muss man sich noch was anderes zusätzliches ausdenken. Zum Beispiel, wenn im Flur nach 2 Uhr das Licht angemacht wird, wird der Türsensor abermals abgefragt und alle Lampen im Haus fangen an zu blinken falls die Tür immer noch oder schon wieder auf ist 🙂

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

                                      @guergen sagte in Zeitsteuerung mal etwas anders..:

                                      Aber mal ganz ehrlich, wenn ab 22 Uhr im 10 Minutentakt die Meldung kommt und ignoriert wird, bringt das smarte Haus auch nix!

                                      Mit genug Sitzfleisch der holden Gattin 😂

                                      Das war aber nicht was ich meinte, sondern

                                      @guergen sagte in Zeitsteuerung mal etwas anders..:

                                      man kommt er später heim, dann muss man sich noch was anderes zusätzliches ausdenken

                                      G 1 Reply Last reply Reply Quote 0
                                      • G
                                        guergen @Homoran last edited by

                                        @homoran Man könnte ja auch selbst aufstehen, wenn man so eine Gattin hat 😉
                                        Machbar ist vieles, ich sehe das immer, wenn am scripten bin, was einem da immer noch so einfällt...

                                        J 1 Reply Last reply Reply Quote 0
                                        • J
                                          joachim.knape @guergen last edited by

                                          @guergen ich will mein weib ja nur nerven, bis sie die kellertür zu macht. also hopp hoch vom sofa. und wenn ich abends ausser haus bin und erst später wieder nach hause komme, hab ich ja die kellertür vorher zu gemacht und abgeschlossen. meistens jedenfalls.
                                          warum smart home? weil ich es kann. man kanns auch übertreiben. ich sehe das ganze eben nur als hinweis am abend, daß man die tür schliessen sollte. in einer vis wird es ja auch angezeigt, soll ja nur ein zusätzlicher akustischer hinweis sein, weil man ja nicht ständig handy oder tablet oder screen vor der nase hat.
                                          Unbenannt.png

                                          Homoran 1 Reply Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @joachim.knape last edited by

                                            @joachim-knape

                                            warum nimmst du einen Schedule und nicht den Türkontakt als trigger?
                                            Was steht denn da drin?
                                            im Schlimmsten Fall nutzt der nämlich gar ncihts

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            852
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            32
                                            1627
                                            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