Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Luft-Messdaten von OpenSenseMap auslesen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Luft-Messdaten von OpenSenseMap auslesen

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

      @Homoran sagte:

      geht es anders?

      Nicht mit createState(). Ich würde die Funktion erzeugeZahlDP() mit verwenden.

      Blockly_temp.JPG

      Homoran 1 Reply Last reply Reply Quote 1
      • Homoran
        Homoran Global Moderator Administrators @paul53 last edited by Homoran

        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

        Ich würde die Funktion erzeugeZahlDP() mit verwenden.

        ok - das ist dann eine Funktion weniger un Name ist da ja auch RW 😉

        Ich hätte das aus "Strukturgründen" deshalb ja lieber als channel gehabt.

        Und dummy kommt dann in den Pfad bei den Sensor-States statt Station?

        paul53 2 Replies Last reply Reply Quote 0
        • paul53
          paul53 @Homoran last edited by paul53

          @Homoran sagte:

          Und dummy kommt dann in den Pfad bei den Sensor-States statt Station?

          Nein, dummy ist das, was der Bezeichner sagt. Die Variable wird nur benötigt, weil die Funktion einen Wert zurück gibt, der an dieser Stelle nicht benötigt wird.

          1 Reply Last reply Reply Quote 1
          • paul53
            paul53 @Homoran last edited by

            @Homoran sagte:

            aus "Strukturgründen" deshalb ja lieber als channel gehabt.

            Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

            Homoran 1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @paul53 last edited by

              @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

              @Homoran sagte:

              aus "Strukturgründen" deshalb ja lieber als channel gehabt.

              Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

              Das lasse ich lieber wenn das so gefährlich ist.

              Du überraschst mich immer wieder.

              @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

              Die Variable wird nur benötigt, weil die Funktion einen Wert zurück gibt,

              Das ist doch Hokuspokus 😉
              Bin mal gespannt

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                Natürlich hat es geklappt.
                Danke @paul53
                Aber bis ich das verdaut habe wird es noch etwas dauern

                @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                Dann musst Du einen Javascript-Funktion mit setObject() verwenden.

                Wenn ich ganz mutig bin verwende ich meine alte StationDP-Anlegen funktion und tausche nur setState gegen setObject aus.

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

                  @Homoran sagte:

                  tausche nur setState gegen setObject aus.

                  Genau das ist die Gefahr !!
                  Die Funktion erzeugeChannel(id, Name) müsste etwa so aussehen:

                  id = 'javascript.' + instance + '.' + id;
                  if(!existsObject(id)) {
                     let obj = {};
                     obj.type = 'channel';
                     obj.common = {};
                     obj.common.name = Name;
                     setObject(id, obj);
                  }
                  
                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @paul53 last edited by Homoran

                    Sorry @paul53

                    ich kapiere das nicht ganz.

                    Du prüfst ob die Id bereits existiert. Wenn nicht, legt er los - klar soweit!
                    Die ID wäre ja die Stationsnummer
                    Muss ich da vorher eine ID übergeben = Station? - klappt nicht

                    Den "Pfad" baust du ja im letzten Schritt komplett auf.
                    Name ist doch bereits die vorhandene Variable - muss ich da auch noch was übergeben?

                    Ich habe alle(?) Versionen mit und ohne Übergabe versucht, auch mit Text aus "Luftdaten."+Station

                    bekomme immer javascript.0 2020-01-02 16:53:29.576 error (4615) setForeignObject: try to set null object for [object Object]

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

                      @Homoran
                      Sorry, es wird eine falsche ID geprüft. Habe es oben korrigiert.

                      An die Funktion muss die Teil-ID und der Name übergeben werden.

                      Blockly_temp.JPG

                      Homoran 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @paul53 last edited by

                        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                        Sorry, es wird eine falsche ID geprüft.

                        kein Problem - das lernt 😉

                        @paul53 sagte in Luft-Messdaten von OpenSenseMap auslesen:

                        An die Funktion muss die Teil-ID und der Name übergeben werden.

                        Hatte ich fast so, ich hatte lediglich statt Attribut name... einfach Name genommen.
                        Da war doch was mit global und local :oops:

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

                          @Homoran sagte:

                          das lernt

                          Ja, woran man sieht, dass der Umgang mit setObject() nicht trivial ist.

                          @Homoran sagte in Luft-Messdaten von OpenSenseMap auslesen:

                          Da war doch was mit global und local :oops:

                          Die Funktionsparameter id und Name und die intern deklarierte Variable obj sind lokal (nur innerhalb der Funktion gültig).

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators last edited by

                            Nachdem @paul53 wie befürchtet das Skript komlett zerlegt und neu zusammengesetzt hat hier jetzt die aktuelle Version.

                            Vielen Dank nochmals an @paul53 - ich habe viel gelernt! (Hoffentlich behalte ich das auch).

                            <xml xmlns="http://www.w3.org/1999/xhtml">
                             <variables>
                               <variable type="" id="(OS6)At}0sRw3rBe4]ua">sensor</variable>
                               <variable type="" id="F8FJH2:MYg!TEng|{`cX">id</variable>
                               <variable type="" id="kNmwW)zuGsFpRPSr%tI4">Name</variable>
                               <variable type="" id="=:T.5x=N7D*5*g`@lmVQ">str</variable>
                               <variable type="" id="/Ob+6.k{E5c@No}z%#Fu">unit</variable>
                               <variable type="" id="I@-[Cj^I1}(-7m+VQ8Dj">idSensor</variable>
                               <variable type="" id="P}P_1?s%S89=9|ppf`Nx">Station</variable>
                               <variable type="" id="Z{~*0luN#Qp/IUr;|BmX">Unterverzeichnis</variable>
                               <variable type="" id="%arR9:8r$Bg^H++?QiSv">URL</variable>
                               <variable type="" id="9k8j[#@42,2VE~mdj%7,">obj</variable>
                               <variable type="" id="mfFi6HkOgN+sro=x^sXu">result</variable>
                               <variable type="" id="%VO!Ye}Fho*S1ssX{uog">sensors</variable>
                               <variable type="undefined" id="timeout">timeout</variable>
                               <variable type="" id="rn64I/AwPbPo#;6x;zx$">i</variable>
                             </variables>
                             <block type="comment" id="rRh=WVq[e{*QAmGaL_{b" x="-687" y="-537">
                               <field name="COMMENT">Skript zum Auslesen von Messstationen bei opensensemap.info</field>
                               <next>
                                 <block type="comment" id="O,?[OJ_U*rX)*]R}`4LR">
                                   <field name="COMMENT">von Homoran mit ganz viel Hilfe von paul53</field>
                                   <next>
                                     <block type="comment" id="j,L%{C[e.u@`d)6[f(r=">
                                       <field name="COMMENT">Version 0.3.1</field>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                             <block type="procedures_defnoreturn" id="=x|n[F+0Ffd=3R25^)BO" x="-63" y="-538">
                               <mutation>
                                 <arg name="sensor" varid="(OS6)At}0sRw3rBe4]ua"></arg>
                               </mutation>
                               <field name="NAME">Sensorwerte_auslesen</field>
                               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                               <statement name="STACK">
                                 <block type="variables_set" id="u*oWBI50DRa@5Jq2ix11">
                                   <field name="VAR" id="I@-[Cj^I1}(-7m+VQ8Dj" variabletype="">idSensor</field>
                                   <value name="VALUE">
                                     <block type="text_join" id="xT@ken$pI)`7jm?z}3{W">
                                       <mutation items="6"></mutation>
                                       <value name="ADD0">
                                         <block type="variables_get" id="]b;M+`Nh`:~xD,EO{c)u">
                                           <field name="VAR" id="Z{~*0luN#Qp/IUr;|BmX" variabletype="">Unterverzeichnis</field>
                                         </block>
                                       </value>
                                       <value name="ADD1">
                                         <block type="variables_get" id="-hrKM3^f7j|T9rpuV4G#">
                                           <field name="VAR" id="P}P_1?s%S89=9|ppf`Nx" variabletype="">Station</field>
                                         </block>
                                       </value>
                                       <value name="ADD2">
                                         <block type="text" id="1LTqt!PGPEJAiFGPPP?r">
                                           <field name="TEXT">.</field>
                                         </block>
                                       </value>
                                       <value name="ADD3">
                                         <block type="procedures_callcustomreturn" id="M!nMAe^g4b,?)$@!fwkE">
                                           <mutation name="Punktkiller">
                                             <arg name="str"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="get_attr" id="5}0nqRuX`7R08eW*^IBN">
                                               <value name="PATH">
                                                 <shadow type="text" id="7G2x!o3c5)f=1eEWV(xI">
                                                   <field name="TEXT">sensorType</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="variables_get" id="#%QmzLw(G1)rCN1RW`na">
                                                   <field name="VAR" id="(OS6)At}0sRw3rBe4]ua" variabletype="">sensor</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <value name="ADD4">
                                         <block type="text" id="aCH6aN^+-()+-Z,9P1qc">
                                           <field name="TEXT">.</field>
                                         </block>
                                       </value>
                                       <value name="ADD5">
                                         <block type="procedures_callcustomreturn" id="]h^ME#v5[vEHu6BDWAw-">
                                           <mutation name="Punktkiller">
                                             <arg name="str"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="get_attr" id="{~=Y.%P~2,|4*2^JbZ*p">
                                               <value name="PATH">
                                                 <shadow type="text" id="t7FkP$/$emT%_4N_S_5Q">
                                                   <field name="TEXT">title</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="variables_get" id="CsZwX)34~VBzZfFKp=We">
                                                   <field name="VAR" id="(OS6)At}0sRw3rBe4]ua" variabletype="">sensor</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="controls_if" id="s$NJk]uP]Y5yAOT8A=H1">
                                       <value name="IF0">
                                         <block type="procedures_callcustomreturn" id="72HYING-9uU7xm`yh[XK">
                                           <mutation name="erzeugeZahlDP">
                                             <arg name="id"></arg>
                                             <arg name="Name"></arg>
                                             <arg name="unit"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="variables_get" id="OOs?a?hS^FnAI.$Qb?dU">
                                               <field name="VAR" id="I@-[Cj^I1}(-7m+VQ8Dj" variabletype="">idSensor</field>
                                             </block>
                                           </value>
                                           <value name="ARG1">
                                             <block type="get_attr" id="IER[s^cq8PlHqpH):2;$">
                                               <value name="PATH">
                                                 <shadow type="text" id="RE!1h_[z_~VP(`#c2G0=">
                                                   <field name="TEXT">title</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="variables_get" id="hosnIqKj=x~_(RraXuHa">
                                                   <field name="VAR" id="(OS6)At}0sRw3rBe4]ua" variabletype="">sensor</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="ARG2">
                                             <block type="get_attr" id="OM-QpftsmZS_/O|A$nu!">
                                               <value name="PATH">
                                                 <shadow type="text" id="Jm=2!V|Nemik!@?A[t:D">
                                                   <field name="TEXT">unit</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="variables_get" id="80=z_{+i(*_-3LzR_gK;">
                                                   <field name="VAR" id="(OS6)At}0sRw3rBe4]ua" variabletype="">sensor</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="control_ex" id="ND8z?hF|iwiOE9Z$|eE`">
                                           <field name="TYPE">true</field>
                                           <field name="CLEAR_RUNNING">FALSE</field>
                                           <value name="OID">
                                             <shadow type="field_oid" id="v(.[s!{pa`7H$cGZ;#p|">
                                               <field name="oid">Object ID</field>
                                             </shadow>
                                             <block type="variables_get" id="BrQ|?@hXv_fV)?E?hOgM">
                                               <field name="VAR" id="I@-[Cj^I1}(-7m+VQ8Dj" variabletype="">idSensor</field>
                                             </block>
                                           </value>
                                           <value name="VALUE">
                                             <shadow type="logic_boolean" id="|a{Y{[:aCSj^Q?yicY#*">
                                               <field name="BOOL">TRUE</field>
                                             </shadow>
                                             <block type="math_rndfixed" id="hswSQt.b2yKyiK]=+j(`">
                                               <field name="n">1</field>
                                               <value name="x">
                                                 <shadow type="math_number" id="1n/)#-Ii;1^OUCbmzISG">
                                                   <field name="NUM">3.1234</field>
                                                 </shadow>
                                                 <block type="convert_tonumber" id="kg4Y~4dFGeTf1^5/f?V5">
                                                   <value name="VALUE">
                                                     <block type="get_attr" id="/`rJ(E(8YdbX(f{g%4Wk" inline="false">
                                                       <value name="PATH">
                                                         <shadow type="text" id="CSi;C,!]C$km?/7YNito">
                                                           <field name="TEXT">lastMeasurement.value</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="OBJECT">
                                                         <block type="variables_get" id="B~!k(q6k($rnISKRID@7">
                                                           <field name="VAR" id="(OS6)At}0sRw3rBe4]ua" variabletype="">sensor</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="DELAY_MS">
                                             <shadow type="math_number" id="NXOOrA8-^iM:{:I/L?|-">
                                               <field name="NUM">0</field>
                                             </shadow>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                             </block>
                             <block type="procedures_defcustomnoreturn" id="%Ym[H;wPCw14-F~+qd!a" x="-688" y="-438">
                               <mutation statements="false">
                                 <arg name="id" varid="F8FJH2:MYg!TEng|{`cX"></arg>
                                 <arg name="Name" varid="kNmwW)zuGsFpRPSr%tI4"></arg>
                               </mutation>
                               <field name="NAME">Stations-Channel anlegen</field>
                               <field name="SCRIPT">aWQgPSAnamF2YXNjcmlwdC4nICsgaW5zdGFuY2UgKyAnLicgKyBpZDsKaWYoIWV4aXN0c09iamVjdChpZCkpIHsKICAgdmFyIG9iaiA9IHt9OwogICBvYmoudHlwZSA9ICdjaGFubmVsJzsKICAgb2JqLmNvbW1vbiA9IHt9OwogICBvYmouY29tbW9uLm5hbWUgPSBOYW1lOwogICBzZXRPYmplY3QoaWQsIG9iaik7Cn0=</field>
                               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                             </block>
                             <block type="procedures_defcustomreturn" id="|@dUe3W|[VZ`uP~L8^L." x="-687" y="-413">
                               <mutation statements="false">
                                 <arg name="str" varid="=:T.5x=N7D*5*g`@lmVQ"></arg>
                               </mutation>
                               <field name="NAME">Punktkiller</field>
                               <field name="SCRIPT">cmV0dXJuIHN0ci5yZXBsYWNlKC9bXC5cc1wtXS9nLCAiXyIp</field>
                               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                             </block>
                             <block type="procedures_defcustomreturn" id="[a^U9+`y_=]GesO0(kJv" x="-688" y="-387">
                               <mutation statements="false">
                                 <arg name="id" varid="F8FJH2:MYg!TEng|{`cX"></arg>
                                 <arg name="Name" varid="kNmwW)zuGsFpRPSr%tI4"></arg>
                                 <arg name="unit" varid="/Ob+6.k{E5c@No}z%#Fu"></arg>
                               </mutation>
                               <field name="NAME">erzeugeZahlDP</field>
                               <field name="SCRIPT">aWYoZXhpc3RzU3RhdGUoaWQpKSByZXR1cm4gdHJ1ZTsNCmNyZWF0ZVN0YXRlKGlkLCAwLCB7dHlwZTonbnVtYmVyJywgbmFtZTogTmFtZSwgdW5pdDp1bml0LCByZWFkOnRydWUsIHdyaXRlOmZhbHNlLCByb2xlOid2YWx1ZSd9KTs=</field>
                               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                             </block>
                             <block type="comment" id="r,^tOsf=lIoMh,tZCb+t" x="-687" y="-337">
                               <field name="COMMENT">Hier die Stations-Id eingeben</field>
                               <next>
                                 <block type="variables_set" id="{Z@]+Tsgj`9a~63Nx/9t">
                                   <field name="VAR" id="P}P_1?s%S89=9|ppf`Nx" variabletype="">Station</field>
                                   <value name="VALUE">
                                     <block type="text" id="IjLVT[-@mv7%lCJ-(38r">
                                       <field name="TEXT">5dd2e6674ec04e001aa48f9e</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="comment" id="lLJ!@]nJgIF8`2n{ptBs">
                                       <field name="COMMENT">Hier Unterverzeichnis im js-Verzeichnis eingeben</field>
                                       <next>
                                         <block type="comment" id="aluc5:I^O*I~:1N,i$9{">
                                           <field name="COMMENT">Punkt am Ende als Datensatztrenner nicht vergessen</field>
                                           <next>
                                             <block type="variables_set" id="4*=Fh?9d0ZF{Azz$i~o;">
                                               <field name="VAR" id="Z{~*0luN#Qp/IUr;|BmX" variabletype="">Unterverzeichnis</field>
                                               <value name="VALUE">
                                                 <block type="text" id="b37|)*c1@OiX,,:!b^V@">
                                                   <field name="TEXT">Luftdaten.</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="variables_set" id=".Id#{.SiATpaCI[t9/Pb">
                                                   <field name="VAR" id="%arR9:8r$Bg^H++?QiSv" variabletype="">URL</field>
                                                   <value name="VALUE">
                                                     <block type="text_join" id="3,2Nmjr=CqF+.8mgNjMu">
                                                       <mutation items="2"></mutation>
                                                       <value name="ADD0">
                                                         <block type="text" id="W:|(T7`gJv3jBjE[W=a~">
                                                           <field name="TEXT">https://api.opensensemap.org/boxes/</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD1">
                                                         <block type="variables_get" id="$7jo45G0xdQ!;81^B|?t">
                                                           <field name="VAR" id="P}P_1?s%S89=9|ppf`Nx" variabletype="">Station</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="schedule" id="~)SXp/emf@Z[*]}h(P*3">
                                                       <field name="SCHEDULE">*/10 * * * *</field>
                                                       <statement name="STATEMENT">
                                                         <block type="request" id="JYZ7{U|l##aK4-YGHzlF">
                                                           <mutation with_statement="true"></mutation>
                                                           <field name="WITH_STATEMENT">TRUE</field>
                                                           <field name="LOG"></field>
                                                           <value name="URL">
                                                             <shadow type="text" id="}Zb=fi2klg+*{JjH1}Da">
                                                               <field name="TEXT">text</field>
                                                             </shadow>
                                                             <block type="variables_get" id="eOg]UB./1-Xdqt!9xGJh">
                                                               <field name="VAR" id="%arR9:8r$Bg^H++?QiSv" variabletype="">URL</field>
                                                             </block>
                                                           </value>
                                                           <statement name="STATEMENT">
                                                             <block type="variables_set" id="[!uzwo(w1oVkQ~F(?A)m">
                                                               <field name="VAR" id="9k8j[#@42,2VE~mdj%7," variabletype="">obj</field>
                                                               <value name="VALUE">
                                                                 <block type="convert_json2object" id="!/v!.Gs6SM-([dBZeGkv">
                                                                   <value name="VALUE">
                                                                     <block type="variables_get" id="!]zXu89Uby~HDzHiuIPK">
                                                                       <field name="VAR" id="mfFi6HkOgN+sro=x^sXu" variabletype="">result</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <next>
                                                                 <block type="procedures_callcustomnoreturn" id="-Q=6Xhv-^1EO,@~X-Kpi">
                                                                   <mutation name="Stations-Channel anlegen">
                                                                     <arg name="id"></arg>
                                                                     <arg name="Name"></arg>
                                                                   </mutation>
                                                                   <value name="ARG0">
                                                                     <block type="text_join" id="/]nFjJ*V?,1L}+ikLidn">
                                                                       <mutation items="2"></mutation>
                                                                       <value name="ADD0">
                                                                         <block type="variables_get" id="DVQ(]$VQWMa3!,ctO|@F">
                                                                           <field name="VAR" id="Z{~*0luN#Qp/IUr;|BmX" variabletype="">Unterverzeichnis</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD1">
                                                                         <block type="variables_get" id="PKi7wPxc{rqKb6TPkp]T">
                                                                           <field name="VAR" id="P}P_1?s%S89=9|ppf`Nx" variabletype="">Station</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <value name="ARG1">
                                                                     <block type="get_attr" id="[~%j%o--Nt|NFV@qEKqh">
                                                                       <value name="PATH">
                                                                         <shadow type="text" id="jxgr+n+8z3FUw)#lEB]V">
                                                                           <field name="TEXT">name</field>
                                                                         </shadow>
                                                                       </value>
                                                                       <value name="OBJECT">
                                                                         <block type="variables_get" id="^0*;qw)@bh9Y1A9p$?:*">
                                                                           <field name="VAR" id="9k8j[#@42,2VE~mdj%7," variabletype="">obj</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <next>
                                                                     <block type="variables_set" id="UqPDAi3CC{PQ+5oJiX7F">
                                                                       <field name="VAR" id="%VO!Ye}Fho*S1ssX{uog" variabletype="">sensors</field>
                                                                       <value name="VALUE">
                                                                         <block type="get_attr" id="k.R(q@m(G%T3m]:3/-$%">
                                                                           <value name="PATH">
                                                                             <shadow type="text" id="v3C!U:sJgWJC.%RK*ubN">
                                                                               <field name="TEXT">sensors</field>
                                                                             </shadow>
                                                                           </value>
                                                                           <value name="OBJECT">
                                                                             <block type="variables_get" id="2b4dq3po@?YS8+M=)*Y,">
                                                                               <field name="VAR" id="9k8j[#@42,2VE~mdj%7," variabletype="">obj</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <next>
                                                                         <block type="variables_set" id="S)/owQyx658G_[Zbkia#">
                                                                           <field name="VAR" id="kNmwW)zuGsFpRPSr%tI4" variabletype="">Name</field>
                                                                           <value name="VALUE">
                                                                             <block type="get_attr" id="Lp1;+kE.5QiwL}=2gXHU">
                                                                               <value name="PATH">
                                                                                 <shadow type="text" id="U:dL(te!qtMXlRvM*U}$">
                                                                                   <field name="TEXT">name</field>
                                                                                 </shadow>
                                                                               </value>
                                                                               <value name="OBJECT">
                                                                                 <block type="variables_get" id=".d+P-Ka+./|p2E1M!jh,">
                                                                                   <field name="VAR" id="9k8j[#@42,2VE~mdj%7," variabletype="">obj</field>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                           <next>
                                                                             <block type="timeouts_settimeout" id="3NS1-CM^#*QWXC+vVM[T">
                                                                               <field name="NAME">timeout</field>
                                                                               <field name="DELAY">500</field>
                                                                               <field name="UNIT">ms</field>
                                                                               <statement name="STATEMENT">
                                                                                 <block type="controls_for" id="tj[*c^1-8U9Q:GJ?ErBG">
                                                                                   <field name="VAR" id="rn64I/AwPbPo#;6x;zx$" variabletype="">i</field>
                                                                                   <value name="FROM">
                                                                                     <shadow type="math_number" id="gf_Y7J$2ww(]9~i4BD|I">
                                                                                       <field name="NUM">1</field>
                                                                                     </shadow>
                                                                                   </value>
                                                                                   <value name="TO">
                                                                                     <shadow type="math_number" id="(M`)O/FN7c2d_#=ba0@l">
                                                                                       <field name="NUM">10</field>
                                                                                     </shadow>
                                                                                     <block type="lists_length" id="/AY%TvY!+^95Nnz)9uUS">
                                                                                       <value name="VALUE">
                                                                                         <block type="variables_get" id="ynt:^S)7},aLfA}tLrz5">
                                                                                           <field name="VAR" id="%VO!Ye}Fho*S1ssX{uog" variabletype="">sensors</field>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="BY">
                                                                                     <shadow type="math_number" id="MUBmM!QpFpwUSOLGoIWX">
                                                                                       <field name="NUM">1</field>
                                                                                     </shadow>
                                                                                   </value>
                                                                                   <statement name="DO">
                                                                                     <block type="procedures_callnoreturn" id="v!l/^Y~lO,1U}^]L8lce">
                                                                                       <mutation name="Sensorwerte_auslesen">
                                                                                         <arg name="sensor"></arg>
                                                                                       </mutation>
                                                                                       <value name="ARG0">
                                                                                         <block type="lists_getIndex" id="C2FF;yAA@6_C1S76U7C^">
                                                                                           <mutation statement="false" at="true"></mutation>
                                                                                           <field name="MODE">GET</field>
                                                                                           <field name="WHERE">FROM_START</field>
                                                                                           <value name="VALUE">
                                                                                             <block type="variables_get" id="p8m7.WuO[PRw@XT$eFoO">
                                                                                               <field name="VAR" id="%VO!Ye}Fho*S1ssX{uog" variabletype="">sensors</field>
                                                                                             </block>
                                                                                           </value>
                                                                                           <value name="AT">
                                                                                             <block type="variables_get" id="U!)nYCJ71|QZKK_18r_`">
                                                                                               <field name="VAR" id="rn64I/AwPbPo#;6x;zx$" variabletype="">i</field>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </statement>
                                                                                 </block>
                                                                               </statement>
                                                                             </block>
                                                                           </next>
                                                                         </block>
                                                                       </next>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </statement>
                                                         </block>
                                                       </statement>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                            </xml>
                            

                            Änderungen in v0.3.1:

                            • auslesen der Daten auf JSON-Attribute umgestellt
                            • Station erhält neben der ID auch den Klarnamen
                              • dieser Klarname kann editiert werden
                            • Auswertung erfolgt exakt nach Anzahl Sensoren
                              • keine Fehlermeldungen wegen "Leerlauf" der Parserroutine mehr
                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @Homoran last edited by

                              @Homoran
                              setze Name auf Attribut "name" von obj
                              ist überflüssig, da die globale Variable Name nirgends verwendet wird.

                              Homoran 1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @paul53 last edited by Homoran

                                @paul53
                                Danke - ich muss da eh nochmal ran, weil der BME280 jetzt wieder den Luftdruck in Pa angibt

                                Das stammt noch aus meine Versuchen mit dem setObject - da hatte ich es verwendet

                                Homoran 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @Homoran last edited by Homoran

                                  @Homoran sagte in Luft-Messdaten von OpenSenseMap auslesen:

                                  ich muss da eh nochmal ran, weil der BME280 jetzt wieder den Luftdruck in Pa angibt

                                  @paul53

                                  Wollte wieder eine Ersetzung einfügen, aber jetzt direkt meine json-"Kenntnisse" umsetzen.
                                  Direkt bei der zweiten Zeile bin ich ins Schleudern gekommen.

                                  Umstellung auf json.png

                                  Ich fürchte ich kann hier nicht direkt mit den JSON-Daten arbeiten und muss doch auf Variable ausweichen.

                                  Das sähe dann (wenn ich da jetzt keine Fehler reingebracht habe) so aus:
                                  json_mit_Variablen.png

                                  Oder gibt's da doch eine Möglichkeit JSON-Inhalte zu manipulieren

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

                                    @Homoran
                                    Vorschlag:

                                    Blockly_temp.JPG

                                    Homoran 1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators @paul53 last edited by

                                      @paul53 Wo zauberst du immer nur die Lösungen her, auf die kein "normaler" Mensch kommt.

                                      Meine Version funktioniert jetzt und ich habe sogar nicht auf title=Luftdruck sondern auf unit=Pa geprüft.
                                      Denke das ist sauberer.

                                      Werde deine Vorschlag trotzdem umsetzen, sieht einfach "runder" aus.

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

                                        @Homoran sagte:

                                        sondern auf unit=Pa geprüft.

                                        Ja, das ist besser.

                                        Homoran 1 Reply Last reply Reply Quote 0
                                        • Homoran
                                          Homoran Global Moderator Administrators @paul53 last edited by

                                          @paul53
                                          Aber mit dem prüfe-Baustein gibt es nicht die Möglichkeit noch weitere Fälle abzufangen wie mit falls...sonstfalls...

                                          Oder habe ich da wieder etwas übersehen?

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

                                            @Homoran sagte:

                                            mit dem prüfe-Baustein gibt es nicht die Möglichkeit noch weitere Fälle abzufangen wie mit falls...sonstfalls...

                                            Man kann schachteln.
                                            falls falsch prüfe ...

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            510
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly climate monitoring
                                            4
                                            59
                                            3144
                                            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