Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Seit JS 4.1.6 läuft bestimmtes Blockly nicht mehr (auch nicht in 4.1.7) - gelöst

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    834

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.5k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    5.7k

Seit JS 4.1.6 läuft bestimmtes Blockly nicht mehr (auch nicht in 4.1.7) - gelöst

Geplant Angeheftet Gesperrt Verschoben Blockly
7 Beiträge 3 Kommentatoren 913 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • J Offline
    J Offline
    jf62
    schrieb am zuletzt editiert von jf62
    #1

    Bis 4.05 lief das folgende Blockly einwandfrei:

    <xml xmlns="http://www.w3.org/1999/xhtml">
      <block type="procedures_defcustomreturn" id="]^61Plj!Mn:=T#0aqA~)" x="-387" y="-362">
        <mutation statements="false">
          <arg name="strobjektname"></arg>
        </mutation>
        <field name="NAME">IPauslesen</field>
        <field name="SCRIPT">dmFyIGlwPWdldFN0YXRlKHN0cm9iamVrdG5hbWUpLnZhbDsKcmV0dXJuIGlwOw==</field>
        <comment pinned="false" h="80" w="160">IP auslesen</comment>
      </block>
      <block type="schedule" id="_+?83h_Fn{/-=dF)t4TY" x="-388" y="-311">
        <field name="SCHEDULE">15 3 * * *</field>
        <statement name="STATEMENT">
          <block type="variables_set" id="ax1wnXnRpcC;5Hp*6jEZ">
            <field name="VAR">posKomma</field>
            <value name="VALUE">
              <block type="math_number" id="fy%u8AoQI{4LK#/KTn{l">
                <field name="NUM">0</field>
              </block>
            </value>
            <next>
              <block type="variables_set" id="78=.L17.k4D0*]%q;Goq">
                <field name="VAR">ListeSonoffs</field>
                <value name="VALUE">
                  <block type="text_join" id="a~)ZvIAhU=f2uf)2ApUX">
                    <mutation items="2"></mutation>
                    <value name="ADD0">
                      <block type="get_value" id="Wfo}1(IaiwlY.DvMW#hq">
                        <field name="ATTR">val</field>
                        <field name="OID">sonoff.0.info.connection</field>
                      </block>
                    </value>
                    <value name="ADD1">
                      <block type="text" id="J_61GFpx9XjNxm=.~zDn">
                        <field name="TEXT">,</field>
                      </block>
                    </value>
                  </block>
                </value>
                <next>
                  <block type="variables_set" id="^-{cZ%`Yl@inN6%iFV_1">
                    <field name="VAR">Schleifenende</field>
                    <value name="VALUE">
                      <block type="logic_boolean" id="-(BAfc?GO`spC5!wpYsY">
                        <field name="BOOL">FALSE</field>
                      </block>
                    </value>
                    <next>
                      <block type="controls_whileUntil" id="6Ew3x5fxV4FcyJQwL{1S">
                        <field name="MODE">WHILE</field>
                        <value name="BOOL">
                          <block type="logic_compare" id=")x[%vlw.*8rF#42(B-@t">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="variables_get" id="Qj@F}ndW?Ga`t?P)]Xu_">
                                <field name="VAR">Schleifenende</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_boolean" id="L9^f5j)})B@U7e8hVr=Q">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                          </block>
                        </value>
                        <statement name="DO">
                          <block type="comment" id="M0kHyANF{r4imLFfM1]f">
                            <field name="COMMENT">Suche nächstes Komma in der Sonoff-Liste</field>
                            <next>
                              <block type="variables_set" id="onHAj,}EN=0ptY80mvuZ">
                                <field name="VAR">posKomma</field>
                                <value name="VALUE">
                                  <block type="text_indexOf" id="|)T;kdpR(/_8cpAgy-8]">
                                    <field name="END">FIRST</field>
                                    <value name="VALUE">
                                      <block type="variables_get" id="q?/(-sqx:p%yl6]5]U;)">
                                        <field name="VAR">ListeSonoffs</field>
                                      </block>
                                    </value>
                                    <value name="FIND">
                                      <shadow type="text" id="i97+FP(ai8zMxC??|TGh">
                                        <field name="TEXT">,</field>
                                      </shadow>
                                    </value>
                                  </block>
                                </value>
                                <next>
                                  <block type="controls_if" id="zaLa8Ye+4ifsEG1{xT*.">
                                    <mutation else="1"></mutation>
                                    <value name="IF0">
                                      <block type="logic_compare" id="d#!2R.]me[E}D7:+zd)c">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="variables_get" id=",vZZJ8HVHbq1*4[)~c6J">
                                            <field name="VAR">posKomma</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="math_number" id="]8QHGi2yDY!zyl@0r.G@">
                                            <field name="NUM">0</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="comment" id="Lu]hq0`*I|}3F~k1@jpr">
                                        <field name="COMMENT">kein Komma mehr gefunden</field>
                                        <next>
                                          <block type="variables_set" id="`3Qc_7Yb_YFTv*5b-bJl">
                                            <field name="VAR">Schleifenende</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="v21Pm[OLs?K8MfRd3|=i">
                                                <field name="BOOL">TRUE</field>
                                              </block>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                    <statement name="ELSE">
                                      <block type="comment" id="VDR33}Sn|7UW6](RM{/v">
                                        <field name="COMMENT">Sonoff-Name aus Sonoff-Liste vom ersten Zeichen</field>
                                        <next>
                                          <block type="comment" id="x#F+r^5O.SR]c;EI?Uau">
                                            <field name="COMMENT">bis zum Zeichen vor dem Komma kopieren</field>
                                            <next>
                                              <block type="variables_set" id="%j/hlYKZv=KLa83TyTo+">
                                                <field name="VAR">NameSonoff</field>
                                                <value name="VALUE">
                                                  <block type="text_join" id="C82GcH}BOx1MBU%/j|f1">
                                                    <mutation items="3"></mutation>
                                                    <value name="ADD0">
                                                      <block type="text" id="rRpM+n,B3GU`/4)j1*Xe">
                                                        <field name="TEXT">sonoff.0.</field>
                                                      </block>
                                                    </value>
                                                    <value name="ADD1">
                                                      <block type="text_getSubstring" id="X;{yx;N@ojxN9@sM%;aX">
                                                        <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="3n8g+)M//kcMfLC~t,;)">
                                                            <field name="VAR">ListeSonoffs</field>
                                                          </block>
                                                        </value>
                                                        <value name="AT2">
                                                          <block type="math_arithmetic" id="F%ckJ0YR!61f5+tEKD]n">
                                                            <field name="OP">MINUS</field>
                                                            <value name="A">
                                                              <shadow type="math_number" id="g[e*s0*:|X3uK~aaUSM6">
                                                                <field name="NUM">1</field>
                                                              </shadow>
                                                              <block type="variables_get" id="DajtIuOth{hV/t`|Vp-^">
                                                                <field name="VAR">posKomma</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <shadow type="math_number" id="J##.!2+}ZK_;,n*UTUQU">
                                                                <field name="NUM">1</field>
                                                              </shadow>
                                                            </value>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <value name="ADD2">
                                                      <block type="text" id="C%z8iR}NQZ{BLCTdL@Tj">
                                                        <field name="TEXT">.INFO.IPAddress</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="comment" id="cCRoZ]K(_9ab[96os0GH">
                                                    <field name="COMMENT">IP-Adresse des Sonoffs über Javascript auslesen</field>
                                                    <next>
                                                      <block type="variables_set" id="5SZsG?NI(67[QgaWFE3:">
                                                        <field name="VAR">IPAdresse</field>
                                                        <value name="VALUE">
                                                          <block type="procedures_callcustomreturn" id="wnzJ8,(}k(ap=;!FD^2@">
                                                            <mutation name="IPauslesen">
                                                              <arg name="strobjektname"></arg>
                                                            </mutation>
                                                            <value name="ARG0">
                                                              <block type="variables_get" id="0SX]Z}^wDSM`0N-p_^,r">
                                                                <field name="VAR">NameSonoff</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="comment" id="|-!dskn/KBcDAtd,`9Gy">
                                                            <field name="COMMENT">Ersten Eintrag in der Sonoff-Liste entfernen</field>
                                                            <next>
                                                              <block type="variables_set" id="m{,#zBp1=o)_x92.wkB1">
                                                                <field name="VAR">ListeSonoffs</field>
                                                                <value name="VALUE">
                                                                  <block type="text_getSubstring" id="vSrOkB@+y5-t=@wGbX?i">
                                                                    <mutation at1="true" at2="false"></mutation>
                                                                    <field name="WHERE1">FROM_START</field>
                                                                    <field name="WHERE2">LAST</field>
                                                                    <value name="STRING">
                                                                      <block type="variables_get" id="/*koR(^kCg!(*h1;(!OF">
                                                                        <field name="VAR">ListeSonoffs</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="AT1">
                                                                      <block type="math_arithmetic" id="Snf@1(NV3O2-/Q{s[zw.">
                                                                        <field name="OP">ADD</field>
                                                                        <value name="A">
                                                                          <shadow type="math_number" id="g[e*s0*:|X3uK~aaUSM6">
                                                                            <field name="NUM">1</field>
                                                                          </shadow>
                                                                          <block type="variables_get" id="!A?Mo*(l#k7F-?iyoKaX">
                                                                            <field name="VAR">posKomma</field>
                                                                          </block>
                                                                        </value>
                                                                        <value name="B">
                                                                          <shadow type="math_number" id=";YA6SY`7(NgEZ_SK`0KT">
                                                                            <field name="NUM">1</field>
                                                                          </shadow>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="comment" id="p8LNBz*i-[5@L=lVUp|@">
                                                                    <field name="COMMENT">URL für Restart des aktuellen Sonoffs erstellen</field>
                                                                    <next>
                                                                      <block type="variables_set" id="|tQ6q%T:bkRT;dgGX-)H">
                                                                        <field name="VAR">RestartURL</field>
                                                                        <value name="VALUE">
                                                                          <block type="text_join" id="hmg4gkUD=wn9`m8k=Wip">
                                                                            <mutation items="3"></mutation>
                                                                            <value name="ADD0">
                                                                              <block type="text" id="04;`,wWz7RWByQ=U|e|)">
                                                                                <field name="TEXT">http://</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="ADD1">
                                                                              <block type="variables_get" id="b_hVl/#*k,2)rYQmj!_!">
                                                                                <field name="VAR">IPAdresse</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="ADD2">
                                                                              <block type="text" id="hyR19y=59s!H4{MQKCvY">
                                                                                <field name="TEXT">/rb?</field>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                        <next>
                                                                          <block type="comment" id="@w.yP6,ZV-}*3_Tku:+~">
                                                                            <field name="COMMENT">URL aufrufen = Sonoff-Restart</field>
                                                                            <next>
                                                                              <block type="request" id="J7gk1(S*UXJ/i@;hB)w3">
                                                                                <mutation with_statement="false"></mutation>
                                                                                <field name="WITH_STATEMENT">FALSE</field>
                                                                                <field name="LOG">log</field>
                                                                                <value name="URL">
                                                                                  <shadow type="text" id="[NA{ZA?sj2%RB-}9Z)nc">
                                                                                    <field name="TEXT">text</field>
                                                                                  </shadow>
                                                                                  <block type="variables_get" id="UW3^#=kl!}iNdKV5RiaJ">
                                                                                    <field name="VAR">RestartURL</field>
                                                                                  </block>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="comment" id="pC8M(DYgPmpC:04Q0Uuh">
                                                                                    <field name="COMMENT">Zusätzlichen Eintrag im Log erstellen (kann entfallen)</field>
                                                                                    <next>
                                                                                      <block type="debug" id="kDTrzP7)K6eNZfJ{V7E{">
                                                                                        <field name="Severity">log</field>
                                                                                        <value name="TEXT">
                                                                                          <shadow type="text" id="=AZlVJqJ8Bdv2^hc2b3h">
                                                                                            <field name="TEXT">test</field>
                                                                                          </shadow>
                                                                                          <block type="text_join" id="]pH=D,b%GPW`V1ReS-YC">
                                                                                            <mutation items="4"></mutation>
                                                                                            <value name="ADD0">
                                                                                              <block type="variables_get" id="T69`T0[y6p53v~7jylp2">
                                                                                                <field name="VAR">NameSonoff</field>
                                                                                              </block>
                                                                                            </value>
                                                                                            <value name="ADD1">
                                                                                              <block type="text" id="OMb=Q/9BSV)OuE3F_lgg">
                                                                                                <field name="TEXT">(IP: </field>
                                                                                              </block>
                                                                                            </value>
                                                                                            <value name="ADD2">
                                                                                              <block type="variables_get" id="m1M=RGrmi)Qo}x;/q{]m">
                                                                                                <field name="VAR">IPAdresse</field>
                                                                                              </block>
                                                                                            </value>
                                                                                            <value name="ADD3">
                                                                                              <block type="text" id="?P(.~ss]U(BdMy0b^io4">
                                                                                                <field name="TEXT">) wurde neu gestartet</field>
                                                                                              </block>
                                                                                            </value>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </next>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </next>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </statement>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </statement>
      </block>
    </xml>
    

    Nun bekomme ich folgenden Fehler:

    1.3.2019, 10:15:06.787 [info ]: javascript.0 Stop script script.js.Neustart_Tasmota
    1.3.2019, 10:15:12.370 [info ]: javascript.0 Start javascript script.js.Neustart_Tasmota
    1.3.2019, 10:15:12.370 [info ]: javascript.0 script.js.Neustart_Tasmota: registered 0 subscriptions and 1 schedule
    1.3.2019, 10:16:00.074 [warn ]: javascript.0 at Object.<anonymous> (script.js.Neustart_Tasmota:14:25)
    1.3.2019, 10:16:00.075 [warn ]: javascript.0 at IPauslesen (script.js.Neustart_Tasmota:7:12)
    1.3.2019, 10:16:00.075 [warn ]: javascript.0 at Object.<anonymous> (script.js.Neustart_Tasmota:27:19)
    1.3.2019, 10:16:00.076 [error]: javascript.0 script.js.Neustart_Tasmota: Error: Invalid URI "http:///rb?"
    1.3.2019, 10:16:00.076 [info ]: javascript.0 script.js.Neustart_Tasmota: request: http:///rb?

    Was läuft hier falsch?

    1 Antwort Letzte Antwort
    0
    • thewhoboxT Offline
      thewhoboxT Offline
      thewhobox
      schrieb am zuletzt editiert von
      #2

      Hallo,

      ich hab mir gerade mal dein Script importiert und wie es scheint kann er die IP nicht auslesen weswegen die Restart URL "http://[hier fehlt die ip]/rb?" falsch ist und es abstürzt.

      Du könntest ja mal ein paar Debug ausgaben einbauen wo du den Namen zusammen setzt und wo er die IP abruft.

      Meine Adapter: emby | discovery
      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      J 1 Antwort Letzte Antwort
      0
      • thewhoboxT thewhobox

        Hallo,

        ich hab mir gerade mal dein Script importiert und wie es scheint kann er die IP nicht auslesen weswegen die Restart URL "http://[hier fehlt die ip]/rb?" falsch ist und es abstürzt.

        Du könntest ja mal ein paar Debug ausgaben einbauen wo du den Namen zusammen setzt und wo er die IP abruft.

        J Offline
        J Offline
        jf62
        schrieb am zuletzt editiert von jf62
        #3

        @thewhobox das dies der Fall ist weiß ich ja. Nur, das Blockly lief über 1 Jahr ohne Fehler und nun nicht mehr ...
        Hier muss ja der Fehler im JS Adapter liegen und nicht im Script.

        Wenn ich als pures JS umbaue sieht es so aus und läuft:

        var strobjektname, posKomma, ListeSonoffs, Schleifenende, NameSonoff, IPAdresse, RestartURL;
        
        /**
         * IP auslesen
         */
        function IPauslesen(strobjektname) {
            var ip=getState(strobjektname).val;
            return ip;
        }
        
        
        // Start per Scheduler
        schedule("10 16 * * *", function () {
          // posKomma = Position nächstes Komma in der Liste
          posKomma = 0;
          // Liste aller Sonoffs in Textform, kommasepariert
          ListeSonoffs = String(getState("sonoff.0.info.connection").val) + String(',');
          Schleifenende = false;
          while (Schleifenende == false) {
            // Suche nächstes Komma in der Sonoff-Liste
            posKomma = ListeSonoffs.indexOf(',') + 1;
            if (posKomma == 0) {
              // kein Komma mehr gefunden
              Schleifenende = true;
            } else {
              // Sonoff-Name aus Sonoff-Liste vom ersten Zeichen
              // bis zum Zeichen vor dem Komma kopieren
              NameSonoff = ['sonoff.0.',ListeSonoffs.slice(0, posKomma - 1),'.INFO.IPAddress'].join('');
              // IP-Adresse des Sonoffs über Javascript auslesen
              IPAdresse = IPauslesen(NameSonoff);
              // Ersten Eintrag in der Sonoff-Liste entfernen
              ListeSonoffs = ListeSonoffs.slice(((posKomma + 1) - 1), ListeSonoffs.length);
              // URL für Restart des aktuellen Sonoffs erstellen
              RestartURL = ['http://',IPAdresse,'/cm?cmnd=Restart%201'].join('');
              // URL aufrufen = Sonoff-Restart
              try {
                require("request")(RestartURL).on("error", function (e) {console.error(e);});
              } catch (e) { console.error(e); }
              console.log("request: " + RestartURL);
              // Zusätzlichen Eintrag im Log erstellen (kann entfallen)
            }
          }
        });
        
        1 Antwort Letzte Antwort
        0
        • J Offline
          J Offline
          jf62
          schrieb am zuletzt editiert von
          #4

          Geht natürlich auch so, ist aber trotzdem unbefriedigend, dass es als pures Blockly nicht mehr läuft.

          HomoranH 1 Antwort Letzte Antwort
          0
          • J jf62

            Geht natürlich auch so, ist aber trotzdem unbefriedigend, dass es als pures Blockly nicht mehr läuft.

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            schrieb am zuletzt editiert von
            #5

            @jf62

            Bitte 4.1.7 installieren

            kein Support per PN! - Fragen im Forum stellen - Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • J Offline
              J Offline
              jf62
              schrieb am zuletzt editiert von
              #6

              habe ich eben gemacht - keine Änderung

              1 Antwort Letzte Antwort
              0
              • J Offline
                J Offline
                jf62
                schrieb am zuletzt editiert von
                #7

                Fehler bei Debug:
                etState "List of connected clients" not found (3)
                getState "sonoff.0.null.INFO.IPAddress" not found (3)

                daher ObjectID neu zugeiesen - nun geht's

                Danke

                1 Antwort Letzte Antwort
                0

                Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                Registrieren Anmelden
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                449

                Online

                33.0k

                Benutzer

                83.5k

                Themen

                1.3m

                Beiträge
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2026
                logo
                • Anmelden

                • Du hast noch kein Konto? Registrieren

                • Anmelden oder registrieren, um zu suchen
                • Erster Beitrag
                  Letzter Beitrag
                0
                • Home
                • Aktuell
                • Tags
                • Ungelesen 0
                • Kategorien
                • Unreplied
                • Beliebt
                • GitHub
                • Docu
                • Hilfe