Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Timer erst starten, wenn Gerät nicht mehr aktiv ist

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Timer erst starten, wenn Gerät nicht mehr aktiv ist

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

      @Slowman sagte:

      Mit der Temperatur sieht es dann genauso aus

      Mit der Temperatur würde ich es so machen:

      Blockly_temp.JPG

      Slowman 1 Reply Last reply Reply Quote 1
      • Slowman
        Slowman @paul53 last edited by

        @paul53

        Danke für deine Antwort. Glaube habe mich ein wenig ungenau ausgedrückt. Das mit der Temperatur soll mit beim Laufband mit rein. Hintergrund, wenn Sommer und 20 Grad draußen sind, brauche ich keine Erinnerung von jedem Fenster, das es offen ist. Temperatur aber unter 20 Grad. Soll er mich erinnern, das der Keller/Bad usw. usf nicht auskühlt.

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

          @Slowman sagte:

          wenn Sommer und 20 Grad draußen sind, brauche ich keine Erinnerung von jedem Fenster

          Dann mache eine falls-Klammer um die restlichen Prüfungen:

          falls AT < 20
          mache ...
          
          Slowman 1 Reply Last reply Reply Quote 1
          • Slowman
            Slowman @paul53 last edited by Slowman

            @paul53

            Hat nicht so funktioniert, der Tipp von oben. Habe jetzt es soweit, das es funktioniert. Es klappt (Fenster offen), wenn Laufband aus ist kommt eine Meldung , wenn LB an ist kommt keine Meldung. Aber, wenn LB an ist/ Fenster offen und das LB wird ausgeschaltet kommt keine Meldung, das das Fenster offen ist 🙄

            Wo jetzt noch eine Routine rein muss..... Wenn ich bei Falls Objekt den Switch vom LB mit reinnehme, bedankt sich Alexa bei jeder Änderung.

            Screenshot_2020-11-03 javascript - ioBroker(1).png

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

              @Slowman sagte:

              Wenn ich bei Falls Objekt den Switch vom LB mit reinnehme, bedankt sich Alexa bei jeder Änderung.

              Der Trigger wird benötigt, um auf Änderung des LB zu reagieren. Versuche es mal so im unteren Teil:

              Blockly_temp.JPG

              Hinweis: Erst eine dummy-Variable erstellen, diese in das Editor-Fenster ziehen, anschließend in die Javascript-Ansicht und wieder zurück wechseln und dann anstelle der dummy-Variable die Variable Intervall selektiere.

              Slowman 1 Reply Last reply Reply Quote 1
              • Slowman
                Slowman @paul53 last edited by

                @paul53

                Macht er nicht. So sieht der Script bei mir aus. Teste morgen weiter.

                Screenshot_2020-11-03 javascript - ioBroker(2).png

                var Intervall;
                
                
                on({id: 'deconz.0.Sensors.35.open', change: "ne"}, function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  if (getState("deconz.0.Sensors.35.open").val != 0 && getState("zwave2.0.Node_019.Binary_Switch.currentValue").val == false) {
                    Intervall = setInterval(function () {
                      setState("alexa2.0.Echo-Devices.G090U50783952J5A.Commands.speak"/*speak*/, '30;Das Fenster am Laufband ist seit 10 Minuten offen');
                    }, 60000);
                  } else if (Intervall) {
                    (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
                    if (!getState("deconz.0.Sensors.35.open").val) {
                      setState("alexa2.0.Echo-Devices.G090U50783952J5A.Commands.speak"/*speak*/, '30;Danke, das Du das Fenster geschlossen hast.');
                    }
                  }
                });
                
                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Slowman last edited by

                  @Slowman
                  Du musst das LB als Trigger hinzufügen.

                  Slowman 1 Reply Last reply Reply Quote 1
                  • Slowman
                    Slowman @paul53 last edited by

                    @paul53

                    Danke funktioniert jetzt.

                    Wenn ich das mit der Außentemperatur umsetzen möchte, kommt die Außentemperatur auch in den Trigger mit rein?

                    Slowman paul53 2 Replies Last reply Reply Quote 0
                    • Slowman
                      Slowman @Slowman last edited by

                      Hmmm.... habe den Script jetzt für ein anderes Fenster angepasst und Alexa labbert mich unregelmässig mit "Danke das du das Fenster geschlossen hast" zu. Was bei dem Script mit dem LB nicht passiert.

                      Screenshot_2020-11-04 javascript - ioBroker.png

                      Den Außenfühler aus dem Trigger nehmen?

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

                        @Slowman sagte:

                        Wenn ich das mit der Außentemperatur umsetzen möchte, kommt die Außentemperatur auch in den Trigger mit rein?

                        Nein.

                        Slowman 1 Reply Last reply Reply Quote 1
                        • Slowman
                          Slowman @paul53 last edited by Slowman

                          Danke für die Hilfe paul53 👍

                          Hier der fertige Blockly, vielleicht kann ja Jemand diesen gebrauchen.

                          Screenshot_2020-11-04 javascript - ioBroker.png

                          <xml xmlns="https://developers.google.com/blockly/xml">
                            <variables>
                              <variable type="interval" id="Intervall">Intervall</variable>
                            </variables>
                            <block type="on_ext" id="F!vi?BKRsLZog%?FBH:g" x="145" y="-541">
                              <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="wVxaT/vXrZp%oq.$ztTZ">
                                  <field name="oid">deconz.0.Sensors.36.open</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="controls_if" id="XW_hOHdKCcq}gh.l`+$j">
                                  <value name="IF0">
                                    <block type="logic_compare" id="}xOLFNov3G6s*}2,Z2UM">
                                      <field name="OP">LTE</field>
                                      <value name="A">
                                        <block type="get_value" id="6e}P^ZNT_Jy6-ja?r]U{">
                                          <field name="ATTR">val</field>
                                          <field name="OID">deconz.0.Sensors.33.temperature</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="math_number" id=",G{QbJ|6c5{,Iq^!$Li3">
                                          <field name="NUM">15</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <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">deconz.0.Sensors.36.open</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_setinterval" id="u#rS73GY/m7T~.#Bh9QU">
                                          <field name="NAME">Intervall</field>
                                          <field name="INTERVAL">10</field>
                                          <field name="UNIT">min</field>
                                          <statement name="STATEMENT">
                                            <block type="control" id="=*B,vjZW*hnjeJ!PgxP@">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">alexa2.0.Echo-Devices.G090U50783952J5A.Commands.speak</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="text" id="s(HE-yMfiJs%,njRSwwp">
                                                  <field name="TEXT">20;Das Fenster im Gäste WC ist seit 10 Minuten offen</field>
                                                </block>
                                              </value>
                                            </block>
                                          </statement>
                                        </block>
                                      </statement>
                                      <statement name="ELSE">
                                        <block type="timeouts_clearinterval" id="e^!S+IEUkz74-KWuLP)]">
                                          <field name="NAME">Intervall</field>
                                          <next>
                                            <block type="control" id="|X=~p7*8$lmTqfr`DR.L">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">alexa2.0.Echo-Devices.G090U50783952J5A.Commands.speak</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="text" id="r41/^`!#QQ8#L)reQ5BH">
                                                  <field name="TEXT">20;Danke, das Du das Fenster im Gäste WC geschlossen hast.</field>
                                                </block>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </statement>
                            </block>
                          </xml>
                          
                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          845
                          Online

                          32.0k
                          Users

                          80.4k
                          Topics

                          1.3m
                          Posts

                          2
                          16
                          620
                          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