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.
    • BBTown
      BBTown @MartinK. last edited by

      @MartinK stell bitte das Blockly selbst hier auch rein, dann ist es leichter dich zu unterstützen

      MartinK. 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. @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
          • 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

                                    689
                                    Online

                                    31.8k
                                    Users

                                    79.9k
                                    Topics

                                    1.3m
                                    Posts

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