Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Trigger mit Elementen aus Liste nimmt 1 Element

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Trigger mit Elementen aus Liste nimmt 1 Element

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

      Moin,

      ich nutze einige shellys als zeitgesteuerte Dimmer für Flure. Das habe ich mit einem blockly-Skript umgesetzt und funktioniert auch genau so, wie ich es mir vorstelle... (mit Datenpunkten, Zeitplänen + Triggern schon ein wenig aufwendiger... mit der Event-Gesteuerte Programmierung muss ich ein wenig umdenken...)

      Ich hab aber noch ein Problem mit der Auswahl der Geräte. Ich möchte die nur einmal benennen + hab mir dafür eine Liste erstellt.

      Das funktioniert innerhalb eines Triggers zum Setzen der einzelnen Werte.
      Es funktioniert aber nicht, um damit je DImmer einen Trigger zu erstellen....

      Ich hab das hier mal als Test-Skript zusammengestellt:

      Bildschirmfoto 2020-11-29 um 22.06.18.png

      29.11.2020, 22:38:43.170	[info ]: javascript.0 (1389) Stop script script.js.Test.ListeTriggerFunktion
      29.11.2020, 22:38:43.183	[info ]: javascript.0 (1389) Start javascript script.js.Test.ListeTriggerFunktion
      29.11.2020, 22:38:43.248	[info ]: javascript.0 (1389) script.js.Test.ListeTriggerFunktion: shelly.0.SHRGBW2#661EDD#1.online
      29.11.2020, 22:38:43.255	[info ]: javascript.0 (1389) script.js.Test.ListeTriggerFunktion: shelly.0.SHRGBW2#661F1C#1.online
      29.11.2020, 22:38:43.256	[info ]: javascript.0 (1389) script.js.Test.ListeTriggerFunktion: shelly.0.SHRGBW2#FCA00D#1.online
      29.11.2020, 22:38:43.257	[info ]: javascript.0 (1389) script.js.Test.ListeTriggerFunktion: registered 3 subscriptions and 0 schedules
      29.11.2020, 22:39:15.750	[info ]: javascript.0 (1389) script.js.Test.ListeTriggerFunktion: shelly.0.SHRGBW2#FCA00D#1: false
      29.11.2020, 22:39:15.919	[info ]: javascript.0 (1389) script.js.Test.ListeTriggerFunktion: shelly.0.SHRGBW2#FCA00D#1: false
      

      Im Log werden beim Start des Skriptes alle 3 shellys aufgeführt. Wenn ich dann aber 2 einschalte (hängen am selben Schalter), dann wird innerhalb des Triggers jeweils nur das erste Element der Liste genutzt.

      (in der deaktivierten Funktion hab ich die 3 noch mal einzeln angeführt. Damit funktioniert es...)

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="?#Z#jLem#phVVSnUw-:$">ListeDimmer</variable>
          <variable id="`oOf4xp@{7tb!OP.WQPa">xShellyDecke</variable>
          <variable id="s7P7duu~8~ZBu5zEuYKa">aktuellerDimmer</variable>
        </variables>
        <block type="variables_set" id="/]jhT7Fui2k(=0m3xZ^A" x="-713" y="-787">
          <field name="VAR" id="?#Z#jLem#phVVSnUw-:$">ListeDimmer</field>
          <value name="VALUE">
            <block type="lists_create_with" id="z6I@t;n{ak[n-Bj:2Q(`">
              <mutation items="3"></mutation>
              <value name="ADD0">
                <block type="field_oid" id="m-gTb)B8/cmVo*1:R(b8">
                  <field name="oid">shelly.0.SHRGBW2#661EDD#1.online</field>
                </block>
              </value>
              <value name="ADD1">
                <block type="field_oid" id="?Bf(|gG/W}3r-{GO$j_T">
                  <field name="oid">shelly.0.SHRGBW2#661F1C#1.online</field>
                </block>
              </value>
              <value name="ADD2">
                <block type="field_oid" id="NS3jo=@~4.73{a/]|M}Q">
                  <field name="oid">shelly.0.SHRGBW2#FCA00D#1.online</field>
                </block>
              </value>
            </block>
          </value>
          <next>
            <block type="controls_forEach" id="v%pfGA%Ov-l).8emF+*`">
              <field name="VAR" id="s7P7duu~8~ZBu5zEuYKa">aktuellerDimmer</field>
              <value name="LIST">
                <block type="variables_get" id="h-FY1C;,3ORl;-+hkc%6">
                  <field name="VAR" id="?#Z#jLem#phVVSnUw-:$">ListeDimmer</field>
                </block>
              </value>
              <statement name="DO">
                <block type="debug" id="!oK1S2g3I4onHWKxxx[v">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text">
                      <field name="TEXT"></field>
                    </shadow>
                    <block type="variables_get" id="!/lHXX[^w%!,@WnxuZ*(">
                      <field name="VAR" id="s7P7duu~8~ZBu5zEuYKa">aktuellerDimmer</field>
                    </block>
                  </value>
                  <next>
                    <block type="on_ext" id="@-Glx7IY$qN8NkonI+c)">
                      <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">
                          <field name="oid">default</field>
                        </shadow>
                        <block type="variables_get" id="#/f$wxNQerM*SG3`ivA+">
                          <field name="VAR" id="s7P7duu~8~ZBu5zEuYKa">aktuellerDimmer</field>
                        </block>
                      </value>
                      <statement name="STATEMENT">
                        <block type="procedures_callnoreturn" id="JL9vj=Qt#TYcBE~2NWl@">
                          <mutation name="schalteDimmer">
                            <arg name="xShellyDecke"></arg>
                          </mutation>
                          <value name="ARG0">
                            <block type="text_getSubstring" id="x{S72_[6CAM({N%@;tK:">
                              <mutation at1="false" at2="true"></mutation>
                              <field name="WHERE1">FIRST</field>
                              <field name="WHERE2">FROM_START</field>
                              <value name="STRING">
                                <block type="variables_get" id="|e/vv(lr$C-{sJ{i(7d%">
                                  <field name="VAR" id="s7P7duu~8~ZBu5zEuYKa">aktuellerDimmer</field>
                                </block>
                              </value>
                              <value name="AT2">
                                <block type="math_arithmetic" id="p2AUFg[4F(A5SBbmQ(gf">
                                  <field name="OP">MINUS</field>
                                  <value name="A">
                                    <shadow type="math_number">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="text_indexOf" id="$s.cw1JF}aP[tUK7~iO3">
                                      <field name="END">LAST</field>
                                      <value name="VALUE">
                                        <block type="variables_get" id="admCAd~4qruWh6zolP|s">
                                          <field name="VAR" id="s7P7duu~8~ZBu5zEuYKa">aktuellerDimmer</field>
                                        </block>
                                      </value>
                                      <value name="FIND">
                                        <shadow type="text" id="g3buHt,-+OR7bNKw}hIa">
                                          <field name="TEXT">.</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow type="math_number" id="n8`HreD*#Vx2h5*HVu}o">
                                      <field name="NUM">1</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
              <next>
                <block type="on_ext" id="ZQ8CEvOwZ7)N$D_R^Giu" disabled="true">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid">
                      <field name="oid">default</field>
                    </shadow>
                    <block type="field_oid" id="wzLU@mS-g*q{2r%vo5!m">
                      <field name="oid">shelly.0.SHRGBW2#661EDD#1.online</field>
                    </block>
                  </value>
                  <value name="OID1">
                    <shadow type="field_oid">
                      <field name="oid">default</field>
                    </shadow>
                    <block type="field_oid" id="-5~Gat^[Zu:A/|Ie/m=2">
                      <field name="oid">shelly.0.SHRGBW2#661F1C#1.online</field>
                    </block>
                  </value>
                  <value name="OID2">
                    <shadow type="field_oid">
                      <field name="oid">default</field>
                    </shadow>
                    <block type="field_oid" id="QL#M]9!UT8]9u`V%`YHV">
                      <field name="oid">shelly.0.SHRGBW2#FCA00D#1.online</field>
                    </block>
                  </value>
                  <statement name="STATEMENT">
                    <block type="procedures_callnoreturn" id="/Z9xoXms}Ryw?gsI1%@p">
                      <mutation name="schalteDimmer">
                        <arg name="xShellyDecke"></arg>
                      </mutation>
                      <value name="ARG0">
                        <block type="text_getSubstring" id="(je$VL@;A)E:J.=)Q`Lm">
                          <mutation at1="false" at2="true"></mutation>
                          <field name="WHERE1">FIRST</field>
                          <field name="WHERE2">FROM_START</field>
                          <value name="STRING">
                            <block type="on_source" id="hN#sZpy?MYcdw-St~t,J">
                              <field name="ATTR">id</field>
                            </block>
                          </value>
                          <value name="AT2">
                            <block type="math_arithmetic" id="4j`L##z3~}70k4Ol]ysf">
                              <field name="OP">MINUS</field>
                              <value name="A">
                                <shadow type="math_number">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="text_indexOf" id="%Ic|r]22?^J{wIoa{MZu">
                                  <field name="END">LAST</field>
                                  <value name="VALUE">
                                    <block type="on_source" id="_6QSE?q[@?Q=bC)3k1w,">
                                      <field name="ATTR">id</field>
                                    </block>
                                  </value>
                                  <value name="FIND">
                                    <shadow type="text" id="]MbeHz=l$N_v`O#q.+Rn">
                                      <field name="TEXT">.</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="NbD?5Lm-E%PJ@f[.uY]^">
                                  <field name="NUM">1</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="procedures_defnoreturn" id="14nc.?vsppfuM7!vEu!x" x="-688" y="-138">
          <mutation>
            <arg name="xShellyDecke" varid="`oOf4xp@{7tb!OP.WQPa"></arg>
          </mutation>
          <field name="NAME">schalteDimmer</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
          <statement name="STACK">
            <block type="debug" id="cZRu9%`q|rllOp+Eg~s|">
              <field name="Severity">log</field>
              <value name="TEXT">
                <shadow type="text">
                  <field name="TEXT"></field>
                </shadow>
                <block type="text_join" id=":A2@$LAJJy-(O=,3Pz!n">
                  <mutation items="3"></mutation>
                  <value name="ADD0">
                    <block type="variables_get" id="gqp.S}ASo_ptG*K8z1M#">
                      <field name="VAR" id="`oOf4xp@{7tb!OP.WQPa">xShellyDecke</field>
                    </block>
                  </value>
                  <value name="ADD1">
                    <block type="text" id="..1$m]!svAW}5zM7J[WZ">
                      <field name="TEXT">: </field>
                    </block>
                  </value>
                  <value name="ADD2">
                    <block type="get_value_var" id="2w?P.[mi25A:s-7@s_oi">
                      <field name="ATTR">val</field>
                      <value name="OID">
                        <shadow type="text">
                          <field name="TEXT"></field>
                        </shadow>
                        <block type="text_join" id="9=x;sVUr]_H0ZUpQ2=+W">
                          <mutation items="2"></mutation>
                          <value name="ADD0">
                            <block type="variables_get" id="i_KN$+0L9,g5uRvNi3?7">
                              <field name="VAR" id="`oOf4xp@{7tb!OP.WQPa">xShellyDecke</field>
                            </block>
                          </value>
                          <value name="ADD1">
                            <block type="text" id="h,maXB3|Yf3E/88Y5=)r">
                              <field name="TEXT">.online</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </statement>
        </block>
      </xml>
      

      Was mache ich hier falsch?

      Für mich sieht das javaskript eigentlich richtig aus:

      var ListeDimmer, xShellyDecke, aktuellerDimmer;
      
      // Beschreibe diese Funktion …
      async function schalteDimmer(xShellyDecke) {
        console.log(([xShellyDecke,': ',getState((String(xShellyDecke) + '.online')).val].join('')));
      }
      
      
      ListeDimmer = ['shelly.0.SHRGBW2#661EDD#1.online', 'shelly.0.SHRGBW2#661F1C#1.online', 'shelly.0.SHRGBW2#FCA00D#1.online'];
      for (var aktuellerDimmer_index in ListeDimmer) {
        aktuellerDimmer = ListeDimmer[aktuellerDimmer_index];
        console.log(aktuellerDimmer);
        on({id: aktuellerDimmer, change: "ne"}, async function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          await schalteDimmer(aktuellerDimmer.slice(0, (aktuellerDimmer.lastIndexOf('.') + 1) - 1));
        });
      }
      
      //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyJTNGJTIzWiUyM2pMZW0lMjNwaFZWU25Vdy0lM0ElMjQlMjIlM0VMaXN0ZURpbW1lciUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMiU2MG9PZjR4cCU0MCU3Qjd0YiFPUC5XUVBhJTIyJTNFeFNoZWxseURlY2tlJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyczdQN2R1dX44flpCdTV6RXVZS2ElMjIlM0Vha3R1ZWxsZXJEaW1tZXIlM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiUyRiU1RGpoVDdGdWkyayglM0QwbTN4WiU1RUElMjIlMjB4JTNEJTIyLTcxMyUyMiUyMHklM0QlMjItNzg3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0YlMjNaJTIzakxlbSUyM3BoVlZTblV3LSUzQSUyNCUyMiUzRUxpc3RlRGltbWVyJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxpc3RzX2NyZWF0ZV93aXRoJTIyJTIwaWQlM0QlMjJ6NkklNDB0JTNCbiU3QmFrJTVCbi1CaiUzQTJRKCU2MCUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJtLWdUYilCOCUyRmNtVm8qMSUzQVIoYjglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VzaGVsbHkuMC5TSFJHQlcyJTIzNjYxRUREJTIzMS5vbmxpbmUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjIlM0ZCZiglN0NnRyUyRlclN0Qzci0lN0JHTyUyNGpfVCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRXNoZWxseS4wLlNIUkdCVzIlMjM2NjFGMUMlMjMxLm9ubGluZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMk5TM2pvJTNEJTQwfjQuNzMlN0JhJTJGJTVEJTdDTSU3RFElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VzaGVsbHkuMC5TSFJHQlcyJTIzRkNBMDBEJTIzMS5vbmxpbmUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2ZvckVhY2glMjIlMjBpZCUzRCUyMnYlMjVwZkdBJTI1T3YtbCkuOGVtRiUyQiolNjAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnM3UDdkdXV+OH5aQnU1ekV1WUthJTIyJTNFYWt0dWVsbGVyRGltbWVyJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJMSVNUJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyaC1GWTFDJTNCJTJDM09SbCUzQi0lMkJoa2MlMjU2JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0YlMjNaJTIzakxlbSUyM3BoVlZTblV3LSUzQSUyNCUyMiUzRUxpc3RlRGltbWVyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMiFvSzFTMmczSTRvbkhXS3h4eCU1QnYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWxvZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyISUyRmxIWFglNUIlNUV3JTI1ISUyQyU0MFdueHVaKiglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnM3UDdkdXV+OH5aQnU1ekV1WUthJTIyJTNFYWt0dWVsbGVyRGltbWVyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX2V4dCUyMiUyMGlkJTNEJTIyJTQwLUdseDdJWSUyNHFOOE5rb25JJTJCYyklMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjElMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRW5lJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWRlZmF1bHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiUyMyUyRmYlMjR3eE5RZXJNKlNHMyU2MGl2QSUyQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyczdQN2R1dX44flpCdTV6RXVZS2ElMjIlM0Vha3R1ZWxsZXJEaW1tZXIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsbm9yZXR1cm4lMjIlMjBpZCUzRCUyMkpMOXZqJTNEUXQlMjNUWWNCRX4yTldsJTQwJTIyJTNFJTNDbXV0YXRpb24lMjBuYW1lJTNEJTIyc2NoYWx0ZURpbW1lciUyMiUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJ4U2hlbGx5RGVja2UlMjIlM0UlM0MlMkZhcmclM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFSRzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2dldFN1YnN0cmluZyUyMiUyMGlkJTNEJTIyeCU3QlM3Ml8lNUI2Q0FNKCU3Qk4lMjUlNDAlM0J0SyUzQSUyMiUzRSUzQ211dGF0aW9uJTIwYXQxJTNEJTIyZmFsc2UlMjIlMjBhdDIlM0QlMjJ0cnVlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTElMjIlM0VGSVJTVCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0hFUkUyJTIyJTNFRlJPTV9TVEFSVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyU1RSSU5HJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTdDZSUyRnZ2KGxyJTI0Qy0lN0JzSiU3QmkoN2QlMjUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnM3UDdkdXV+OH5aQnU1ekV1WUthJTIyJTNFYWt0dWVsbGVyRGltbWVyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9hcml0aG1ldGljJTIyJTIwaWQlM0QlMjJwMkFVRmclNUI0RihBNVNCYm1RKGdmJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VNSU5VUyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfaW5kZXhPZiUyMiUyMGlkJTNEJTIyJTI0cy5jdzFKRiU3RGFQJTVCdFVLN35pTzMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJFTkQlMjIlM0VMQVNUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMmFkbUNBZH40cXJ1V2g2em9sUCU3Q3MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnM3UDdkdXV+OH5aQnU1ekV1WUthJTIyJTNFYWt0dWVsbGVyRGltbWVyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyRklORCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJnM2J1SHQlMkMtJTJCT1I3Yk5LdyU3RGhJYSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UuJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJuOCU2MEhyZUQqJTIzVngyaDUqSFZ1JTdEbyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX2V4dCUyMiUyMGlkJTNEJTIyWlE4Q0V2T3daNylOJTI0RF9SJTVFR2l1JTIyJTIwZGlzYWJsZWQlM0QlMjJ0cnVlJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwaXRlbXMlM0QlMjIzJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0VuZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VkZWZhdWx0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMnd6TFUlNDBtUy1nKnElN0IyciUyNXZvNSFtJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFc2hlbGx5LjAuU0hSR0JXMiUyMzY2MUVERCUyMzEub25saW5lJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VkZWZhdWx0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMi01fkdhdCU1RSU1Qlp1JTNBQSUyRiU3Q0llJTJGbSUzRDIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VzaGVsbHkuMC5TSFJHQlcyJTIzNjYxRjFDJTIzMS5vbmxpbmUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQyJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWRlZmF1bHQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyUUwlMjNNJTVEOSFVVDglNUQ5dSU2MFYlMjUlNjBZSFYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VzaGVsbHkuMC5TSFJHQlcyJTIzRkNBMDBEJTIzMS5vbmxpbmUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsbm9yZXR1cm4lMjIlMjBpZCUzRCUyMiUyRlo5eG9YbXMlN0RSeXclM0Znc0kxJTI1JTQwcCUyMiUzRSUzQ211dGF0aW9uJTIwbmFtZSUzRCUyMnNjaGFsdGVEaW1tZXIlMjIlM0UlM0NhcmclMjBuYW1lJTNEJTIyeFNoZWxseURlY2tlJTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9nZXRTdWJzdHJpbmclMjIlMjBpZCUzRCUyMihqZSUyNFZMJTQwJTNCQSlFJTNBSi4lM0QpUSU2MExtJTIyJTNFJTNDbXV0YXRpb24lMjBhdDElM0QlMjJmYWxzZSUyMiUyMGF0MiUzRCUyMnRydWUlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldIRVJFMSUyMiUzRUZJUlNUJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSEVSRTIlMjIlM0VGUk9NX1NUQVJUJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJTVFJJTkclMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9zb3VyY2UlMjIlMjBpZCUzRCUyMmhOJTIzc1pweSUzRk1ZY2R3LVN0fnQlMkNKJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRWlkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9hcml0aG1ldGljJTIyJTIwaWQlM0QlMjI0aiU2MEwlMjMlMjN6M34lN0Q3MGs0T2wlNUR5c2YlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRU1JTlVTJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9pbmRleE9mJTIyJTIwaWQlM0QlMjIlMjVJYyU3Q3IlNUQyMiUzRiU1RUolN0J3SW9hJTdCTVp1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyRU5EJTIyJTNFTEFTVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9zb3VyY2UlMjIlMjBpZCUzRCUyMl82UVNFJTNGcSU1QiU0MCUzRlElM0RiQykzazF3JTJDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRWlkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyRklORCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjIlNURNYmVIeiUzRGwlMjROX3YlNjBPJTIzcS4lMkJSbiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UuJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJOYkQlM0Y1TG0tRSUyNVBKJTQwZiU1Qi51WSU1RCU1RSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19kZWZub3JldHVybiUyMiUyMGlkJTNEJTIyMTRuYy4lM0Z2c3BwZnVNNyF2RXUheCUyMiUyMHglM0QlMjItNjg4JTIyJTIweSUzRCUyMi0xMzglMjIlM0UlM0NtdXRhdGlvbiUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJ4U2hlbGx5RGVja2UlMjIlMjB2YXJpZCUzRCUyMiU2MG9PZjR4cCU0MCU3Qjd0YiFPUC5XUVBhJTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFc2NoYWx0ZURpbW1lciUzQyUyRmZpZWxkJTNFJTNDY29tbWVudCUyMHBpbm5lZCUzRCUyMmZhbHNlJTIyJTIwaCUzRCUyMjgwJTIyJTIwdyUzRCUyMjE2MCUyMiUzRUJlc2NocmVpYmUlMjBkaWVzZSUyMEZ1bmt0aW9uJTIwJUUyJTgwJUE2JTNDJTJGY29tbWVudCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFDSyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjJjWlJ1OSUyNSU2MHElN0NybGxPcCUyQkVnfnMlN0MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTZXZlcml0eSUyMiUzRWxvZyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjIlM0FBMiU0MCUyNExBSkp5LShPJTNEJTJDM1B6IW4lMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMyUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMmdxcC5TJTdEQVNvX3B0RypLOHoxTSUyMyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTYwb09mNHhwJTQwJTdCN3RiIU9QLldRUGElMjIlM0V4U2hlbGx5RGVja2UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyLi4xJTI0bSU1RCFzdkFXJTdENXpNN0olNUJXWiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0ElMjAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBREQyJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlX3ZhciUyMiUyMGlkJTNEJTIyMnclM0ZQLiU1Qm1pMjVBJTNBcy03JTQwc19vaSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjI5JTNEeCUzQnNWVXIlNURfSDBaVXBRMiUzRCUyQlclMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMiUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMmlfS04lMjQlMkIwTDklMkNnNXVSdk5pMyUzRjclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiU2MG9PZjR4cCU0MCU3Qjd0YiFPUC5XUVBhJTIyJTNFeFNoZWxseURlY2tlJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmglMkNtYVhCMyU3Q1lmM0UlMkY4OFk1JTNEKXIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFLm9ubGluZSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ4bWwlM0U=
      

      vielen Dank

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

        @raller09

        Ich denke der Trigger funktioniert wie geplant. Es ist die Meldung und der Aufruf der "schalte" Funktion die schief geht:
        Die Funktion wird mit dem Wert der Variablen "aktueller Dimmer" aufgerufen. Diese Variable ist wenn die Schleife (für jeden Wert ...) abgelaufen ist auf das letzte Element deiner Liste gesetzt. Sprich egal welcher Datenpunkt den Trigger auslöst, die Funktion wird immer mit dem letzten Eintrag der Liste ausgeführt. das sieht man auch an deinem Log-Eintrag.

        Wenn du innerhalb des Triggers statt der Variablen "aktueller Dimmer" denDatenpunkt "Objekt ID" (wie in dem deaktivierten Teil des Skriptes nutzt, dann sollte es gehen.

        Zusätzlich kannst Du es Dir zumindest für dieses Beispiel auch einfacher machen:

        • Nimm den deaktivierten Teil des Skriptes
        • Aktiviere den
        • Reduziere die Anzahl der Verbindungen für Objekte auf 1
        • Setze fuer dieses Objekt die Variable "ListeDimmer" ein.

        Damit sollten auch Trigger auf die 3 In der Liste vorhandenen Objekte erzeugt werden.

        A.

        1 Reply Last reply Reply Quote 0
        • R
          raller09 last edited by raller09

          Moin,

          es funktionieren beide Lösungen.
          Manchmal ist es so einfach (+ "globale" Variablen sind die Hölle...).

          Danke.

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

          Support us

          ioBroker
          Community Adapters
          Donate

          772
          Online

          31.8k
          Users

          79.9k
          Topics

          1.3m
          Posts

          2
          3
          155
          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