Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [Anfänger] Blockly Timeout

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Anfänger] Blockly Timeout

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      EasyTJ @DJMarc75 last edited by EasyTJ

      zeigen

      Protokoll:
      Screenshot 2023-08-10 145433.png

      Erklärung dazu:
      Screenshot 2023-08-10 145504.png

      Ja ich war auch irritiert - war mir so nicht bewusst. Weiß auch nicht, wer hier wichtiges aufm 5GHz WLAN-Netz unterwegs ist 😄

      Kannst du mir dein Script vielleicht in Worten erklären, wo der Unterschied zu meinem ist und wieso du das so baust? Ich lerne noch 🙂
      Wieso stoppst du den Timeout obwohl gar keiner läuft?
      Dein Timeout startet ja nachdem gecheckt wurde, ob beide Handys noch im WLAN sind ... aber genau da soll ja in meinem Verständnis zunächst gewartet werden.

      DJMarc75 1 Reply Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @EasyTJ last edited by

        @easytj sagte in [Anfänger] Blockly Timeout:

        Wieso stoppst du den Timeout obwohl gar keiner läuft?

        Es wird der Timeout gestoppt falls er läuft.

        @easytj sagte in [Anfänger] Blockly Timeout:

        nachdem gecheckt wurde, ob beide Handys noch im WLAN sind

        ah, sorry...

        Screenshot 2023-08-10 150333.png

        E 1 Reply Last reply Reply Quote 0
        • E
          EasyTJ @DJMarc75 last edited by

          @djmarc75

          sieht mir identisch aus 🙂 ... falsches Bild ausgewählt oder ich bin blind 😉

          DJMarc75 1 Reply Last reply Reply Quote 0
          • DJMarc75
            DJMarc75 @EasyTJ last edited by DJMarc75

            @easytj siehe die NICHT-Blöcke 😉

            Screenshot 2023-08-10 150333.png

            E 1 Reply Last reply Reply Quote 1
            • E
              EasyTJ @DJMarc75 last edited by

              @djmarc75

              OK - ich bin blind 😄

              Wieso baust du den Code andersherum auf? Was bewirkt das? Und wieso ist der Timeout nach der State-Prüfung?
              Kannst du mir das kurz erklären, damit ich das verstehe?

              DJMarc75 1 Reply Last reply Reply Quote 0
              • DJMarc75
                DJMarc75 @EasyTJ last edited by

                @easytj sagte in [Anfänger] Blockly Timeout:

                wieso ist der Timeout nach der State-Prüfung

                na weil es sonst nicht funktioniert. Erst wenn beide States auf false stehen soll ja der Timeout starten.
                Vorher macht das ja wenig Sinn.
                Sobald sich nur ein Status auf true ändert wird der Timeout gestoppt - unabhängig ob der Timeout läuft oder nicht.

                Falls ein Status auf true wechselt wird der "sonst" Block ausgeführt.

                Das nennt man eine Logikmaschine 😉

                E 1 Reply Last reply Reply Quote 0
                • E
                  EasyTJ @DJMarc75 last edited by EasyTJ

                  @djmarc75

                  Vielleicht habe ich einen Denkfehler aber folgendes möchte ich umsetzen:

                  Sobald sich ein Status der Handys ändert, soll er 30 Sekunden warten und dann prüfen, ob immer noch beide Handys auf false stehen. Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.

                  Wenn du mir sagst, dass dein Skript exakt das macht, versuche ich es mal damit und versuche es auch, es genau zu verstehen...

                  DJMarc75 1 Reply Last reply Reply Quote 0
                  • DJMarc75
                    DJMarc75 @EasyTJ last edited by DJMarc75

                    @easytj sagte in [Anfänger] Blockly Timeout:

                    versuche ich es mal damit und versuche es auch

                    @easytj sagte in [Anfänger] Blockly Timeout:

                    Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.

                    na mach doch einfach - weil genau DAS macht das Skript durch den STOP des Timeouts wenn sich einer der 2 Trigger ändert.

                    Mehr helfen kann ich jetzt leider nicht.

                    E 2 Replies Last reply Reply Quote 0
                    • E
                      EasyTJ @DJMarc75 last edited by

                      @djmarc75

                      Du hast mir sehr geholfen DANKE! Aber leider auch für Verwirrung meinerseits gesorgt, aber das soll nicht dein Problem sein :).
                      Ich bewege mich erst seit kurzem in der Welt von iobroker und Blockly

                      1 Reply Last reply Reply Quote 0
                      • E
                        EasyTJ @DJMarc75 last edited by

                        @djmarc75

                        Screenshot 2023-08-10 155806.png

                        So hats leider gerade nicht funktioniert... der hat umgehend beide Modi hin- und hergeschaltet

                        T DJMarc75 2 Replies Last reply Reply Quote 0
                        • T
                          TT-Tom @EasyTJ last edited by TT-Tom

                          @easytj

                          Nimm bei dir mal bitte „= falsch“ raus oder vorne das nicht. Und teste dann nochmal.

                          1 Reply Last reply Reply Quote 1
                          • DJMarc75
                            DJMarc75 @EasyTJ last edited by

                            @easytj sagte in [Anfänger] Blockly Timeout:

                            So hats leider gerade nicht funktioniert

                            Ist ja klar warum.... jetzt importier mal den folgenden Code und passe NUR die Datenpunkte an

                            <xml xmlns="https://developers.google.com/blockly/xml">
                             <variables>
                               <variable type="timeout" id="timeout">timeout</variable>
                             </variables>
                             <block type="on_ext" id="6i9aDrpxfr6{P5}#]Gd3" x="-980" y="-192">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                               <field name="CONDITION">ne</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id="Ep]pzf-TW[6rwK0pKV3X">
                                   <field name="oid">default</field>
                                 </shadow>
                               </value>
                               <value name="OID1">
                                 <shadow type="field_oid" id="ce(+;p@]WiU#V5^y`I+r">
                                   <field name="oid">default</field>
                                 </shadow>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="timeouts_cleartimeout" id="pxqt=XjxD|6%?^M*eixY">
                                   <field name="NAME">timeout</field>
                                   <next>
                                     <block type="controls_if" id="BIL*UIrl@GsM~vK3n]00">
                                       <mutation else="1"></mutation>
                                       <value name="IF0">
                                         <block type="logic_operation" id="+kgZY{lAQqB2f8L+^uRW" inline="false">
                                           <field name="OP">AND</field>
                                           <value name="A">
                                             <block type="logic_negate" id="oG$jgJNqS]]2Y*PdTZmw">
                                               <value name="BOOL">
                                                 <block type="get_value" id="_K2T8#tZn*s#QU[Y..rG">
                                                   <field name="ATTR">val</field>
                                                   <field name="OID">ID auswählen</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="logic_negate" id="8jC)J`KfV9uRZ+mm||DK">
                                               <value name="BOOL">
                                                 <block type="get_value" id="h5;b)+(a5K2T;b(lnDRA">
                                                   <field name="ATTR">val</field>
                                                   <field name="OID">ID auswählen</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="timeouts_settimeout" id="ZnYr6-i^:Ak7Ma6:q?|F">
                                           <field name="NAME">timeout</field>
                                           <field name="DELAY">30</field>
                                           <field name="UNIT">sec</field>
                                           <statement name="STATEMENT">
                                             <block type="control" id=".s,/EG^/hue`%e;nE(QR">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">Object ID</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="math_number" id="k_hF./AYrL]RcmIjg)~4">
                                                   <field name="NUM">0</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </statement>
                                         </block>
                                       </statement>
                                       <statement name="ELSE">
                                         <block type="control" id=")J$K3TIq[Q.foC:bt^uS">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                           <field name="OID">Object ID</field>
                                           <field name="WITH_DELAY">FALSE</field>
                                           <value name="VALUE">
                                             <block type="math_number" id="[QTzOF$K=*?3eU}|#L9(">
                                               <field name="NUM">1</field>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                             </block>
                            </xml>
                            

                            E 1 Reply Last reply Reply Quote 0
                            • E
                              EasyTJ @DJMarc75 last edited by

                              @djmarc75
                              @TT-Tom

                              Also das "nicht" weglassen führte nicht zum Ergebnis. Das =false" löschen allerdings schon - damit scheint es zu klappen... Sehr gut danke
                              Und sorry, dass ich so unaufmerksam den Code gelesen habe

                              DJMarc75 1 Reply Last reply Reply Quote 0
                              • DJMarc75
                                DJMarc75 @EasyTJ last edited by

                                @easytj zeig nochmal Dein Blockly bitte

                                E 1 Reply Last reply Reply Quote 0
                                • E
                                  EasyTJ @DJMarc75 last edited by

                                  @djmarc75 Screenshot 2023-08-11 214741.png

                                  sorry, jetzt erst gesehen ... so siehts aus und funktioniert auch 🙂

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  878
                                  Online

                                  32.0k
                                  Users

                                  80.4k
                                  Topics

                                  1.3m
                                  Posts

                                  3
                                  17
                                  520
                                  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