Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst]Position für Timeout ?

    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

    SOLVED [gelöst]Position für Timeout ?

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

      @BBTown Alles klar 😉 kein Problem...

      blockly3.png

      <xml xmlns="http://www.w3.org/1999/xhtml">
        <block type="on_ext" id="Xdgfq1%=t4?7-[dkN{9n" x="37" y="113">
          <mutation items="1"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION">true</field>
          <comment pinned="false" h="80" w="160">Shelly Waschmaschine</comment>
          <value name="OID0">
            <shadow type="field_oid" id="akQsOKjeEHC1,d^?2^.H">
              <field name="oid">shelly.0.SHPLG-S#04160D#1.Relay0.Power</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="comment" id="R$cKI$`~w+G)hF?n2_O4">
              <field name="COMMENT">Spannungsbereich  **Waschmaschine läuft!** - ON</field>
              <next>
                <block type="controls_if" id="]m~.6j3B1{XW=gp?gdk^">
                  <value name="IF0">
                    <block type="logic_compare" id="vq)){?1BUz)#dcgeBm7S">
                      <field name="OP">GT</field>
                      <value name="A">
                        <block type="get_value" id="E2c}57phdFnXyT+1lM`)">
                          <field name="ATTR">val</field>
                          <field name="OID">shelly.0.SHPLG-S#04160D#1.Relay0.Power</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="rd@RJ5@;=:0K+45-Sd?^">
                          <field name="NUM">10</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="};_LwjFGmKzLlL%XdMfe">
                      <mutation delay_input="false"></mutation>
                      <field name="OID">waschmaschine.0.Waschmaschine-Läuft!</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id=")f.dxuD;q`e!`eZ)5[.U">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                      <next>
                        <block type="control" id="HVbQB(7%}W7w4a@c$FJq">
                          <mutation delay_input="true"></mutation>
                          <field name="OID">waschmaschine.0.Waschmaschine_FERTIG!-Schalter</field>
                          <field name="WITH_DELAY">TRUE</field>
                          <field name="DELAY_MS">1</field>
                          <field name="UNIT">sec</field>
                          <field name="CLEAR_RUNNING">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="[@ZR/bgVtvXYT@K*(Pkd">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </statement>
                  <next>
                    <block type="comment" id="#Ll``wDrt;lB}o(-{J`$">
                      <field name="COMMENT">Spannungsbereich  **Waschmaschine Fertig!** - ON</field>
                      <next>
                        <block type="controls_if" id="Y+tAM}-dcs/}/s1Pw4[.">
                          <value name="IF0">
                            <block type="logic_operation" id="6a,u*{3.*]CJv`d_mg~O">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_compare" id="|qFYwQFn@OCZ8_`0_x3E">
                                  <field name="OP">GT</field>
                                  <value name="A">
                                    <block type="get_value" id="4hD^48P;$cK3$[BeGG[w">
                                      <field name="ATTR">val</field>
                                      <field name="OID">shelly.0.SHPLG-S#04160D#1.Relay0.Power</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="math_number" id="=6)V*2~6ZXYUnR`_hp/4">
                                      <field name="NUM">2</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="w%99=#+^i}lR3`hXn]LN">
                                  <field name="OP">LT</field>
                                  <value name="A">
                                    <block type="get_value" id="_{*wE,7^zUb~;ve6{~/D">
                                      <field name="ATTR">val</field>
                                      <field name="OID">shelly.0.SHPLG-S#04160D#1.Relay0.Power</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="math_number" id="0/!EJs?d#^Cs`SQNU)g/">
                                      <field name="NUM">6</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="{4s,,vTW2_RdeH#r4QiG">
                              <mutation delay_input="false"></mutation>
                              <field name="OID">waschmaschine.0.Waschmaschine-Läuft!</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id=";.cJHr.!ti0HSIeTh,k@">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                              <next>
                                <block type="control" id="IE6y#M+CajI*~DjJS}ft">
                                  <mutation delay_input="true"></mutation>
                                  <field name="OID">waschmaschine.0.Waschmaschine_FERTIG!-Schalter</field>
                                  <field name="WITH_DELAY">TRUE</field>
                                  <field name="DELAY_MS">1</field>
                                  <field name="UNIT">sec</field>
                                  <field name="CLEAR_RUNNING">FALSE</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="dI{4ezz77{U:4GxKb_ge">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </statement>
          <next>
            <block type="on_ext" id="dn`dcSp_:Cv^U`tHV;%n">
              <mutation items="1"></mutation>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <value name="OID0">
                <shadow type="field_oid" id="x$~IyL/opau[^n3owx1+">
                  <field name="oid">waschmaschine.0.Waschmaschine-Läuft!</field>
                </shadow>
              </value>
              <statement name="STATEMENT">
                <block type="controls_if" id="IIr%-Cww6AxN$,B?@naw">
                  <value name="IF0">
                    <block type="logic_compare" id="8xAz}TZRZ45,ACac0H/,">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="get_value" id="]`-e-tPv1S{,$$;bp{7B">
                          <field name="ATTR">val</field>
                          <field name="OID">waschmaschine.0.Waschmaschine-Läuft!</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_boolean" id="zd+4F{Wf)_L7IYT(5Ip$">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="telegram" id="u?Gy~b,2*{c.e6E=2E~s">
                      <field name="INSTANCE"></field>
                      <field name="LOG">warn</field>
                      <field name="SILENT">FALSE</field>
                      <field name="PARSEMODE">default</field>
                      <value name="MESSAGE">
                        <shadow type="text" id="q,9w0T^mFW(]kOsr%oks">
                          <field name="TEXT">Waschmaschine wurde gestartet...!</field>
                        </shadow>
                      </value>
                    </block>
                  </statement>
                </block>
              </statement>
              <next>
                <block type="on_ext" id="`gqeB2i|TC2K=lRs2el-">
                  <mutation items="1"></mutation>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="rSgV1ejA0;$`]++Wzvf|">
                      <field name="oid">waschmaschine.0.Waschmaschine_FERTIG!-Schalter</field>
                    </shadow>
                  </value>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="x),^#TeB~9ErD!xYaNhn">
                      <value name="IF0">
                        <block type="logic_compare" id="R8p]CMfv$jx53c?+nY,q">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="`@Fh8!B|uR9E;5P~0PUR">
                              <field name="ATTR">val</field>
                              <field name="OID">waschmaschine.0.Waschmaschine_FERTIG!-Schalter</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="Px-MH!.~qa,4@l*REX}{">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="telegram" id=":r7FME#d3tNf+xSec1fY">
                          <field name="INSTANCE"></field>
                          <field name="LOG">warn</field>
                          <field name="SILENT">FALSE</field>
                          <field name="PARSEMODE">default</field>
                          <value name="MESSAGE">
                            <shadow type="text" id="1;fR%fVv,%81ec1OCg#X">
                              <field name="TEXT">Waschmaschine fertig!</field>
                            </shadow>
                          </value>
                          <next>
                            <block type="control" id="-5HcJrX?ie@pQRKdT=FM">
                              <mutation delay_input="false"></mutation>
                              <field name="OID">alexa2.0.Echo-Devices.G090LF11825724VF.Commands.speak-volume</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="^df^{;E+v/AuoIKe0Z)=">
                                  <field name="NUM">40</field>
                                </block>
                              </value>
                              <next>
                                <block type="control" id="CfivdkKk(PI))l4~ta5O">
                                  <mutation delay_input="false"></mutation>
                                  <field name="OID">alexa2.0.Echo-Devices.G2A0U2048507004D.Commands.speak-volume</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="math_number" id="*;laa]+SS).3Vm#d|uSw">
                                      <field name="NUM">40</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="control" id="k/UC/tTYGWGS+5Pm2E1-">
                                      <mutation delay_input="true"></mutation>
                                      <field name="OID">alexa2.0.Echo-Devices.G090LF11825724VF.Commands.speak</field>
                                      <field name="WITH_DELAY">TRUE</field>
                                      <field name="DELAY_MS">10</field>
                                      <field name="UNIT">sec</field>
                                      <field name="CLEAR_RUNNING">FALSE</field>
                                      <comment pinned="false" h="32" w="79">Echo Küche</comment>
                                      <value name="VALUE">
                                        <block type="text" id="xd26jTj^)2k4m/9)MF;e">
                                          <field name="TEXT">Die Waschmaschine ist jetzt Fertig!</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="control" id="%Y71nM6:mF2QuW[Fycyv">
                                          <mutation delay_input="false"></mutation>
                                          <field name="OID">alexa2.0.Echo-Devices.G2A0U2048507004D.Commands.speak</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <comment pinned="false" h="41" w="81">Echo Wohnzmmer</comment>
                                          <value name="VALUE">
                                            <block type="text" id="f3#AA=mc^.Zb9Zn]EP|A">
                                              <field name="TEXT">Die Waschmaschine ist jetzt Fertig!</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </next>
        </block>
      </xml>
      
      BBTown 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @MartinK. last edited by paul53

        @MartinK sagte in Zeile 8:

        Wartezeit für Spannungsbereich

        Der Variablenbezeichner enthält unzulässige Zeichen: Leerzeichen. Siehe Unterschied zu Zeile 1. Ändere den Bezeichner in Wartezeit_fuer_Spannungsbereich.

        MartinK. 1 Reply Last reply Reply Quote 0
        • BBTown
          BBTown @MartinK. last edited by

          @MartinK
          Wenn ich deine Fragestellung richtig verstanden habe, dann sollte die Lösung so aussehen
          c9dfc818-1f42-42ac-939d-fee4b37bc875-grafik.png

          BBTown MartinK. 2 Replies Last reply Reply Quote 0
          • BBTown
            BBTown @BBTown last edited by BBTown

            Eine Sache hast Du hiermit aber noch nicht gelöst .... es wird noch nicht abgefangen, wenn es zwar eine Änderung von "Power" gibt, diese aber innerhalb von 2 - 6 stattfindet während der timer läuft, dann würde der Timer erneut gestartet.

            MartinK. 1 Reply Last reply Reply Quote 0
            • MartinK.
              MartinK. @BBTown last edited by

              @BBTown Ja, mir geht es nur darum, das über einen Zeitraum von 5 oder 10 Sek geschaut wird, ob sich der Spannungswert im beschriebenen Bereich aufhält, und wenn das 5-10 Sek gegeben ist, soll erst die "steuere" Funktion aktiviert werden.... Ist das so mit deinem ergänzten Timeout möglich ? 😉

              1 Reply Last reply Reply Quote 0
              • MartinK.
                MartinK. @BBTown last edited by

                @BBTown sagte in Position für Timeout ?:

                @MartinK
                Wenn ich deine Fragestellung richtig verstanden habe, dann sollte die Lösung so aussehen
                c9dfc818-1f42-42ac-939d-fee4b37bc875-grafik.png

                Das Problem ist, wenn ich den Timeout so einbaue bekomme ich immer wieder den Fehler in dem Skript angezeigt 😉
                error.png

                BBTown 1 Reply Last reply Reply Quote 0
                • BBTown
                  BBTown @MartinK. last edited by

                  @MartinK
                  das kann ich nicht nachvollziehen ...

                  und ohne die beiden Timer Einträge kommt kein Fehler?
                  Was ist wenn Du die beiden anderen Trigger mal aus dem Script raus nummst, so dass Du dich auf einen Anwendungsfall konzentrieren kannst?

                  Macht es einen Unterschied, wenn Du oben im Trigger anstelle von "Update" dort "egal" auswählst? (kann ich mir aber eigentlich nicht vorstellen)

                  MartinK. 1 Reply Last reply Reply Quote 0
                  • MartinK.
                    MartinK. @BBTown last edited by

                    @BBTown Auch ohne die beiden unteren Anwendungsfälle erscheint der Fehler, und eine Änderung der Trigger Einstellung auf "egal" macht auch keinen unterschied... 😕 ohne den Timeout läuft das Skript super.... ??

                    error4.png

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

                      @MartinK
                      Was steht im generierten Javascript-Code (Zeile 8 ) ?

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

                        @paul53 Leider bin ich noch nicht so der Nerd in Sachen Blockly & Co... 😉 Welcher Javaskript -code (Zeile 8 ) ist denn gemeint??? Der Fehler der im LOG steht in der Zeile 8 nach dem ausführen des Skriptes ?

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

                          @paul53 Da ist der Fehler in Zeile 8 😉

                          err1.png

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

                            @MartinK sagte:

                            Welcher Javaskript -code (Zeile 8 ) ist denn gemeint???

                            Im Blockly-Editor kann man rechts oben (links neben dem Schraubenschlüssel) in die Javascript-Ansicht umschalten, in der der aus Blockly erzeugte JS-Code mit Zeilennummer angezeigt wird. Diesen Code poste bitte ohne die letzte Zeile in Code tags (copy & paste).

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

                              @paul53 Hier ist der Code 😉

                              var Wartezeit_f_C3_BCr_Spannungsbereich;
                              
                              
                              // Shelly Waschmaschine
                              on({id: 'shelly.0.SHPLG-S#04160D#1.Relay0.Power', change: "ne"}, function (obj) {
                                var value = obj.state.val;
                                var oldValue = obj.oldState.val;
                                (function () {if (Wartezeit für Spannungsbereich) {clearTimeout(Wartezeit für Spannungsbereich); Wartezeit für Spannungsbereich = null;}})();
                                // Spannungsbereich  **Waschmaschine läuft!** - ON
                                if (getState("shelly.0.SHPLG-S#04160D#1.Relay0.Power").val > 10) {
                                  setState("waschmaschine.0.Waschmaschine-Läuft!"/*waschmaschine.0.Waschmaschine-Läuft!*/, true);
                                  setStateDelayed("waschmaschine.0.Waschmaschine_FERTIG!-Schalter"/*Waschmaschine_FERTIG!-Schalter*/, false, 1000, false);
                                }
                                // Spannungsbereich  **Waschmaschine Fertig!** - ON
                                if (getState("shelly.0.SHPLG-S#04160D#1.Relay0.Power").val > 2 && getState("shelly.0.SHPLG-S#04160D#1.Relay0.Power").val < 6) {
                                  Wartezeit für Spannungsbereich = setTimeout(function () {
                                    setState("waschmaschine.0.Waschmaschine-Läuft!"/*waschmaschine.0.Waschmaschine-Läuft!*/, false);
                                    setState("waschmaschine.0.Waschmaschine_FERTIG!-Schalter"/*Waschmaschine_FERTIG!-Schalter*/, true);
                                  }, 10000);
                                }
                              });
                              
                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @MartinK. last edited by paul53

                                @MartinK sagte in Zeile 8:

                                Wartezeit für Spannungsbereich

                                Der Variablenbezeichner enthält unzulässige Zeichen: Leerzeichen. Siehe Unterschied zu Zeile 1. Ändere den Bezeichner in Wartezeit_fuer_Spannungsbereich.

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

                                  @paul53 Alles klar !!! Vielen Dank ! Das war der Fehler ! 🙂

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  823
                                  Online

                                  31.9k
                                  Users

                                  80.1k
                                  Topics

                                  1.3m
                                  Posts

                                  blockly
                                  3
                                  16
                                  445
                                  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