Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wenn 3 von 6 Zuständen "true“ dann Schalter "true"

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wenn 3 von 6 Zuständen "true“ dann Schalter "true"

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

      Hallo ioBroker Community,

      Ich bin zurzeit Dabei einen Blockly zu erstellen der einen Pelletofen einschalten soll wenn 3 von 6 Stellventile „TRUE“ Sind.

      Geschaltet wird der Pelletofen über eine Klemmleiste auf der Rückseite des Pelletofens. Mittels potenzialfreiem Schaltausgang den ich mit einem einfachen ZigBee on/off Relais Und einem Wechselrelais realisiert habe.

      Nun möchte ich, dass der Pelletofen ausgeschaltet wird, wenn alle 6 Stellventile „FALSE“ sind. Das ist soweit kein Problem für mich.

      Problematisch wirds für mich, wenn ich den Pelletofen Eingeschaltet haben möchte, wenn 3 von 6 Stellventile „true“ sind.
      Dann soll der Pelletofen mit einer Verzögerung von 30 Minuten Eingeschaltet werden.

      So sieht mein Blockly momentan aus.

      Blockly.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <block type="on_ext" id="xBu2Qc]YVsDO;OOcV$%9" x="-188" y="63">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="6"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="FWqCUxJahfFfd`kb1$[p">
              <field name="oid">zigbee.0.60a423fffe053fc3.state</field>
            </shadow>
          </value>
          <value name="OID1">
            <shadow type="field_oid" id="Gh2irAHBXY}8RWD~rld?">
              <field name="oid">zigbee.0.842e14fffefce74f.state</field>
            </shadow>
          </value>
          <value name="OID2">
            <shadow type="field_oid" id="f`#^v[.eRMYB){,M.pYO">
              <field name="oid">zigbee.0.842e14fffefda6a0.state</field>
            </shadow>
          </value>
          <value name="OID3">
            <shadow type="field_oid" id="tel?8=$Bn2k{I}ZJuUAV">
              <field name="oid">zigbee.0.60a423fffe07e970.state</field>
            </shadow>
          </value>
          <value name="OID4">
            <shadow type="field_oid" id="l`4a]1}m5BJZv;Gv:Wx@">
              <field name="oid">zigbee.0.5c0272fffe289375.state</field>
            </shadow>
          </value>
          <value name="OID5">
            <shadow type="field_oid" id="R9Rr4j#.(DF_JaY_M%*+">
              <field name="oid">zigbee.0.bc33acfffe47e3a9.state</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="hl]?*j}NdDv`9^DI`u]0">
              <mutation elseif="1"></mutation>
              <value name="IF0">
                <block type="logic_operation" id="-y`AF`U,~egh!BFh5#$%" inline="false">
                  <field name="OP">AND</field>
                  <value name="A">
                    <block type="logic_operation" id="8zy`l[q6_mios0e(SBQq" inline="false">
                      <field name="OP">AND</field>
                      <value name="A">
                        <block type="logic_compare" id="Y=7=nJ0B@HC9n--mf!o1">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="7CL?TF|_i}R},3g!J|8!">
                              <field name="ATTR">val</field>
                              <field name="OID">zigbee.0.588e81fffed98373.state</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="D_zYuob5`iIMIc{8xD{A">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_compare" id="o]N+^EIeQbfDH)v6al_]">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="W=u24@DvFoB*eeh#{]9u">
                              <field name="ATTR">val</field>
                              <field name="OID">0_userdata.0.Heizung.Heizperiode</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="n9#|irST*XT`TO8{}=3G">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_operation" id="m?6`qgRMJbWDEaF$:)z8" inline="false">
                      <field name="OP">AND</field>
                      <value name="A">
                        <block type="logic_operation" id="}Y%8ot{-lg[%`4K+LabK" inline="false">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="logic_operation" id="ayPA#_^GA`qH#J1=$sOq" inline="false">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_compare" id="b7lG*E_w~ObP|@W.B$l#">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id="EG%BLfx^pQvI7ck-`Wm6">
                                      <field name="ATTR">val</field>
                                      <field name="OID">zigbee.0.842e14fffefda6a0.state</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="d16fe:{}oc*sf(B?AI7)">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="W6/Ox-YaG23(EmgaLKf-">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id="X}zW$qMr!}O-J}?p}+lx">
                                      <field name="ATTR">val</field>
                                      <field name="OID">zigbee.0.842e14fffefce74f.state</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="caN`T$!!725lG[gK68|*">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_operation" id="F}C`;-Vsli5pimdidGAe" inline="false">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_compare" id="xCR^.3O=mqGG)/yaO9!=">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id="mc(8m6qmePvjR{Teq|K)">
                                      <field name="ATTR">val</field>
                                      <field name="OID">zigbee.0.60a423fffe07e970.state</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="~j$D1k~PbjU~K*!A{[P~">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="6WQoR+,WFi50Xj%w|!|G">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="get_value" id="~4DwEzMEc`V[[c~I.f[9">
                                      <field name="ATTR">val</field>
                                      <field name="OID">zigbee.0.5c0272fffe289375.state</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="4)Yg5L6W~/A+J+I]UL#}">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_operation" id="uwG#l0GHovz{w:!7Y7UK" inline="false">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="logic_compare" id="VUy%qxA$:A;1X;.k]O[T">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="get_value" id="!yQ8X!gkbow.yBSw+?+c">
                                  <field name="ATTR">val</field>
                                  <field name="OID">zigbee.0.60a423fffe053fc3.state</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_boolean" id="Lb0}bW7.(,)P}+I$y3[B">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_compare" id="6h_-+yQPY0~L+1VJdg|.">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="get_value" id="hHYei}c]2DQgh}gCsV8P">
                                  <field name="ATTR">val</field>
                                  <field name="OID">zigbee.0.bc33acfffe47e3a9.state</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_boolean" id="3Je^m).fz![,YmW9n^%d">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="control" id="sCq:Y5[E#%/G@)SA(Ojd">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">zigbee.0.588e81fffed98373.state</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="logic_boolean" id="_EfHyG,mwzrEQY#/`DP[">
                      <field name="BOOL">FALSE</field>
                    </block>
                  </value>
                </block>
              </statement>
              <statement name="DO1">
                <block type="control" id="6=N1GN{]9KBVKi]/x`78">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                  <field name="OID">zigbee.0.588e81fffed98373.state</field>
                  <field name="WITH_DELAY">TRUE</field>
                  <field name="DELAY_MS">30</field>
                  <field name="UNIT">min</field>
                  <field name="CLEAR_RUNNING">FALSE</field>
                  <value name="VALUE">
                    <block type="logic_boolean" id="_4A:|%HdAeI{$N`{#TnA">
                      <field name="BOOL">TRUE</field>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
          </statement>
        </block>
      </xml>
      
      JLeg paul53 2 Replies Last reply Reply Quote 0
      • JLeg
        JLeg @DK43 last edited by

        @davut-karabulut
        Oha; ich glaube ich würde einfach in einer Schleife durch alle Ventil-States durchiterieren, und die mit Status „true“ zählen.
        Bei Anzahl=0 = Ofen aus, bei Anzahl=3 (oder >= 3 etc) = Ofen an. Ist bestimmt übersichtlicher… 😉

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

          @davut-karabulut sagte: wenn 3 von 6 Stellventile „true“ sind. Dann soll der Pelletofen mit einer Verzögerung von 30 Minuten Eingeschaltet werden.

          Vorschlag:

          Bild_2023-01-10_164436018.png

          Asgothian 1 Reply Last reply Reply Quote 1
          • Asgothian
            Asgothian Developer @paul53 last edited by Asgothian

            @Davut-Karabulut

            Alternative zu dem Vorschlag von @paul53

            Screenshot 2023-01-10 at 08.01.54.png
            Sieht erstmal komplizierter aus, aber

            • Es wird nicht bei jedem Trigger nach allen States geschaut
            • Das Einschalten passiert 30 Minuten nachdem der 3. State auf Wahr gegangen ist. Das ist in dem Beispiel von @paul53 nicht so - da kann es im ungünstigsten Fallpassieren das nie eingeschaltet wird (3. State auf true, dann 29 min Später der 4. auf true, danach jeweils vor Ablauf der 30 Minuten ein Wechsel eines States von true auf false, so das am Ende immer mindestens 3 States auf true bleiben=> der Steuere Befehl wird nie ausgeführt )

            Hinter dem Spoiler ist das XML zum Import.

            <xml xmlns="https://developers.google.com/blockly/xml">
             <variables>
               <variable id=".D=aB}(6C}%cBx`vkP=r">ids</variable>
               <variable id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</variable>
               <variable id=",01^jHq5AE3):JanvpLU">i</variable>
               <variable id="dyjp:r^cj*Z-m:$,C!yb">present</variable>
               <variable type="timeout" id="timeout">timeout</variable>
               <variable id="{O?1;m:58#(y,@`or-76">timeout</variable>
             </variables>
             <block type="variables_set" id="@z4y0CJ32@5/]99cwtc*" x="278" y="111">
               <field name="VAR" id=".D=aB}(6C}%cBx`vkP=r">ids</field>
               <value name="VALUE">
                 <block type="lists_create_with" id="*pyydyy.:0rJsv,Q_.5[">
                   <mutation items="6"></mutation>
                   <value name="ADD0">
                     <block type="field_oid" id="HHR}I-:gsXYpLp~Io5LJ">
                       <field name="oid">default</field>
                     </block>
                   </value>
                   <value name="ADD1">
                     <block type="field_oid" id="HCbiWV]{TsDbm2$jX3:;">
                       <field name="oid">default</field>
                     </block>
                   </value>
                   <value name="ADD2">
                     <block type="field_oid" id="VccI^ak.ochCC*(:oT0^">
                       <field name="oid">default</field>
                     </block>
                   </value>
                   <value name="ADD3">
                     <block type="field_oid" id="T}$NXMy.p3m-6bu4AS8`">
                       <field name="oid">default</field>
                     </block>
                   </value>
                   <value name="ADD4">
                     <block type="field_oid" id="$?qCz4i,q+wIDwt_9@3x">
                       <field name="oid">default</field>
                     </block>
                   </value>
                   <value name="ADD5">
                     <block type="field_oid" id="s5Us@Kuvrl!hi`2Wl!aB">
                       <field name="oid">default</field>
                     </block>
                   </value>
                 </block>
               </value>
               <next>
                 <block type="variables_set" id="=#!nUC#DpO1ZF}z0x)8H">
                   <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                   <value name="VALUE">
                     <block type="lists_create_with" id="L8$JB`1#0e.*P%{L)b0y">
                       <mutation items="0"></mutation>
                     </block>
                   </value>
                   <next>
                     <block type="controls_forEach" id="d*lEHJ3Y;|1e`nE8EAFs">
                       <field name="VAR" id=",01^jHq5AE3):JanvpLU">i</field>
                       <value name="LIST">
                         <block type="variables_get" id="v1Cbvy|`_H~E}E1Mq]2C">
                           <field name="VAR" id=".D=aB}(6C}%cBx`vkP=r">ids</field>
                         </block>
                       </value>
                       <statement name="DO">
                         <block type="controls_if" id="Gk%=DzP$8yJ{_eG4#?dU">
                           <value name="IF0">
                             <block type="get_value_var" id="oL]0O!LlWR0ur2^4.HxY">
                               <field name="ATTR">val</field>
                               <value name="OID">
                                 <shadow type="text" id=")j],4R27R3qO:g7Hb4!V">
                                   <field name="TEXT"></field>
                                 </shadow>
                                 <block type="variables_get" id=")7?R7fFEzuj;Y9w(t+bw">
                                   <field name="VAR" id=",01^jHq5AE3):JanvpLU">i</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <statement name="DO0">
                             <block type="lists_setIndex" id="FIM)A(qAT!7.-:+o(HJM">
                               <mutation at="false"></mutation>
                               <field name="MODE">INSERT</field>
                               <field name="WHERE">LAST</field>
                               <value name="LIST">
                                 <block type="variables_get" id="8vbFk/=8,ShgCkW83kvL">
                                   <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                                 </block>
                               </value>
                               <value name="TO">
                                 <block type="variables_get" id="MX-zT|1IKwRB]Jw!S+|F">
                                   <field name="VAR" id=",01^jHq5AE3):JanvpLU">i</field>
                                 </block>
                               </value>
                             </block>
                           </statement>
                         </block>
                       </statement>
                       <next>
                         <block type="on_ext" id="14m1E(h%.0t{K{PKFb}E">
                           <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="O$vuh#kIqHAm`0.Q(t.S">
                               <field name="oid">default</field>
                             </shadow>
                             <block type="variables_get" id="Gs,@,3J8(EyHn+z]T8Xh">
                               <field name="VAR" id=".D=aB}(6C}%cBx`vkP=r">ids</field>
                             </block>
                           </value>
                           <statement name="STATEMENT">
                             <block type="variables_set" id="wWH_UnZYj7v^?M?jartX">
                               <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                               <value name="VALUE">
                                 <block type="lists_indexOf" id="LPT}fy52cB|K*GZ@8v,l">
                                   <field name="END">FIRST</field>
                                   <value name="VALUE">
                                     <block type="variables_get" id="o9}Wn4pVJq}i-^QGLD6;">
                                       <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                                     </block>
                                   </value>
                                   <value name="FIND">
                                     <block type="on_source" id="Ij_DUiymXO._Aog[T5x;">
                                       <field name="ATTR">id</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <next>
                                 <block type="controls_if" id="v/2{H*MD4CoMyt2Svk8%">
                                   <mutation else="1"></mutation>
                                   <value name="IF0">
                                     <block type="on_source" id="fDEI(!*5J)i6a{%Cb+KI">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                   <statement name="DO0">
                                     <block type="controls_if" id="hv(3j#v(]kEw0@?C`wW]">
                                       <value name="IF0">
                                         <block type="logic_compare" id="?wBf{hKjRO2Ee.O^qhF9">
                                           <field name="OP">GT</field>
                                           <value name="A">
                                             <block type="variables_get" id="9Qv39b=3(=6Q/uE:7#2c">
                                               <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="math_number" id="v.gvctei6@x*HM[bEBY*">
                                               <field name="NUM">0</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="lists_setIndex" id="887Dc+7d?5ar((Ur;g)$">
                                           <mutation at="false"></mutation>
                                           <field name="MODE">INSERT</field>
                                           <field name="WHERE">LAST</field>
                                           <value name="LIST">
                                             <block type="variables_get" id="+!~jdb6Z[?eOv3NuT3@9">
                                               <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                                             </block>
                                           </value>
                                           <value name="TO">
                                             <block type="on_source" id="eO/l.#q/I8OZ(0wC)SWS">
                                               <field name="ATTR">id</field>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </statement>
                                   <statement name="ELSE">
                                     <block type="controls_if" id="RR6scQz^jw_6Ggaz6b|m">
                                       <value name="IF0">
                                         <block type="logic_compare" id="8q]CY9c:R)O+^1EAUe$)">
                                           <field name="OP">LT</field>
                                           <value name="A">
                                             <block type="variables_get" id="%#~lD$zPj`,*Bc_7NY/6">
                                               <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="math_number" id="piS2!FlA:Uk6UzcGZFmy">
                                               <field name="NUM">1</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="lists_getIndex" id="!e=P#vhz]]9vramWh+-9">
                                           <mutation statement="true" at="true"></mutation>
                                           <field name="MODE">REMOVE</field>
                                           <field name="WHERE">FROM_START</field>
                                           <value name="VALUE">
                                             <block type="variables_get" id="#rz2djN7?{K3m8^K4xo9">
                                               <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                                             </block>
                                           </value>
                                           <value name="AT">
                                             <block type="variables_get" id="dG$=eREt-iWe3`H5b(xv">
                                               <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </statement>
                                   <next>
                                     <block type="comment" id="ULnjmNk/1yz#s$5{n./r">
                                       <field name="COMMENT">Ab hier: Objekt ID ist immer die des Aktors zum schalten</field>
                                       <next>
                                         <block type="controls_if" id="$#C(_;~a*YD.;jK=:uQ.">
                                           <mutation elseif="1"></mutation>
                                           <value name="IF0">
                                             <block type="logic_operation" id="/n:gX3Ww[J}!TqVKR8%S">
                                               <field name="OP">AND</field>
                                               <value name="A">
                                                 <block type="logic_compare" id="ZI_3kw%6oX}VeNXGdu=6">
                                                   <field name="OP">EQ</field>
                                                   <value name="A">
                                                     <block type="lists_length" id="om+Nx9hmjh|=t-CgLkL#">
                                                       <value name="VALUE">
                                                         <block type="variables_get" id="%PnP7|]?shfLo_+PIFu$">
                                                           <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="math_number" id="be+X85t{/.~HKK/s,YGw">
                                                       <field name="NUM">3</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <block type="logic_negate" id="pz~:/|E-zJ`BpaWTS#6-">
                                                   <value name="BOOL">
                                                     <block type="get_value" id="NZ,4XGcf:,/W+iBK(yBU">
                                                       <field name="ATTR">val</field>
                                                       <field name="OID">select ID</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="controls_if" id="wc(~PaZs!35=Ie)q,ciI">
                                               <value name="IF0">
                                                 <block type="logic_negate" id="0A2foaI:fLqiDMdEbq-E">
                                                   <value name="BOOL">
                                                     <block type="variables_get" id="qm^`qo)k;AmHv?``2=5j">
                                                       <field name="VAR" id="{O?1;m:58#(y,@`or-76">timeout</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO0">
                                                 <block type="timeouts_settimeout" id="V)RF*`x$I^rpdQFx[:f;">
                                                   <field name="NAME">timeout</field>
                                                   <field name="DELAY">30</field>
                                                   <field name="UNIT">min</field>
                                                   <statement name="STATEMENT">
                                                     <block type="variables_set" id="v2JbaRwp{xft%UmPBv#W">
                                                       <field name="VAR" id="{O?1;m:58#(y,@`or-76">timeout</field>
                                                       <value name="VALUE">
                                                         <block type="logic_null" id="XZ{v#OsnX5Xe_k?Y3yR0"></block>
                                                       </value>
                                                       <next>
                                                         <block type="controls_if" id="$a$+|Ru[5e-vt).1n(tV">
                                                           <value name="IF0">
                                                             <block type="logic_negate" id=",@jzx0|BybMJSgd;Lr!S">
                                                               <value name="BOOL">
                                                                 <block type="get_value" id="w@UC%MJLW+wf3P:$FbO;">
                                                                   <field name="ATTR">val</field>
                                                                   <field name="OID">select ID</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <statement name="DO0">
                                                             <block type="control" id="3mMKDE[02,i*2gCBFlT/">
                                                               <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="logic_boolean" id="qER+TC,2%0tIcn=xZ~2i">
                                                                   <field name="BOOL">TRUE</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </statement>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </statement>
                                                 </block>
                                               </statement>
                                             </block>
                                           </statement>
                                           <value name="IF1">
                                             <block type="lists_isEmpty" id=":DlK+=bm^96QVR7Wy=|l">
                                               <value name="VALUE">
                                                 <block type="variables_get" id="H8)^A#%q+*IAC/tN3[4T">
                                                   <field name="VAR" id="L4~SKN?YvAxPEfZ$LZG:">IsTrue</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="DO1">
                                             <block type="control" id="MXX1rRh.q!%C@z]~8yp}">
                                               <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="logic_boolean" id="52zr3;T8Y9IoxT(i6zoS">
                                                   <field name="BOOL">FALSE</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </statement>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
            </xml>
            

            1 Reply Last reply Reply Quote 0
            • DK43
              DK43 last edited by

              Uf das ging schnell 🙂

              Vielen Dank an Alle. Ich werde den von Asgothian ausprobieren.

              Gleichzeitig versuche ich auch mal zu verstehen was da eigentlich vor sich geht.

              Beim Blockly von paul53 blick ich grade noch so durch.

              Asgothian 1 Reply Last reply Reply Quote 0
              • Asgothian
                Asgothian Developer @DK43 last edited by Asgothian

                @dk43 Was da bei mir vor sich geht:

                Es gibt einen Trigger auf alle 6 Datenpunkte - letztendlich so wie bei dir auch. Das ich die 6 vorher in eine Liste eintrage hat was mit Faulheit zu tun.

                Was das Skript macht ist eine Liste von ID's zu verwalten deren Status "wahr" ist. Bei jeder Änderung eines DP wird die ID der Liste hinzugefügt oder aus der Liste entfernt, je nach Status und Notwendigkeit.

                Danach wird geschaut ob genau 3 Einträge in der Liste sind (und der Pelletofen gerade aus ist). Wenn das der Fall ist wird ein Timeout gestartet, der den Pelletofen in 30 Minuten startet. Die Abfrage mit "if not timeout" dient dazu sicherzustellen das dieser Timeout nicht doppelt gestartet werden kann.

                Als letztes wird geschaut ob die Liste leer ist - dann sind alle DP's auf falsch, und der Pelletofen wird ausgeschaltet.

                Die Schleife vor dem Trigger dient dazu bei Skriptstart die Liste mit den aktuellen ID's zu füllen deren States gerade wahr sind. Ansonsten kann es zu seltsamem verhalten führen wenn das Skript gestartet wird während nicht alle 6 auf falsch stehen.

                A.

                Nachtrag - beim Schreiben der Erklärung ist mir aufgefallen das beim Einschalten selber nicht noch einmal geprüft wird ob immer noch 3 DP's auf Wahr sind. Sprich wenn

                • 2 DP's wahr sind
                • ein DP kurz wahr wird und dann wieder auf falsch geht
                  wird der Ofen trotzdem gestartet.
                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Asgothian last edited by

                  @asgothian sagte: Die Abfrage mit "if not timeout" dient dazu sicherzustellen das dieser Timeout nicht doppelt gestartet werden kann.

                  Das ist sinnvoll und habe ich oben in meinem Vorschlag angepasst.

                  1 Reply Last reply Reply Quote 0
                  • DK43
                    DK43 last edited by

                    Kurze Rückmeldung.

                    @Asgothian Irgendetwas habe ich wohl falsch gemacht. Dieser Skript hat garnicht reagiert.

                    dee47fbd-d956-4d0d-a5e2-1eb927dbc795-image.png

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <variables>
                       <variable id="yuMsOW1[#6|(ScXYeHc9">ids</variable>
                       <variable id="OcCnviy@R8E;``=H+td4">IsTrue</variable>
                       <variable id="$i6tIF-34FV^p;ZG3-gD">i</variable>
                       <variable id="dyjp:r^cj*Z-m:$,C!yb">present</variable>
                       <variable type="timeout" id="timeout">timeout</variable>
                       <variable id="SfCxTt#DZwj*#OqjWAk[">timeout</variable>
                     </variables>
                     <block type="variables_set" id="@z4y0CJ32@5/]99cwtc*" x="278" y="111">
                       <field name="VAR" id="yuMsOW1[#6|(ScXYeHc9">ids</field>
                       <value name="VALUE">
                         <block type="lists_create_with" id="*pyydyy.:0rJsv,Q_.5[">
                           <mutation items="6"></mutation>
                           <value name="ADD0">
                             <block type="field_oid" id="HHR}I-:gsXYpLp~Io5LJ">
                               <field name="oid">zigbee.0.60a423fffe053fc3.state</field>
                             </block>
                           </value>
                           <value name="ADD1">
                             <block type="field_oid" id="HCbiWV]{TsDbm2$jX3:;">
                               <field name="oid">zigbee.0.842e14fffefce74f.state</field>
                             </block>
                           </value>
                           <value name="ADD2">
                             <block type="field_oid" id="VccI^ak.ochCC*(:oT0^">
                               <field name="oid">zigbee.0.842e14fffefda6a0.state</field>
                             </block>
                           </value>
                           <value name="ADD3">
                             <block type="field_oid" id="T}$NXMy.p3m-6bu4AS8`">
                               <field name="oid">zigbee.0.60a423fffe07e970.state</field>
                             </block>
                           </value>
                           <value name="ADD4">
                             <block type="field_oid" id="$?qCz4i,q+wIDwt_9@3x">
                               <field name="oid">zigbee.0.5c0272fffe289375.state</field>
                             </block>
                           </value>
                           <value name="ADD5">
                             <block type="field_oid" id="s5Us@Kuvrl!hi`2Wl!aB">
                               <field name="oid">zigbee.0.bc33acfffe47e3a9.state</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <next>
                         <block type="variables_set" id="=#!nUC#DpO1ZF}z0x)8H">
                           <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                           <value name="VALUE">
                             <block type="lists_create_with" id="L8$JB`1#0e.*P%{L)b0y">
                               <mutation items="0"></mutation>
                             </block>
                           </value>
                           <next>
                             <block type="controls_forEach" id="d*lEHJ3Y;|1e`nE8EAFs">
                               <field name="VAR" id="$i6tIF-34FV^p;ZG3-gD">i</field>
                               <value name="LIST">
                                 <block type="variables_get" id="v1Cbvy|`_H~E}E1Mq]2C">
                                   <field name="VAR" id="yuMsOW1[#6|(ScXYeHc9">ids</field>
                                 </block>
                               </value>
                               <statement name="DO">
                                 <block type="controls_if" id="Gk%=DzP$8yJ{_eG4#?dU">
                                   <value name="IF0">
                                     <block type="get_value_var" id="oL]0O!LlWR0ur2^4.HxY">
                                       <field name="ATTR">val</field>
                                       <value name="OID">
                                         <shadow type="text" id=")j],4R27R3qO:g7Hb4!V">
                                           <field name="TEXT"></field>
                                         </shadow>
                                         <block type="variables_get" id=")7?R7fFEzuj;Y9w(t+bw">
                                           <field name="VAR" id="$i6tIF-34FV^p;ZG3-gD">i</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <statement name="DO0">
                                     <block type="lists_setIndex" id="FIM)A(qAT!7.-:+o(HJM">
                                       <mutation at="false"></mutation>
                                       <field name="MODE">INSERT</field>
                                       <field name="WHERE">LAST</field>
                                       <value name="LIST">
                                         <block type="variables_get" id="8vbFk/=8,ShgCkW83kvL">
                                           <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                                         </block>
                                       </value>
                                       <value name="TO">
                                         <block type="variables_get" id="MX-zT|1IKwRB]Jw!S+|F">
                                           <field name="VAR" id="$i6tIF-34FV^p;ZG3-gD">i</field>
                                         </block>
                                       </value>
                                     </block>
                                   </statement>
                                 </block>
                               </statement>
                               <next>
                                 <block type="on_ext" id="14m1E(h%.0t{K{PKFb}E">
                                   <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="O$vuh#kIqHAm`0.Q(t.S">
                                       <field name="oid">default</field>
                                     </shadow>
                                     <block type="variables_get" id="Gs,@,3J8(EyHn+z]T8Xh">
                                       <field name="VAR" id="yuMsOW1[#6|(ScXYeHc9">ids</field>
                                     </block>
                                   </value>
                                   <statement name="STATEMENT">
                                     <block type="variables_set" id="wWH_UnZYj7v^?M?jartX">
                                       <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                       <value name="VALUE">
                                         <block type="lists_indexOf" id="LPT}fy52cB|K*GZ@8v,l">
                                           <field name="END">FIRST</field>
                                           <value name="VALUE">
                                             <block type="variables_get" id="o9}Wn4pVJq}i-^QGLD6;">
                                               <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                                             </block>
                                           </value>
                                           <value name="FIND">
                                             <block type="on_source" id="Ij_DUiymXO._Aog[T5x;">
                                               <field name="ATTR">id</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="controls_if" id="v/2{H*MD4CoMyt2Svk8%">
                                           <mutation else="1"></mutation>
                                           <value name="IF0">
                                             <block type="on_source" id="fDEI(!*5J)i6a{%Cb+KI">
                                               <field name="ATTR">state.val</field>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="controls_if" id="hv(3j#v(]kEw0@?C`wW]">
                                               <value name="IF0">
                                                 <block type="logic_compare" id="?wBf{hKjRO2Ee.O^qhF9">
                                                   <field name="OP">GT</field>
                                                   <value name="A">
                                                     <block type="variables_get" id="9Qv39b=3(=6Q/uE:7#2c">
                                                       <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="math_number" id="v.gvctei6@x*HM[bEBY*">
                                                       <field name="NUM">0</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO0">
                                                 <block type="lists_setIndex" id="887Dc+7d?5ar((Ur;g)$">
                                                   <mutation at="false"></mutation>
                                                   <field name="MODE">INSERT</field>
                                                   <field name="WHERE">LAST</field>
                                                   <value name="LIST">
                                                     <block type="variables_get" id="+!~jdb6Z[?eOv3NuT3@9">
                                                       <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                                                     </block>
                                                   </value>
                                                   <value name="TO">
                                                     <block type="on_source" id="eO/l.#q/I8OZ(0wC)SWS">
                                                       <field name="ATTR">id</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </statement>
                                             </block>
                                           </statement>
                                           <statement name="ELSE">
                                             <block type="controls_if" id="RR6scQz^jw_6Ggaz6b|m">
                                               <value name="IF0">
                                                 <block type="logic_compare" id="8q]CY9c:R)O+^1EAUe$)">
                                                   <field name="OP">LT</field>
                                                   <value name="A">
                                                     <block type="variables_get" id="%#~lD$zPj`,*Bc_7NY/6">
                                                       <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="math_number" id="piS2!FlA:Uk6UzcGZFmy">
                                                       <field name="NUM">1</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO0">
                                                 <block type="lists_getIndex" id="!e=P#vhz]]9vramWh+-9">
                                                   <mutation statement="true" at="true"></mutation>
                                                   <field name="MODE">REMOVE</field>
                                                   <field name="WHERE">FROM_START</field>
                                                   <value name="VALUE">
                                                     <block type="variables_get" id="#rz2djN7?{K3m8^K4xo9">
                                                       <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                                                     </block>
                                                   </value>
                                                   <value name="AT">
                                                     <block type="variables_get" id="dG$=eREt-iWe3`H5b(xv">
                                                       <field name="VAR" id="dyjp:r^cj*Z-m:$,C!yb">present</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </statement>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="comment" id="ULnjmNk/1yz#s$5{n./r">
                                               <field name="COMMENT">Ab hier: Objekt ID ist immer die des Aktors zum schalten</field>
                                               <next>
                                                 <block type="controls_if" id="$#C(_;~a*YD.;jK=:uQ.">
                                                   <mutation elseif="1"></mutation>
                                                   <value name="IF0">
                                                     <block type="logic_operation" id="/n:gX3Ww[J}!TqVKR8%S">
                                                       <field name="OP">AND</field>
                                                       <value name="A">
                                                         <block type="logic_compare" id="ZI_3kw%6oX}VeNXGdu=6">
                                                           <field name="OP">EQ</field>
                                                           <value name="A">
                                                             <block type="lists_length" id="om+Nx9hmjh|=t-CgLkL#">
                                                               <value name="VALUE">
                                                                 <block type="variables_get" id="%PnP7|]?shfLo_+PIFu$">
                                                                   <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="B">
                                                             <block type="math_number" id="be+X85t{/.~HKK/s,YGw">
                                                               <field name="NUM">3</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <value name="B">
                                                         <block type="logic_negate" id="pz~:/|E-zJ`BpaWTS#6-">
                                                           <value name="BOOL">
                                                             <block type="get_value" id="NZ,4XGcf:,/W+iBK(yBU">
                                                               <field name="ATTR">val</field>
                                                               <field name="OID">zigbee.0.588e81fffed98373.state</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO0">
                                                     <block type="controls_if" id="wc(~PaZs!35=Ie)q,ciI">
                                                       <value name="IF0">
                                                         <block type="logic_negate" id="0A2foaI:fLqiDMdEbq-E">
                                                           <value name="BOOL">
                                                             <block type="variables_get" id="qm^`qo)k;AmHv?``2=5j">
                                                               <field name="VAR" id="SfCxTt#DZwj*#OqjWAk[">timeout</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <statement name="DO0">
                                                         <block type="timeouts_settimeout" id="V)RF*`x$I^rpdQFx[:f;">
                                                           <field name="NAME">timeout</field>
                                                           <field name="DELAY">1</field>
                                                           <field name="UNIT">min</field>
                                                           <statement name="STATEMENT">
                                                             <block type="variables_set" id="v2JbaRwp{xft%UmPBv#W">
                                                               <field name="VAR" id="SfCxTt#DZwj*#OqjWAk[">timeout</field>
                                                               <value name="VALUE">
                                                                 <block type="logic_null" id="XZ{v#OsnX5Xe_k?Y3yR0"></block>
                                                               </value>
                                                               <next>
                                                                 <block type="controls_if" id="$a$+|Ru[5e-vt).1n(tV">
                                                                   <value name="IF0">
                                                                     <block type="logic_negate" id=",@jzx0|BybMJSgd;Lr!S">
                                                                       <value name="BOOL">
                                                                         <block type="get_value" id="w@UC%MJLW+wf3P:$FbO;">
                                                                           <field name="ATTR">val</field>
                                                                           <field name="OID">zigbee.0.588e81fffed98373.state</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <statement name="DO0">
                                                                     <block type="control" id="3mMKDE[02,i*2gCBFlT/">
                                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                       <field name="OID">zigbee.0.588e81fffed98373.state</field>
                                                                       <field name="WITH_DELAY">FALSE</field>
                                                                       <value name="VALUE">
                                                                         <block type="logic_boolean" id="qER+TC,2%0tIcn=xZ~2i">
                                                                           <field name="BOOL">TRUE</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </statement>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </statement>
                                                         </block>
                                                       </statement>
                                                     </block>
                                                   </statement>
                                                   <value name="IF1">
                                                     <block type="lists_isEmpty" id=":DlK+=bm^96QVR7Wy=|l">
                                                       <value name="VALUE">
                                                         <block type="variables_get" id="H8)^A#%q+*IAC/tN3[4T">
                                                           <field name="VAR" id="OcCnviy@R8E;``=H+td4">IsTrue</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <statement name="DO1">
                                                     <block type="control" id="MXX1rRh.q!%C@z]~8yp}">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                       <field name="OID">zigbee.0.588e81fffed98373.state</field>
                                                       <field name="WITH_DELAY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="logic_boolean" id="52zr3;T8Y9IoxT(i6zoS">
                                                           <field name="BOOL">FALSE</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </statement>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </statement>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                    </xml>
                    

                    Daraufhin habe ich den Skript von @paul53 probiert. Anfangs hat dieser auch funktioniert.
                    Das ging soweit gut bis der Skript den Aktor selbsständig ausgeschaltet hat ohne ein SendTo "Pelletofen wird ausgeschaltet".

                    Wenn ich jetzt den Aktor händisch auf True stelle dann schaltet sich der Pelletofen für 15 Minuten ein (woher die 15 Minuten?)

                    Zuletzt habe ich probiert alle Stellventile auf false zu setzen und nacheinander 3 Ventile wieder auf True. Das hat wie am Anfang funktioniert. Der Aktor zum schalten des Pelletofens ist jetzt seit 20 Minuten Ein.

                    470a2b26-baa3-4f70-9e58-5369dd41ed96-image.png

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <variables>
                       <variable id="yuMsOW1[#6|(ScXYeHc9">ids</variable>
                       <variable id="KdHa(L5uBS@!|@Dre~e!">anzahlVentile</variable>
                       <variable id="$i6tIF-34FV^p;ZG3-gD">ID</variable>
                       <variable type="timeout" id="timeout">timeout</variable>
                     </variables>
                     <block type="variables_set" id="@z4y0CJ32@5/]99cwtc*" x="290" y="151">
                       <field name="VAR" id="yuMsOW1[#6|(ScXYeHc9">ids</field>
                       <value name="VALUE">
                         <block type="lists_create_with" id="*pyydyy.:0rJsv,Q_.5[">
                           <mutation items="6"></mutation>
                           <value name="ADD0">
                             <block type="field_oid" id="HHR}I-:gsXYpLp~Io5LJ">
                               <field name="oid">zigbee.0.60a423fffe053fc3.state</field>
                             </block>
                           </value>
                           <value name="ADD1">
                             <block type="field_oid" id="HCbiWV]{TsDbm2$jX3:;">
                               <field name="oid">zigbee.0.842e14fffefce74f.state</field>
                             </block>
                           </value>
                           <value name="ADD2">
                             <block type="field_oid" id="VccI^ak.ochCC*(:oT0^">
                               <field name="oid">zigbee.0.842e14fffefda6a0.state</field>
                             </block>
                           </value>
                           <value name="ADD3">
                             <block type="field_oid" id="T}$NXMy.p3m-6bu4AS8`">
                               <field name="oid">zigbee.0.60a423fffe07e970.state</field>
                             </block>
                           </value>
                           <value name="ADD4">
                             <block type="field_oid" id="$?qCz4i,q+wIDwt_9@3x">
                               <field name="oid">zigbee.0.5c0272fffe289375.state</field>
                             </block>
                           </value>
                           <value name="ADD5">
                             <block type="field_oid" id="s5Us@Kuvrl!hi`2Wl!aB">
                               <field name="oid">zigbee.0.bc33acfffe47e3a9.state</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <next>
                         <block type="on_ext" id="14m1E(h%.0t{K{PKFb}E">
                           <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="O$vuh#kIqHAm`0.Q(t.S">
                               <field name="oid">default</field>
                             </shadow>
                             <block type="variables_get" id="Gs,@,3J8(EyHn+z]T8Xh">
                               <field name="VAR" id="yuMsOW1[#6|(ScXYeHc9">ids</field>
                             </block>
                           </value>
                           <statement name="STATEMENT">
                             <block type="variables_set" id="R(MGmrE}wWwsk_oBA$.U">
                               <field name="VAR" id="KdHa(L5uBS@!|@Dre~e!">anzahlVentile</field>
                               <value name="VALUE">
                                 <block type="math_number" id="+F(l:4#MxO]%dwBgz}T)">
                                   <field name="NUM">0</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="controls_forEach" id="d*lEHJ3Y;|1e`nE8EAFs">
                                   <field name="VAR" id="$i6tIF-34FV^p;ZG3-gD">ID</field>
                                   <value name="LIST">
                                     <block type="variables_get" id="v1Cbvy|`_H~E}E1Mq]2C">
                                       <field name="VAR" id="yuMsOW1[#6|(ScXYeHc9">ids</field>
                                     </block>
                                   </value>
                                   <statement name="DO">
                                     <block type="controls_if" id="Gk%=DzP$8yJ{_eG4#?dU">
                                       <value name="IF0">
                                         <block type="get_value_var" id="oL]0O!LlWR0ur2^4.HxY">
                                           <field name="ATTR">val</field>
                                           <value name="OID">
                                             <shadow type="text" id=")j],4R27R3qO:g7Hb4!V">
                                               <field name="TEXT"></field>
                                             </shadow>
                                             <block type="variables_get" id=")7?R7fFEzuj;Y9w(t+bw">
                                               <field name="VAR" id="$i6tIF-34FV^p;ZG3-gD">ID</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="math_change" id="+axN9XAwspD/WwjSP*l+">
                                           <field name="VAR" id="KdHa(L5uBS@!|@Dre~e!">anzahlVentile</field>
                                           <value name="DELTA">
                                             <shadow type="math_number" id="1ov^gCnklXOe9evPduOc">
                                               <field name="NUM">1</field>
                                             </shadow>
                                             <block type="math_number" id="~XOI(,9L6QPk~LMDfZ9+">
                                               <field name="NUM">1</field>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </statement>
                                   <next>
                                     <block type="controls_if" id="ZwKN40!x*mk=e+.0O6aI">
                                       <mutation elseif="1"></mutation>
                                       <value name="IF0">
                                         <block type="logic_compare" id="i%|EcA2ffz[wObagFL7X">
                                           <field name="OP">EQ</field>
                                           <value name="A">
                                             <block type="variables_get" id="FS0`I|bP8UdHt5]=#.MD">
                                               <field name="VAR" id="KdHa(L5uBS@!|@Dre~e!">anzahlVentile</field>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="math_number" id="Cd6jsv%Rr8e[!%DqVDCi">
                                               <field name="NUM">0</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="timeouts_cleartimeout" id="J:L;5}#*x$^_kI;r]4zX">
                                           <field name="NAME">timeout</field>
                                           <next>
                                             <block type="control" id="@J=GwE#vfq(YVg_C:FP?">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">zigbee.0.588e81fffed98373.state</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="logic_boolean" id="nCqynUAEAm20u6z0R:Eu">
                                                   <field name="BOOL">FALSE</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="whatsapp-cmb" id="|tQ~gk6KM7rY//a[lX#/">
                                                   <field name="INSTANCE"></field>
                                                   <field name="LOG"></field>
                                                   <value name="MESSAGE">
                                                     <shadow type="text" id="Dh%fviNW]pC-R~$wR/7i">
                                                       <field name="TEXT">Pelletofen wird ausgeschaltet</field>
                                                     </shadow>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </statement>
                                       <value name="IF1">
                                         <block type="logic_operation" id="tLR5,B$[(nG+.*PmBo|v" inline="false">
                                           <field name="OP">AND</field>
                                           <value name="A">
                                             <block type="logic_compare" id="M*_t(yVev.DlHzg|FVE9">
                                               <field name="OP">GTE</field>
                                               <value name="A">
                                                 <block type="variables_get" id="Fu8i$_qm%{=m[a{zm?sP">
                                                   <field name="VAR" id="KdHa(L5uBS@!|@Dre~e!">anzahlVentile</field>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <block type="math_number" id="i62Iw/r2~3:#33fVsIZh">
                                                   <field name="NUM">3</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="logic_negate" id="!^B.qNOmdOeuRGP;V#pe">
                                               <value name="BOOL">
                                                 <block type="timeouts_gettimeout" id="I%dJmJ^SoqUT}]R3R;1[">
                                                   <field name="NAME">timeout</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO1">
                                         <block type="timeouts_settimeout" id="+M%^kR_~@M=eQrD4{V~@">
                                           <field name="NAME">timeout</field>
                                           <field name="DELAY">1</field>
                                           <field name="UNIT">min</field>
                                           <statement name="STATEMENT">
                                             <block type="control" id="~ph9wPYDJe_)fi~TEah#">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                               <field name="OID">zigbee.0.588e81fffed98373.state</field>
                                               <field name="WITH_DELAY">FALSE</field>
                                               <value name="VALUE">
                                                 <block type="logic_boolean" id="J!I|{5Cb86R#P^d%?CUR">
                                                   <field name="BOOL">TRUE</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="whatsapp-cmb" id="^FTcP$_:pyfAA?3yH9/S">
                                                   <field name="INSTANCE"></field>
                                                   <field name="LOG"></field>
                                                   <value name="MESSAGE">
                                                     <shadow type="text" id="~tPJ*x8F/fIpy+{M:7`3">
                                                       <field name="TEXT">Pelletofen wird eingeschaltet</field>
                                                     </shadow>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                         </block>
                                       </statement>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                       </next>
                     </block>
                    </xml>
                    

                    59ba4cd7-0882-43d8-bdda-4f459405b237-image.png

                    würde mich freuen wenn man sich das nochmal anschauen könnte 🙂

                    Asgothian 1 Reply Last reply Reply Quote 0
                    • Asgothian
                      Asgothian Developer @DK43 last edited by

                      @dk43 Mir ist beim Zusammenbau des Skriptes ein Fehler unterlaufen.

                      Screen Shot 2023-01-12 at 00.30.50 .png

                      die beiden Vergleiche für "present" sind vertauscht.

                      im oberen Falls muss present < 1 geprüft werden, um unteren present >0

                      A.

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      838
                      Online

                      32.0k
                      Users

                      80.5k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      369
                      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