Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly Script -> ein Script für mehrere Trigger

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Blockly Script -> ein Script für mehrere Trigger

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @cheffe last edited by Asgothian

      @cheffe als blockly bauen kann ich es nicht - kein blockly wenn ich unterwegs bin 🙂

      Aber das was du gemacht hast ist erst einmal korrekt.

      Wenn du die obere Liste in eine Variable "AlleBasisIDs" speicherst, und die die untere Liste in eine Variable "AlleFarben" speicherst, dann:

      Jetzt definierst du dir noch eine Variable "Zielwerte", und an stelle des

      Screenshot 2024-01-25 at 10.27.39.png

      kommt erst einmal eine Zuweisung auf diese Variable mit "in der Liste 'AlleFarben' nimm das 'idx'. element."
      und eine Zuweisung auf eine neue Variable "BasisID" mit "in der Liste 'AlleBasisIDs' nimm das 'idx'. element."

      Dann kommen 3 Schreibe Blöcke (der aus dem Screenshot), wobei sich die Einträge für ObjektID und Wert ändern, jeweils hinter einem "falls"

      falls (in der Liste Zielwerte nimm das 1. Element > -1) - darin den Schreibe Block it ObjektID als "Erzeuge Text aus 'BasisID'" und '".Temp", und als Wert "in der Liste 'Zielwerte' nimm das 1. Element"

      falls (in der Liste Zielwerte nimm das 2. Element > -1) - darin den Schreibe Block it ObjektID als "Erzeuge Text aus 'BasisID'" und '".hue, und als Wert "in der Liste 'Zielwerte' nimm das 2. Element"

      falls (in der Liste Zielwerte nimm das 3. Element > -1) - darin den Schreibe Block it ObjektID als "Erzeuge Text aus 'BasisID'" und '".sat", und als Wert "in der Liste 'Zielwerte' nimm das 3. Element"

      Ich hoffe das hilft erst einmal

      C 1 Reply Last reply Reply Quote 0
      • C
        cheffe @Asgothian last edited by

        @asgothian

        hui... das fand ich jetzt nicht ganz einfach...
        zunächst hatte ich noch die frage: "idx" ist auch eine selbst angelegte Variable, oder? Die habe ich bei mir anders genannt.

        Mein Script sieht jetzt so aus... meintest du das so?

        Screenshot 2024-01-25 112818.png

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

          @cheffe
          Exakt.

          Wichtig ist jetzt noch: der Datenpunkt für die Farbtemperatur muss jetzt z.Bsp. auch
          fritzdect.0.DECT_130770174577-1.temp sein. Ansonsten müsstest du das .temp so anpassen das es zum Datenpunkt passt. Dito mit saturation und Hue

          A.

          C 1 Reply Last reply Reply Quote 0
          • C
            cheffe @Asgothian last edited by

            @asgothian
            ja, das hab ich schon gemerkt und in ".temperature" und ".saturation" angepasst.
            Ich bekomme auch minimal Änderungen an der Farbe hin, es scheint also im Grunde zu funktionieren.
            Aktuell bekomme ich aber über mein Script nur eine Änderung hin, danach ändert sich nix mehr...
            muss ich das Script irgendwie nach Änderung "anhalten" , "beenden" oder neustarten?

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

              @cheffe Nein, aber ich denke du hast ein Problem mit dem "aktiven Schalter".

              Da du da die ID des Schalters rein schreibst ändert die sich nicht wenn du mit dem gleichen Schalter spielst.

              Lösung dazu: im Trigger den aktiven Schalter Datenpunkt auf "" setzen, und vor dem Ermitteln des Index schauen ob der "" ist - dann tust du nix.

              A.

              C 1 Reply Last reply Reply Quote 0
              • C
                cheffe @Asgothian last edited by

                @asgothian
                ich denke so meintest du?
                Screenshot 2024-01-25 124624.png

                was genau meinst du mit "Ermitteln des Index ...."?

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

                  @cheffe sagte in Blockly Script -> ein Script für mehrere Trigger:

                  @asgothian
                  ich denke so meintest du?
                  Screenshot 2024-01-25 124624.png

                  was genau meinst du mit "Ermitteln des Index ...."?

                  Nein - sorry, das was ich vorhin geschrieben hab war Unsinn.
                  Du hast ja eine Liste an Schaltern von denen sich ein beliebiger ändert. Dementsprechend sollte das auch ohne
                  Screenshot 2024-01-25 at 13.12.08.png
                  mehrfach funktionieren. Da hab ich auf dem Weg raus nicht richtig gelesen.

                  Genau bin ich noch nicht sicher warum es nicht geht. Bau doch mal einen Debug-Baustein in den Trigger und lass mitloggen wann der Anspricht und welche ObjektID den Trigger auslöst.

                  A.

                  C 1 Reply Last reply Reply Quote 0
                  • C
                    cheffe @Asgothian last edited by

                    @asgothian

                    wie muss ich den einbauen? was muss ich da einrichten?

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

                      @cheffe es gibt unter System einen Baustein "debug output" oder so. Den einsetzen, die Nachricht über text-zusammensetzen zusammen basteln und an den Block hängen. Wichtig. diesen Baustein da mit einbauen:
                      Screenshot 2024-01-25 at 13.40.17.png

                      C 1 Reply Last reply Reply Quote 0
                      • C
                        cheffe @Asgothian last edited by cheffe

                        @asgothian
                        sorry... mit dem debug ding bin ich völlig überfordert... das müsste ich vielleicht nochmal später ausführlicher erklärt bekommen oder mich belesen...

                        ich habe gerade das gefühl, dass immer der erste Farbeintrag (also Wert "1" warmweiß) eingestellt wird.
                        Es scheint also noch einen Fehler zu geben, dass der Code (Zahl zwischen 1-45 aus dem Dropdown-Menü) nicht richtig verarbeitet wird...
                        also ich glaube in der Verarbeitung von "nummer-aenderung"

                        könntest du das nochmal gerade prüfen?

                        Screenshot 2024-01-25 135604.png


                        muss nicht bei der Festlegung von "Zielwertfarbe" irgendwie auf den Value (also Wert 1-45) des zuletzt veränderten Objektes zurückgegriffen werden? da kann doch der Bezug zur "nummer-aenderung (1-3, je nachdem welcher schalter bedient wurde) nicht passen..
                        oder ???

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

                          @cheffe sagte: so sieht es bisher bei mir aus

                          Ich würde für "hue" und "sat" eine Liste mit 2 Elementen nehmen, etwa so:

                          Blockly_temp.JPG

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

                            @paul53
                            sieht ähnlich aus, aber doch mit gewissen abweichungen...
                            könntest du mir das gerade mal exportieren, damit ich nicht alles nachbauen muss? dann versuche ich hier anzupassen...

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

                              @cheffe sagte: exportieren

                              <xml xmlns="https://developers.google.com/blockly/xml">
                               <variables>
                                 <variable id="Hi#eH=aV#vRl=,^ygpGJ">idsSrc</variable>
                                 <variable id="xmlJs;}Sy%29W|+F.NyC">colors</variable>
                                 <variable id="Yhg0(ku+)2HzqtF%`)Y(">idsDst</variable>
                                 <variable id="HA8wOV^!Mo*mVkmuE`{G">path</variable>
                                 <variable id="DkSf^#3^q_TCS/]@U1f|">color</variable>
                               </variables>
                               <block type="variables_set" id="ZMmnT=Sgjmi[-81-5:T7" x="62" y="62">
                                 <field name="VAR" id="Hi#eH=aV#vRl=,^ygpGJ">idsSrc</field>
                                 <value name="VALUE">
                                   <block type="lists_create_with" id="GC|S:*pW~Z~r2b9@=FfC">
                                     <mutation items="3"></mutation>
                                     <value name="ADD0">
                                       <block type="field_oid" id="skLX]bOBk|j*A:|{6S67">
                                         <field name="oid">default</field>
                                       </block>
                                     </value>
                                     <value name="ADD1">
                                       <block type="field_oid" id="deqLr_^vEI%YW4p#Ft;w">
                                         <field name="oid">default</field>
                                       </block>
                                     </value>
                                     <value name="ADD2">
                                       <block type="field_oid" id="C7KgG]w4;Cf_5UD$XjB*">
                                         <field name="oid">default</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="variables_set" id="-4N9.Y]Qe;9:lX0ARkDl">
                                     <field name="VAR" id="Yhg0(ku+)2HzqtF%`)Y(">idsDst</field>
                                     <value name="VALUE">
                                       <block type="lists_create_with" id="hACXIS)K?`+!A/}V3.@t">
                                         <mutation items="3"></mutation>
                                         <value name="ADD0">
                                           <block type="text" id="tdS:Gvo,qdR-v4EF%D5N">
                                             <field name="TEXT">fritzdect.0.DECT_130770174577-1.</field>
                                           </block>
                                         </value>
                                         <value name="ADD1">
                                           <block type="text" id="7Sbp]]Hk]o(3(lOv=Hdt">
                                             <field name="TEXT">fritzdect.0.DECT_1307701xxxxx-1.</field>
                                           </block>
                                         </value>
                                         <value name="ADD2">
                                           <block type="text" id="6+#W2Ll^v!p-lVlDHe!}">
                                             <field name="TEXT">fritzdect.0.DECT_1307701xxxxx-1.</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="on_ext" id="IbyVK%nhw1e;G[XO=,ZH">
                                         <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="#K4xW+0~Z/V!)b=W%pJO">
                                             <field name="oid">default</field>
                                           </shadow>
                                           <block type="variables_get" id="qBcGS~jE=R?iWxiTbkGP">
                                             <field name="VAR" id="Hi#eH=aV#vRl=,^ygpGJ">idsSrc</field>
                                           </block>
                                         </value>
                                         <statement name="STATEMENT">
                                           <block type="variables_set" id="bDt/7kIkUcvh|mzux5h9">
                                             <field name="VAR" id="HA8wOV^!Mo*mVkmuE`{G">path</field>
                                             <value name="VALUE">
                                               <block type="lists_getIndex" id="!^+`}av#Hr0]D*@zqTg(">
                                                 <mutation statement="false" at="true"></mutation>
                                                 <field name="MODE">GET</field>
                                                 <field name="WHERE">FROM_START</field>
                                                 <value name="VALUE">
                                                   <block type="variables_get" id="u?O$mJqm}|{AFnc3W53.">
                                                     <field name="VAR" id="Yhg0(ku+)2HzqtF%`)Y(">idsDst</field>
                                                   </block>
                                                 </value>
                                                 <value name="AT">
                                                   <block type="lists_indexOf" id="2oq|1``]/mB3]lgN0`r}">
                                                     <field name="END">FIRST</field>
                                                     <value name="VALUE">
                                                       <block type="variables_get" id="cj_vdh4R}:x?Ey2AE-y*">
                                                         <field name="VAR" id="Hi#eH=aV#vRl=,^ygpGJ">idsSrc</field>
                                                       </block>
                                                     </value>
                                                     <value name="FIND">
                                                       <block type="on_source" id="]I.I,=i+XZ8MM$-jw3Ll">
                                                         <field name="ATTR">id</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="variables_set" id=".-I,h2xyWa|SzGjFsGFH">
                                                 <field name="VAR" id="DkSf^#3^q_TCS/]@U1f|">color</field>
                                                 <value name="VALUE">
                                                   <block type="lists_getIndex" id="Ff!f[H06W-8:!Hf@MS9!">
                                                     <mutation statement="false" at="true"></mutation>
                                                     <field name="MODE">GET</field>
                                                     <field name="WHERE">FROM_START</field>
                                                     <value name="VALUE">
                                                       <block type="variables_get" id="F*thvjBv_%$3b]!*eba(">
                                                         <field name="VAR" id="xmlJs;}Sy%29W|+F.NyC">colors</field>
                                                       </block>
                                                     </value>
                                                     <value name="AT">
                                                       <block type="on_source" id="X98X9-/y?U0uI`*rb[`z">
                                                         <field name="ATTR">state.val</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="controls_if" id="q%DN/O2K^zy0y^*`SJ~U">
                                                     <mutation else="1"></mutation>
                                                     <value name="IF0">
                                                       <block type="logic_compare" id="G8`poFCeW?wsW/s{7:Uu">
                                                         <field name="OP">EQ</field>
                                                         <value name="A">
                                                           <block type="convert_type" id="XVq3|UyI}*y7ZA||_sGA">
                                                             <value name="ITEM">
                                                               <block type="variables_get" id="?llSUTx335xf~y{Cc7t*">
                                                                 <field name="VAR" id="DkSf^#3^q_TCS/]@U1f|">color</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="B">
                                                           <block type="text" id="o+.M^C~ZBwDu]t7PJMCo">
                                                             <field name="TEXT">number</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <statement name="DO0">
                                                       <block type="control_ex" id="bzIJj2|2J:ki/X_kJbl=" inline="true">
                                                         <field name="TYPE">false</field>
                                                         <field name="CLEAR_RUNNING">FALSE</field>
                                                         <value name="OID">
                                                           <shadow type="field_oid" id="v:FgL~c4TV?QqS}-XxW9">
                                                             <field name="oid">Object ID</field>
                                                           </shadow>
                                                           <block type="text_join" id="[CY5#utPi%^zn/i6vYn4" inline="true">
                                                             <mutation items="2"></mutation>
                                                             <value name="ADD0">
                                                               <block type="variables_get" id="`:71W.^^|Ekvx}tg4H=#">
                                                                 <field name="VAR" id="HA8wOV^!Mo*mVkmuE`{G">path</field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD1">
                                                               <block type="text" id="u?t0tI3MwLtSBl?=FTGe">
                                                                 <field name="TEXT">temperature</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="VALUE">
                                                           <shadow type="logic_boolean" id="ymtV(ImH`B(JpW`z_/Q:">
                                                             <field name="BOOL">TRUE</field>
                                                           </shadow>
                                                           <block type="variables_get" id=")^U5ec$XLTJ~Zstbg6W4">
                                                             <field name="VAR" id="DkSf^#3^q_TCS/]@U1f|">color</field>
                                                           </block>
                                                         </value>
                                                         <value name="DELAY_MS">
                                                           <shadow type="math_number" id="5.BL.WR6]-D;e(kZa{[:">
                                                             <field name="NUM">0</field>
                                                           </shadow>
                                                         </value>
                                                       </block>
                                                     </statement>
                                                     <statement name="ELSE">
                                                       <block type="control_ex" id="}k9jaEh_X![G^K/3:Btg">
                                                         <field name="TYPE">false</field>
                                                         <field name="CLEAR_RUNNING">FALSE</field>
                                                         <value name="OID">
                                                           <shadow type="field_oid" id="v:FgL~c4TV?QqS}-XxW9">
                                                             <field name="oid">Object ID</field>
                                                           </shadow>
                                                           <block type="text_join" id="TgL1NmzQR)W=J))(1ioa" inline="true">
                                                             <mutation items="2"></mutation>
                                                             <value name="ADD0">
                                                               <block type="variables_get" id="wl?@Nld1?Izax^[TVq{m">
                                                                 <field name="VAR" id="HA8wOV^!Mo*mVkmuE`{G">path</field>
                                                               </block>
                                                             </value>
                                                             <value name="ADD1">
                                                               <block type="text" id="RHlVCR98ZQMhQgJ?fS[W">
                                                                 <field name="TEXT">hue</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="VALUE">
                                                           <shadow type="logic_boolean" id="ymtV(ImH`B(JpW`z_/Q:">
                                                             <field name="BOOL">TRUE</field>
                                                           </shadow>
                                                           <block type="lists_getIndex" id="o226vJK8#-Igf*R.q(RQ">
                                                             <mutation statement="false" at="true"></mutation>
                                                             <field name="MODE">GET</field>
                                                             <field name="WHERE">FROM_START</field>
                                                             <value name="VALUE">
                                                               <block type="variables_get" id="OyGNR)7e#W,!+E;rY8s.">
                                                                 <field name="VAR" id="DkSf^#3^q_TCS/]@U1f|">color</field>
                                                               </block>
                                                             </value>
                                                             <value name="AT">
                                                               <block type="math_number" id="PAGqQ5DHK-95whM$,clx">
                                                                 <field name="NUM">1</field>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="DELAY_MS">
                                                           <shadow type="math_number" id="Tv~lO]wGDR;^eR,e?CG_">
                                                             <field name="NUM">0</field>
                                                           </shadow>
                                                         </value>
                                                         <next>
                                                           <block type="control_ex" id="2JUnTRJbGXqpzemH(~i3">
                                                             <field name="TYPE">false</field>
                                                             <field name="CLEAR_RUNNING">FALSE</field>
                                                             <value name="OID">
                                                               <shadow type="field_oid" id="v:FgL~c4TV?QqS}-XxW9">
                                                                 <field name="oid">Object ID</field>
                                                               </shadow>
                                                               <block type="text_join" id="O[rkhu9F8{$dS=F?pu!P" inline="true">
                                                                 <mutation items="2"></mutation>
                                                                 <value name="ADD0">
                                                                   <block type="variables_get" id="9Z~h:7mKfnI`FdOtlrDm">
                                                                     <field name="VAR" id="HA8wOV^!Mo*mVkmuE`{G">path</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="ADD1">
                                                                   <block type="text" id="Mm{6;kcRL9lklHoypMZs">
                                                                     <field name="TEXT">saturation</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <value name="VALUE">
                                                               <shadow type="logic_boolean" id="ymtV(ImH`B(JpW`z_/Q:">
                                                                 <field name="BOOL">TRUE</field>
                                                               </shadow>
                                                               <block type="lists_getIndex" id="z2O@l~[$f,5jm|Boc6dw">
                                                                 <mutation statement="false" at="true"></mutation>
                                                                 <field name="MODE">GET</field>
                                                                 <field name="WHERE">FROM_START</field>
                                                                 <value name="VALUE">
                                                                   <block type="variables_get" id="xc8+d1XIetOqO0#1IWFK">
                                                                     <field name="VAR" id="DkSf^#3^q_TCS/]@U1f|">color</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT">
                                                                   <block type="math_number" id="#2y`xCANn8V-hLH[5b*p">
                                                                     <field name="NUM">2</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <value name="DELAY_MS">
                                                               <shadow type="math_number" id="8%L08aYlqhack6-0uzg=">
                                                                 <field name="NUM">0</field>
                                                               </shadow>
                                                             </value>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </statement>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                               <block type="variables_set" id="qFS2e]_GWaviVI*`|H8s" x="762" y="512">
                                 <field name="VAR" id="xmlJs;}Sy%29W|+F.NyC">colors</field>
                                 <value name="VALUE">
                                   <block type="lists_create_with" id="=SIs;){U:ghJ8YewEFpZ">
                                     <mutation items="7"></mutation>
                                     <value name="ADD0">
                                       <block type="math_number" id="6}O8rkTF:Hf9[/4qKF!+">
                                         <field name="NUM">2700</field>
                                       </block>
                                     </value>
                                     <value name="ADD1">
                                       <block type="math_number" id="ieZq0A1KZ,9yvOFQD;wE">
                                         <field name="NUM">3000</field>
                                       </block>
                                     </value>
                                     <value name="ADD2">
                                       <block type="math_number" id="4CGsih6V^m?4pn+MlHhV">
                                         <field name="NUM">3400</field>
                                       </block>
                                     </value>
                                     <value name="ADD4">
                                       <block type="lists_create_with" id="krR,bF^+9-G1|839tckw" inline="true">
                                         <mutation items="2"></mutation>
                                         <value name="ADD0">
                                           <block type="math_number" id="c.$p*jW^C5,=ulXp*IEm">
                                             <field name="NUM">35</field>
                                           </block>
                                         </value>
                                         <value name="ADD1">
                                           <block type="math_number" id="*NJwV9~gw*0-*6t2q!TQ">
                                             <field name="NUM">214</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="ADD5">
                                       <block type="lists_create_with" id="OY{[N3oMc`m{E,f]~!In" inline="true">
                                         <mutation items="2"></mutation>
                                         <value name="ADD0">
                                           <block type="math_number" id=")P9(a`_osVe_Eib,s76a">
                                             <field name="NUM">35</field>
                                           </block>
                                         </value>
                                         <value name="ADD1">
                                           <block type="math_number" id="a_JgcVfP_2a}:KX10#JL">
                                             <field name="NUM">140</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                              </xml>
                              

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              1.1k
                              Online

                              31.7k
                              Users

                              79.7k
                              Topics

                              1.3m
                              Posts

                              5
                              24
                              873
                              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