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]mehrere Trigger Skript startet nicht.

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst]mehrere Trigger Skript startet nicht.

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

      Hallo,

      ich habe ein kleines Skript welches mir 4 Messwerte addieren soll sobald sich einer der Werte ändert.
      Problem: sobald mehr wie 1 Trigger-Objekt angegeben wird läuft das Skript nicht. (ohne Fehler im Log).
      Hatte von dem Bug in der JS Version 5.0.11 gelesen aber da gab es Fehler im Log, ich nutze die Version 5.2.8
      Das Skript wurde auch mit dieser Version (5.2.8) erstellt, ich habe das gleiche Skript mal mit einer älteren Version (k.A. welche) erstellt das läuft noch.
      Kann dazu jemand eine Lösung geben?

      läuft nicht:
      1.PNG

      so schon:
      2.PNG

      dslraser 1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @XBiT last edited by

        @xbit sagte in mehrere Trigger Skript startet nicht.:

        Problem: sobald mehr wie 1 Trigger-Objekt angegeben wird läuft das Skript nicht. (ohne Fehler im Log).

        Welche Fehler ? (Log in Code Tags bitte posten)

        XBiT 1 Reply Last reply Reply Quote 0
        • XBiT
          XBiT @dslraser last edited by

          @dslraser

          Habe keine Fehler im Log da kann ich nichts Posten, Sorry habe mich sicher etwas unglücklich ausgedrückt.. 😊

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

            Es scheint am alias zu liegen wenn ich die direkten Datenpunkte als Trigger nehme läuft das Skript, über die alias.0 Datenpunkte nicht.

            Die Werte die zusammenaddiert werden kommen aber auch aus den alias Datenpunkten also sollten die doch auch als Trigger gehen?

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

              @xbit sagte in: Es scheint am alias zu liegen

              Weshalb haben die Alias-Datenpunkte keine eindeutigen Namen?

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

                @paul53

                haben sie eigentlich schon... wird nur im Blockly nicht so toll angezeigt...

                hier mal beim umschalten auf JS

                on({id: new RegExp('alias\\.0\\.Steckdosen TV Reihe 1 + 2\\.Power' + "$|" + 'alias\\.0\\.Steckdosen TV Reihe 1 + 2\\.Power_2' + "$|" + 'alias\\.0\\.Steckdosen TV Reihe 3 + 4\\.Power' + "$"), change: "ne"}, async function (obj) {
                    setState("0_userdata.0.Verbrauchsanzeigen.Verbrauch_Multimedia_gesamt"/*Verbrauch_Multimedia_gesamt*/, Math.round((getState("alias.0.Steckdosen TV Reihe 1 + 2.Power").val + getState("alias.0.Steckdosen TV Reihe 1 + 2.Power_2").val + getState("alias.0.Steckdosen TV Reihe 3 + 4.Power").val + getState("alias.0.Steckdosen TV Reihe 3 + 4.Power_2").val)*100)/100);
                });
                

                bzw. Export:

                <xml xmlns="https://developers.google.com/blockly/xml">
                  <block type="on_ext" id="`w,q6JCXQkGyqKiz*MN7" x="323" y="-369">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                    <field name="CONDITION">ne</field>
                    <field name="ACK_CONDITION"></field>
                    <value name="OID0">
                      <shadow type="field_oid" id="=K?If8#,T6:$@}Ydn;,`">
                        <field name="oid">alias.0.Steckdosen TV Reihe 1 + 2.Power</field>
                      </shadow>
                    </value>
                    <value name="OID1">
                      <shadow type="field_oid" id=")RB;~Zxd37U!cbfJos6d">
                        <field name="oid">alias.0.Steckdosen TV Reihe 1 + 2.Power_2</field>
                      </shadow>
                    </value>
                    <value name="OID2">
                      <shadow type="field_oid" id="LADMGLpU+sxv`?lXgI2k">
                        <field name="oid">alias.0.Steckdosen TV Reihe 3 + 4.Power</field>
                      </shadow>
                    </value>
                    <value name="OID3">
                      <shadow type="field_oid" id="XPmrf#|}/Fz9=$N$lLQX">
                        <field name="oid">alias.0.Steckdosen TV Reihe 1 + 2.Power_2</field>
                      </shadow>
                    </value>
                    <statement name="STATEMENT">
                      <block type="control" id="s;vj-5u+uQ}]^3M?1T5p">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">0_userdata.0.Verbrauchsanzeigen.Verbrauch_Multimedia_gesamt</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="math_rndfixed" id="0D;s8J83+=uErxddl`5K">
                            <field name="n">2</field>
                            <value name="x">
                              <shadow type="math_number">
                                <field name="NUM">3.1234</field>
                              </shadow>
                              <block type="math_arithmetic" id="Ypz)`z2P.L/mRr.xY_~`" inline="false">
                                <field name="OP">ADD</field>
                                <value name="A">
                                  <shadow type="math_number">
                                    <field name="NUM">1</field>
                                  </shadow>
                                  <block type="get_value" id="#JtsGsXPM.i[;F8QuB3)">
                                    <field name="ATTR">val</field>
                                    <field name="OID">alias.0.Steckdosen TV Reihe 1 + 2.Power</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <shadow type="math_number">
                                    <field name="NUM">1</field>
                                  </shadow>
                                  <block type="math_arithmetic" id="pbH,d0_${:(zMnCy,8HF" inline="false">
                                    <field name="OP">ADD</field>
                                    <value name="A">
                                      <shadow type="math_number">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="get_value" id="*+i$oaiq!5_i(2}11PrH">
                                        <field name="ATTR">val</field>
                                        <field name="OID">alias.0.Steckdosen TV Reihe 1 + 2.Power_2</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <shadow type="math_number">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="math_arithmetic" id="H9,u2@8kp4(JeKy#/DBL" inline="false">
                                        <field name="OP">ADD</field>
                                        <value name="A">
                                          <shadow type="math_number">
                                            <field name="NUM">1</field>
                                          </shadow>
                                          <block type="get_value" id="?sL8*Ea-$0IY+2mZ=dPW">
                                            <field name="ATTR">val</field>
                                            <field name="OID">alias.0.Steckdosen TV Reihe 3 + 4.Power</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <shadow type="math_number">
                                            <field name="NUM">1</field>
                                          </shadow>
                                          <block type="get_value" id=":#{e]*lnY4|1,qDdhzl^">
                                            <field name="ATTR">val</field>
                                            <field name="OID">alias.0.Steckdosen TV Reihe 3 + 4.Power_2</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </statement>
                  </block>
                </xml>
                
                
                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @XBiT last edited by paul53

                  @xbit sagte: wird nur im Blockly nicht so toll angezeigt...

                  Ich meine die Namen (angezeigt in Blockly) - nicht die IDs.

                  @xbit sagte in mehrere Trigger Skript startet nicht.:

                  beim umschalten auf JS

                  Leerzeichen oder + in der ID machen bei RegExp Probleme.

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

                    @paul53

                    sorry verstehe ich nicht.. wenn ich im Blockly auf "alias.0.Steckdosen TV Reihe 1 + 2.Power" klicke und danach nur noch "Power" da steht was soll ich dagegen machen?

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

                      @xbit sagte: danach nur noch "Power" da steht was soll ich dagegen machen?

                      Den Alias-Datenpunkten eindeutige und sinnvolle Namen vergeben. Das geht ganz einfach nachträglich im Tab "Objekte". Der Vorteil vom Alias: Die Namen werden nicht von einem Adapter überschrieben.

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

                        @paul53

                        Habe die Namen geändert sieht jetzt wie folgt aus:

                        1.PNG

                        Läuft aber auch so leider nicht.

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

                          @xbit sagte: Läuft aber auch so leider nicht.

                          RegExp mit Leerzeichen und + in den IDs.
                          Namen dürfen Leerzeichen und sonstige Sonderzeichen enthalten.

                          Versuche es mal so:

                          Bild_2021-09-18_132206.png

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

                            @paul53

                            Ja so läuft es Besten Dank. Warum es so ist verstehe ich aber immer noch nicht 😖

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

                              @xbit sagte: Warum es so ist verstehe ich aber immer noch nicht

                              Ich verwende in IDs nur

                              • Buchstaben (keine Umlaute, ß)
                              • Ziffern
                              • Unterstrich und Bindestrich
                              • Punkt zum Strukturieren

                              und keine Leerzeichen. Damit gibt es nie Probleme.

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

                                @paul53

                                Ich habe gerade erst mit den alias begonnen, da ich 2 Geräte getauscht habe und ohne alias ist das schon Aufwand...
                                Ich benenne die jetzt mal um ohne Leer/Sonderzeichen denke auch danach geht es...

                                Dank Dir

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                812
                                Online

                                32.0k
                                Users

                                80.5k
                                Topics

                                1.3m
                                Posts

                                3
                                14
                                493
                                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