Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly: auf Werte einer Liste zugreifen

    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

    Blockly: auf Werte einer Liste zugreifen

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active @Hiltex last edited by dslraser

      @Hiltex
      Ich habe keinen Gardena, aber beim Worx gibt es zwei Datenpunkte mit Listenwerten.

      Einmal den Status:

      worx status.png

      Und Error:

      worx-error.png

      Ich habe mir für diese beiden Datenpunkte noch zwei eigene zusätzliche Datenpunkte erstellt, da ich gern die Meldung in deutsch bekommen möchte. Ausserdem verwende ich die eigenen Datenpunkte zur Anzeige in iQontol.

      Screenshot_20190715-150138_Chrome.jpg

      Wenn hier Herstellerseitig/Adapterseitig ein neuer Eintag in die Liste kommt, müßte ich das also mitbekommen. (über das letzte sonst...) Bisher funktioniert es wie gewünscht.

      Mein Blockly dazu sieht so aus:

      Bildschirmfoto 2019-07-15 um 14.39.52.png

      Bildschirmfoto 2019-07-15 um 14.40.16.png

      Bildschirmfoto 2019-07-15 um 14.40.46.png

      50.000 Zeichen Limit, daher hier als Textdatei
      worx.txt

      Edit: heute morgen hatte ich mal (kommt selten vor) einen Error. Da habe ich den Mäher ausgeschaltet und wieder auf den Rasen gelegt und dann wieder gestartet.

      Bildschirmfoto 2019-07-15 um 14.51.48.png

      Hiltex R 2 Replies Last reply Reply Quote 0
      • Hiltex
        Hiltex @dslraser last edited by

        @dslraser Nette Lösung aber das wäre mir viel zu viel Information. Ich habs lieber sparsam und lass mich nur bei Problemen informieren. Was bringt mir sonst mein smartes Zuhause, wenn es ständig meine Aufmerksamkeit benötigt?

        Folgende Lösung funktioniert jetzt wie gewünscht:
        4fb78060-1311-48e3-896f-5ab826b2328e-grafik.png

        Die Liste erweitere ich bei Bedarf, wenn eine Meldung ankommt, die ich vorher noch nicht berücksichtigt habe.

        Wenn ich mehr wissen will, dann nutze ich meine VIS. Da kann ich alles sehen, wenn ich da Lust drauf habe.
        0bbeacca-2181-46c0-801c-08b65ede0080-grafik.png

        Danke an alle für die Hilfe.

        dslraser M 2 Replies Last reply Reply Quote 1
        • dslraser
          dslraser Forum Testing Most Active @Hiltex last edited by

          @Hiltex
          sollte auch nur ein Beispiel sein. Die Meldungen, die Du nicht willst, kannst Du ja auch weg lessen.

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

            @dslraser ich wollte dich und deine Lösung auch nicht kritisieren, sondern nur zum Ausdruck bringen, dass das nicht das ist, was ich mir vorstelle. Sorry, wenn das falsch rüber gekommen ist.

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

              @Hiltex
              quatsch, kein Problem

              1 Reply Last reply Reply Quote 0
              • M
                muuulle @Hiltex last edited by

                @Hiltex
                Das sieht großartig aus. Könntest du mir die Scripte und den VIS Teil zur Verfügung stellen?

                Vielen Dank

                Hiltex 1 Reply Last reply Reply Quote 0
                • Hiltex
                  Hiltex @muuulle last edited by

                  @muuulle Da will ich mal nicht so sein 😉

                  Der Blockly-Export:

                  <xml xmlns="http://www.w3.org/1999/xhtml">
                    <variables>
                      <variable type="" id="A^Lj$G?P/~^?QyF]Z6(t">Liste</variable>
                      <variable type="" id="qLWFjsyZoVDS)!v=wv$2">message-text</variable>
                      <variable type="" id="%I}=-P3`d=35#Sx/=[+o">value</variable>
                    </variables>
                    <block type="comment" id="0rsl!cM_@)YcW^M:9Ad~" x="37" y="13">
                      <field name="COMMENT">Liste mit Meldungen, die NICHT gesendet werden</field>
                      <next>
                        <block type="variables_set" id="voF4G0J0Np.6N80Q],mj">
                          <field name="VAR" id="A^Lj$G?P/~^?QyF]Z6(t" variabletype="">Liste</field>
                          <value name="VALUE">
                            <block type="lists_create_with" id="uM3ml=Z10Ey-[]5HlI;q">
                              <mutation items="5"></mutation>
                              <value name="ADD0">
                                <block type="text" id="y2qXW!{@M-;R}NjLi)(5">
                                  <field name="TEXT">ok_leaving</field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="text" id="16+HEUL,!U_YjGrXpiv`">
                                  <field name="TEXT">ok_cutting</field>
                                </block>
                              </value>
                              <value name="ADD2">
                                <block type="text" id="a[B,_}H3Tc./m5mq@YF%">
                                  <field name="TEXT">ok_searching</field>
                                </block>
                              </value>
                              <value name="ADD3">
                                <block type="text" id="Wqlq?8y`D@u*$LivFvt5">
                                  <field name="TEXT">ok_charging</field>
                                </block>
                              </value>
                              <value name="ADD4">
                                <block type="text" id="O:kfq6]l[y^yEV?%7a5c">
                                  <field name="TEXT">parked_timer</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="on_ext" id="fgr0{0UaysX(pzL9kO~L">
                              <mutation items="1"></mutation>
                              <field name="CONDITION">ne</field>
                              <field name="ACK_CONDITION"></field>
                              <value name="OID0">
                                <shadow type="field_oid" id="H;vS9z#$3=|m97kIJfui">
                                  <field name="oid">gardena.0.datapoints.c1dd3c29-f7e4-47be-93df-2067815e31b0.eca204ea-d62d-4c73-8076-17a28e8f70fc.abilities.2c579936-2445-3831-a3f0-3266dc017705.2863fa2f-a0d4-3e82-8bb3-5088c2d2be58</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="controls_if" id="A{hA@)q`=X7UPpmcM!e-">
                                  <value name="IF0">
                                    <block type="logic_compare" id="L3fd^]`tVU4!Q0%c}D)q">
                                      <field name="OP">EQ</field>
                                      <value name="A">
                                        <block type="lists_indexOf" id="5P_]#z$~wB^@jwh#qk55">
                                          <field name="END">FIRST</field>
                                          <value name="VALUE">
                                            <block type="variables_get" id="05%5*6#yD,v~A9u?2rpJ">
                                              <field name="VAR" id="A^Lj$G?P/~^?QyF]Z6(t" variabletype="">Liste</field>
                                            </block>
                                          </value>
                                          <value name="FIND">
                                            <block type="variables_get" id="ZfZ.gfD[VmjS-Y{$i^,l">
                                              <field name="VAR" id="%I}=-P3`d=35#Sx/=[+o" variabletype="">value</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="math_number" id="WEtX5VFr$g%hs9d;n#^Z">
                                          <field name="NUM">0</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="controls_if" id="4/M],9a?k.-@AK,Bhy)*">
                                      <mutation else="1"></mutation>
                                      <value name="IF0">
                                        <block type="logic_compare" id="|%^)L*Ev(nYM.,|vq`e$">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="variables_get" id="],j`1g0*.S{+J#Dpe?@R">
                                              <field name="VAR" id="%I}=-P3`d=35#Sx/=[+o" variabletype="">value</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="text" id="!Xhf2}Fm6ry,N~;MfHik">
                                              <field name="TEXT">error</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="variables_set" id="KU2H(a!gnsdS*1g!#TI6">
                                          <field name="VAR" id="qLWFjsyZoVDS)!v=wv$2" variabletype="">message-text</field>
                                          <value name="VALUE">
                                            <block type="text_join" id="H(3u`N%S8=V9MlY/pRU!">
                                              <mutation items="5"></mutation>
                                              <value name="ADD0">
                                                <block type="text" id="0pz-12?Pjx9L^~+2%utv">
                                                  <field name="TEXT">&lt;B&gt;Robi-Status:&lt;/B&gt;</field>
                                                </block>
                                              </value>
                                              <value name="ADD1">
                                                <block type="text_newline" id="U-nhX`7thOe_gy@bXez3">
                                                  <field name="Type">\n</field>
                                                </block>
                                              </value>
                                              <value name="ADD2">
                                                <block type="variables_get" id="HiUK^Q^}EiGk)cAT=G%%">
                                                  <field name="VAR" id="%I}=-P3`d=35#Sx/=[+o" variabletype="">value</field>
                                                </block>
                                              </value>
                                              <value name="ADD3">
                                                <block type="text_newline" id="p1+4wNSF6l]sjZMseOaO">
                                                  <field name="Type">\n</field>
                                                </block>
                                              </value>
                                              <value name="ADD4">
                                                <block type="get_value" id=":O6+eQgA;2NTzr/Ow*4c">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">gardena.0.datapoints.c1dd3c29-f7e4-47be-93df-2067815e31b0.eca204ea-d62d-4c73-8076-17a28e8f70fc.abilities.2c579936-2445-3831-a3f0-3266dc017705.c81e86ee-16c6-3352-9ba1-28488718f64e</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                      <statement name="ELSE">
                                        <block type="variables_set" id="1J[J:2Xjb)j6`RyUPqy,">
                                          <field name="VAR" id="qLWFjsyZoVDS)!v=wv$2" variabletype="">message-text</field>
                                          <value name="VALUE">
                                            <block type="text_join" id="co*b6;a/T?,pp3}w2/xJ">
                                              <mutation items="3"></mutation>
                                              <value name="ADD0">
                                                <block type="text" id=",_gg?MBhxdKdtUGskN]{">
                                                  <field name="TEXT">&lt;B&gt;Robi-Status:&lt;/B&gt;</field>
                                                </block>
                                              </value>
                                              <value name="ADD1">
                                                <block type="text_newline" id="UN!EmU]$y8:p}VsZM]+2">
                                                  <field name="Type">\n</field>
                                                </block>
                                              </value>
                                              <value name="ADD2">
                                                <block type="variables_get" id="heEXEXYE27!Umy7yNlPx">
                                                  <field name="VAR" id="%I}=-P3`d=35#Sx/=[+o" variabletype="">value</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                      <next>
                                        <block type="telegram" id="rWxr:B@M}XZ{:`mEBLmq">
                                          <field name="INSTANCE"></field>
                                          <field name="LOG"></field>
                                          <field name="SILENT">FALSE</field>
                                          <field name="PARSEMODE">HTML</field>
                                          <value name="MESSAGE">
                                            <shadow type="text" id="oO(Hh}{3KME6+k}i.yc1">
                                              <field name="TEXT">text</field>
                                            </shadow>
                                            <block type="variables_get" id="-S?wE;x+-*t~BJhi8+WW">
                                              <field name="VAR" id="qLWFjsyZoVDS)!v=wv$2" variabletype="">message-text</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </xml>
                  

                  Und der Export aus VIS als Dateianhang, da zu lang für die Zeichenbegrenzung.
                  vis_maehroboter.txt

                  Sieht dann so aus:
                  1563197012598-0bbeacca-2181-46c0-801c-08b65ede0080-grafik.png

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

                    @dslraser

                    Klasse Script! Genau sowas hab ich auch für meinen Landroid gesucht. Hab es gerade übernommen und minimal abgeändert. Funktioniert einwandfrei. Wollte mich trotz des Alters des Posts noch dafür bedanken. Also: Danke 😁

                    Stephan Schleich 1 Reply Last reply Reply Quote 0
                    • Stephan Schleich
                      Stephan Schleich @Ravermichl last edited by Stephan Schleich

                      Ich würde das Thema gerne nochmal aufgreifen, da bei mir die Liste auch nicht richtig abgearbeitet wird, es wird nur immer ein Wert abgearbeitet pro Trigger, jemand ne idee? (Letztes Jahr lief es noch einwandfrei)

                      3872b6a0-42f9-42a7-9444-3924adae743f-image.png

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

                        @stephan-schleich sagte: es wird nur immer ein Wert abgearbeitet pro Trigger

                        Funktioniert die Schleife nicht?
                        Kann höchstens eine Vereinfachung anbieten:

                        Bild_2022-09-21_192729492.png

                        EDIT: Vielleicht hilft es, mit zeitlichem Abstand zu senden?

                        Bild_2022-09-21_233226952.png

                        Stephan Schleich 1 Reply Last reply Reply Quote 1
                        • Stephan Schleich
                          Stephan Schleich @paul53 last edited by

                          @paul53 Danke Paul, 1 Sekunde Pause direkt nach dem Trigger hat das Problem gelöst, sehr komisch und unverständlich für mich, aber läuft wieder 👍

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          505
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          blockly
                          8
                          24
                          10774
                          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