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

                            859
                            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