Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Brauche hilfe json Array verschachtelung zu parsen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Brauche hilfe json Array verschachtelung zu parsen

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

      @Newpicsel

      machst du das in blockly oder in javascript?
      wie heißt das objekt/variable, dem du das JSON zuweist?
      Wenn die Variable a heist, dann ist das folgende richtig:

      a.body.homes[0].name
      

      edit:
      ok du holst es aus einem datenpunkt raus.
      ist das JSON dort als String oder schon als Objekt drin? Wahrscheinlich string.
      Dann musst du es erst in ein Objekt umwandeln

      var a = JSON.parse(getState("Objekt_ID").val);
      a.body.homes[0].name
      
      Newpicsel 1 Reply Last reply Reply Quote 0
      • Newpicsel
        Newpicsel @OliverIO last edited by

        @oliverio

        keine chance, ich bekomme immer den wert "null" zurück...

        ich machs in Blockly aber sollte normal genauso gehen!

        homeData = (function () { try {return JSON.parse(getState("0_userdata.0.Eigene_Objekte.Netatmo.Home_Data_json").val);} catch(e) {return {};}})();
            homeName = getAttr(homeData, 'body.homes[0].name');
            console.log(homeName);
        

        das kann doch nicht wahr sein, ich werde noch bekloppt!

        F 1 Reply Last reply Reply Quote 0
        • F
          fastfoot @Newpicsel last edited by

          @newpicsel sagte in Brauche hilfe json Array verschachtelung zu parsen:

          das kann doch nicht wahr sein, ich werde noch bekloppt!

          ich glaube da stimmt was nicht mit Blockly, bin aber nicht ganz sicher. So gehts aber
          js.PNG

          <xml xmlns="https://developers.google.com/blockly/xml">
           <variables>
             <variable id="/vB;1BX-M-`@P2gBXZC;">json</variable>
             <variable id="D_M}auPlg#tJNK56ANMT">ListElem</variable>
             <variable id="9jxj.k~ts;=BDSFxGEzF">homes</variable>
           </variables>
           <block type="variables_set" id="|o?viYz(YZ#CAw+}Z|3K" x="-163" y="-112">
             <field name="VAR" id="/vB;1BX-M-`@P2gBXZC;">json</field>
             <value name="VALUE">
               <block type="convert_json2object" id="aieJ~X.TrK9_At(m$P:.">
                 <value name="VALUE">
                   <block type="text" id="9m5.@`_eUqd|i6hWLx.(">
                     <field name="TEXT">{"body":{"homes":[{"id":"xy","name":"Home","altitude":8,"coordinates":["xy","xy"],"country":"DE","timezone":"Europe\/Berlin","rooms":[{"id":"xy","name":"Schlafzimmer","type":"bedroom","module_ids":["xy"]},{"id":"xy","name":"Kinderzimmer","type":"custom","module_ids":["xy"]},{"id":"xy","name":"K\u00fcche","type":"kitchen","module_ids":["xy"]},{"id":"xy","name":"Wohnzimmer","type":"custom","module_ids":["xy"]},{"id":"xy","name":"Badezimmer","type":"bathroom","module_ids":["xy"]}],"modules":[{"id":"xy","type":"NAPlug","name":"Relais","setup_date":1512123665,"modules_bridged":["xy","xy","xy","xy","xy"]},{"id":"xy","type":"NRV","name":"K\u00fcche","setup_date":1514020470,"room_id":"xy","bridge":"xy"},{"id":"xy","type":"NRV","name":"Badezimmer","setup_date":1514023382,"room_id":"xy","bridge":"xy"},{"id":"xy","type":"NRV","name":"Kinderzimmer","setup_date":1514032377,"room_id":"xy","bridge":"xy"},{"id":"xy","type":"NRV","name":"Schlafzimmer","setup_date":1512123670,"room_id":"xy","bridge":"xy"},{"id":"xy","type":"NRV","name":"Wohnzimmer","setup_date":1512123670,"room_id":"xy","bridge":"xy"}],"therm_schedules":[{"timetable":[{"zone_id":1,"m_offset":0},{"zone_id":3,"m_offset":180},{"zone_id":1,"m_offset":240},{"zone_id":3,"m_offset":300},{"zone_id":9373,"m_offset":360},{"zone_id":0,"m_offset":480},{"zone_id":7690,"m_offset":1200},{"zone_id":6622,"m_offset":1320},{"zone_id":1,"m_offset":1380},{"zone_id":3,"m_offset":1620},{"zone_id":1,"m_offset":1680},{"zone_id":3,"m_offset":1740},{"zone_id":9373,"m_offset":1800},{"zone_id":0,"m_offset":1920},{"zone_id":7690,"m_offset":2640},{"zone_id":6622,"m_offset":2760},{"zone_id":1,"m_offset":2820},{"zone_id":3,"m_offset":3060},{"zone_id":1,"m_offset":3120},{"zone_id":3,"m_offset":3180},{"zone_id":9373,"m_offset":3240},{"zone_id":0,"m_offset":3360},{"zone_id":7690,"m_offset":4080},{"zone_id":6622,"m_offset":4200},{"zone_id":1,"m_offset":4260},{"zone_id":3,"m_offset":4500},{"zone_id":1,"m_offset":4560},{"zone_id":3,"m_offset":4620},{"zone_id":9373,"m_offset":4680},{"zone_id":0,"m_offset":4800},{"zone_id":7690,"m_offset":5520},{"zone_id":6622,"m_offset":5640},{"zone_id":1,"m_offset":5700},{"zone_id":3,"m_offset":5940},{"zone_id":1,"m_offset":6000},{"zone_id":3,"m_offset":6060},{"zone_id":9373,"m_offset":6120},{"zone_id":0,"m_offset":6240},{"zone_id":7690,"m_offset":6960},{"zone_id":6622,"m_offset":7140},{"zone_id":1,"m_offset":7200},{"zone_id":9373,"m_offset":7620},{"zone_id":3,"m_offset":7680},{"zone_id":0,"m_offset":7740},{"zone_id":7690,"m_offset":8400},{"zone_id":6622,"m_offset":8580},{"zone_id":1,"m_offset":8640},{"zone_id":9373,"m_offset":9060},{"zone_id":3,"m_offset":9120},{"zone_id":0,"m_offset":9180},{"zone_id":7690,"m_offset":9840},{"zone_id":6622,"m_offset":9960},{"zone_id":1,"m_offset":10020}],"zones":[{"name":"Komfort","id":0,"type":0,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":18},{"room_id":"xy","temp":20}]},{"name":"Nacht","id":1,"type":1,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":17},{"room_id":"xy","temp":18}]},{"name":"Eco","id":4,"type":5,"rooms_temp":[{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18}]},{"name":"Aufstehen","id":9373,"type":4,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19}]},{"name":"Schlafen","id":6622,"type":4,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19}]},{"name":"Schlarfzimmer Warm","id":7690,"type":4,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19}]},{"name":"Komfort+","id":3,"type":8,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19},{"room_id":"xy","temp":20}]}],"name":"Winter","default":false,"away_temp":16,"hg_temp":7,"id":"xy","selected":true,"type":"therm"},{"timetable":[{"zone_id":1,"m_offset":0},{"zone_id":0,"m_offset":360},{"zone_id":4,"m_offset":480},{"zone_id":0,"m_offset":1020},{"zone_id":1,"m_offset":1320},{"zone_id":0,"m_offset":1800},{"zone_id":4,"m_offset":1920},{"zone_id":0,"m_offset":2460},{"zone_id":1,"m_offset":2760},{"zone_id":0,"m_offset":3240},{"zone_id":4,"m_offset":3360},{"zone_id":0,"m_offset":3900},{"zone_id":1,"m_offset":4200},{"zone_id":0,"m_offset":4680},{"zone_id":4,"m_offset":4800},{"zone_id":0,"m_offset":5340},{"zone_id":1,"m_offset":5640},{"zone_id":0,"m_offset":6120},{"zone_id":4,"m_offset":6240},{"zone_id":3,"m_offset":6660},{"zone_id":0,"m_offset":6960},{"zone_id":1,"m_offset":7140},{"zone_id":0,"m_offset":7620},{"zone_id":3,"m_offset":7740},{"zone_id":0,"m_offset":8400},{"zone_id":1,"m_offset":8580},{"zone_id":0,"m_offset":9060},{"zone_id":3,"m_offset":9180},{"zone_id":0,"m_offset":9840},{"zone_id":1,"m_offset":9960}],"zones":[{"name":"","id":1,"type":1,"rooms_temp":[{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16}]},{"name":"Eco","id":4,"type":5,"rooms_temp":[{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16}]},{"name":"Komfort","id":0,"type":0,"rooms_temp":[{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18}]},{"name":"Komfort+","id":3,"type":8,"rooms_temp":[{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18}]}],"name":"Sommer","default":false,"away_temp":12,"hg_temp":7,"id":"xy","type":"therm"}],"therm_mode":"schedule","therm_setpoint_default_duration":60,"schedules":[{"timetable":[{"zone_id":1,"m_offset":0},{"zone_id":3,"m_offset":180},{"zone_id":1,"m_offset":240},{"zone_id":3,"m_offset":300},{"zone_id":9373,"m_offset":360},{"zone_id":0,"m_offset":480},{"zone_id":7690,"m_offset":1200},{"zone_id":6622,"m_offset":1320},{"zone_id":1,"m_offset":1380},{"zone_id":3,"m_offset":1620},{"zone_id":1,"m_offset":1680},{"zone_id":3,"m_offset":1740},{"zone_id":9373,"m_offset":1800},{"zone_id":0,"m_offset":1920},{"zone_id":7690,"m_offset":2640},{"zone_id":6622,"m_offset":2760},{"zone_id":1,"m_offset":2820},{"zone_id":3,"m_offset":3060},{"zone_id":1,"m_offset":3120},{"zone_id":3,"m_offset":3180},{"zone_id":9373,"m_offset":3240},{"zone_id":0,"m_offset":3360},{"zone_id":7690,"m_offset":4080},{"zone_id":6622,"m_offset":4200},{"zone_id":1,"m_offset":4260},{"zone_id":3,"m_offset":4500},{"zone_id":1,"m_offset":4560},{"zone_id":3,"m_offset":4620},{"zone_id":9373,"m_offset":4680},{"zone_id":0,"m_offset":4800},{"zone_id":7690,"m_offset":5520},{"zone_id":6622,"m_offset":5640},{"zone_id":1,"m_offset":5700},{"zone_id":3,"m_offset":5940},{"zone_id":1,"m_offset":6000},{"zone_id":3,"m_offset":6060},{"zone_id":9373,"m_offset":6120},{"zone_id":0,"m_offset":6240},{"zone_id":7690,"m_offset":6960},{"zone_id":6622,"m_offset":7140},{"zone_id":1,"m_offset":7200},{"zone_id":9373,"m_offset":7620},{"zone_id":3,"m_offset":7680},{"zone_id":0,"m_offset":7740},{"zone_id":7690,"m_offset":8400},{"zone_id":6622,"m_offset":8580},{"zone_id":1,"m_offset":8640},{"zone_id":9373,"m_offset":9060},{"zone_id":3,"m_offset":9120},{"zone_id":0,"m_offset":9180},{"zone_id":7690,"m_offset":9840},{"zone_id":6622,"m_offset":9960},{"zone_id":1,"m_offset":10020}],"zones":[{"name":"Komfort","id":0,"type":0,"rooms_temp":[{"room_id":"yx","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":18},{"room_id":"xy","temp":20}],"rooms":[{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":20}]},{"name":"Nacht","id":1,"type":1,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":17},{"room_id":"xy","temp":18}],"rooms":[{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":17},{"id":"xy","therm_setpoint_temperature":18}]},{"name":"Eco","id":4,"type":5,"rooms_temp":[{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18}],"rooms":[{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18}]},{"name":"Aufstehen","id":9373,"type":4,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19}],"rooms":[{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":19}]},{"name":"Schlafen","id":6622,"type":4,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19}],"rooms":[{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19}]},{"name":"Schlarfzimmer Warm","id":7690,"type":4,"rooms_temp":[{"room_id":"yx","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19}],"rooms":[{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":19}]},{"name":"Komfort+","id":3,"type":8,"rooms_temp":[{"room_id":"xy","temp":19},{"room_id":"xy","temp":20},{"room_id":"xy","temp":19},{"room_id":"xy","temp":19},{"room_id":"xy","temp":20}],"rooms":[{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":19},{"id":"xy","therm_setpoint_temperature":20}]}],"name":"Winter","default":false,"away_temp":16,"hg_temp":7,"id":"xy","selected":true,"type":"therm"},{"timetable":[{"zone_id":1,"m_offset":0},{"zone_id":0,"m_offset":360},{"zone_id":4,"m_offset":480},{"zone_id":0,"m_offset":1020},{"zone_id":1,"m_offset":1320},{"zone_id":0,"m_offset":1800},{"zone_id":4,"m_offset":1920},{"zone_id":0,"m_offset":2460},{"zone_id":1,"m_offset":2760},{"zone_id":0,"m_offset":3240},{"zone_id":4,"m_offset":3360},{"zone_id":0,"m_offset":3900},{"zone_id":1,"m_offset":4200},{"zone_id":0,"m_offset":4680},{"zone_id":4,"m_offset":4800},{"zone_id":0,"m_offset":5340},{"zone_id":1,"m_offset":5640},{"zone_id":0,"m_offset":6120},{"zone_id":4,"m_offset":6240},{"zone_id":3,"m_offset":6660},{"zone_id":0,"m_offset":6960},{"zone_id":1,"m_offset":7140},{"zone_id":0,"m_offset":7620},{"zone_id":3,"m_offset":7740},{"zone_id":0,"m_offset":8400},{"zone_id":1,"m_offset":8580},{"zone_id":0,"m_offset":9060},{"zone_id":3,"m_offset":9180},{"zone_id":0,"m_offset":9840},{"zone_id":1,"m_offset":9960}],"zones":[{"name":"","id":1,"type":1,"rooms_temp":[{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16}],"rooms":[{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16}]},{"name":"Eco","id":4,"type":5,"rooms_temp":[{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16},{"room_id":"xy","temp":16}],"rooms":[{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16},{"id":"xy","therm_setpoint_temperature":16}]},{"name":"Komfort","id":0,"type":0,"rooms_temp":[{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18}],"rooms":[{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18},{"id":"xy","therm_setpoint_temperature":18}]},{"name":"Komfort+","id":3,"type":8,"rooms_temp":[{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18},{"room_id":"xy","temp":18}],"rooms":[{"id":"yx","therm_setpoint_temperature":18},{"id":"yx","therm_setpoint_temperature":18},{"id":"yx","therm_setpoint_temperature":18},{"id":"yx","therm_setpoint_temperature":18},{"id":"yx","therm_setpoint_temperature":18}]}],"name":"Sommer","default":false,"away_temp":12,"hg_temp":7,"id":"xy","type":"therm"}]}],"user":{"email":"xy@web.de","language":"de-DE","locale":"de-DE","feel_like_algorithm":0,"unit_pressure":0,"unit_system":0,"unit_wind":0,"id":"xy"}},"status":"ok","time_exec":0.021591901779174805,"time_server":1611503100}</field>
                   </block>
                 </value>
               </block>
             </value>
             <next>
               <block type="variables_set" id="v^97j235UN(xelt4A+Q_">
                 <field name="VAR" id="D_M}auPlg#tJNK56ANMT">ListElem</field>
                 <value name="VALUE">
                   <block type="lists_getIndex" id="D4gT-+2l)bhIbGTnzRFs">
                     <mutation statement="false" at="true"></mutation>
                     <field name="MODE">GET</field>
                     <field name="WHERE">FROM_START</field>
                     <value name="VALUE">
                       <block type="get_attr" id="y}}mHAa68~]}V|^4ConB">
                         <value name="PATH">
                           <shadow type="text" id="x^Lr@5`Kt63:[?*cS*1+">
                             <field name="TEXT">body.homes</field>
                           </shadow>
                         </value>
                         <value name="OBJECT">
                           <block type="variables_get" id="Z:Q/oC),ci+VB|/C_=#e">
                             <field name="VAR" id="/vB;1BX-M-`@P2gBXZC;">json</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <value name="AT">
                       <block type="math_number" id="i,v$65]{,wBqiepB3Y5e">
                         <field name="NUM">1</field>
                       </block>
                     </value>
                   </block>
                 </value>
                 <next>
                   <block type="debug" id="Z(eB|rR|`AfFhT5}AG0y" inline="true">
                     <field name="Severity">log</field>
                     <value name="TEXT">
                       <shadow type="text" id="wI)4cgwH_(t,m8{fgY{4">
                         <field name="TEXT">test</field>
                       </shadow>
                       <block type="get_attr" id="l]pga[gC-;TR^3%PvfWZ">
                         <value name="PATH">
                           <shadow type="text" id="D7Awsg^#;YZa4B:@.@C?">
                             <field name="TEXT">name</field>
                           </shadow>
                         </value>
                         <value name="OBJECT">
                           <block type="variables_get" id="`MS,$BaS~1d/v3libv/Z">
                             <field name="VAR" id="D_M}auPlg#tJNK56ANMT">ListElem</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="variables_set" id="l9u`8W$*CE;MU(=%WCAs">
                         <field name="VAR" id="9jxj.k~ts;=BDSFxGEzF">homes</field>
                         <value name="VALUE">
                           <block type="get_attr" id="|Xu34tHXLM~i*[P_tt*n">
                             <value name="PATH">
                               <shadow type="text" id="8hUTTD8Rv.:}$Cpud$yl">
                                 <field name="TEXT">body.homes.0</field>
                               </shadow>
                             </value>
                             <value name="OBJECT">
                               <block type="variables_get" id="-Bo!!LxO1=83y!6$F{g_">
                                 <field name="VAR" id="/vB;1BX-M-`@P2gBXZC;">json</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="debug" id="j8`b,;;Zi5R5Ms_6b$8e" inline="true">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id=";6hQuQHA?LmE{#O;ffa^">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="get_attr" id="BF_{C9s+tw2skqe.(r9y">
                                 <value name="PATH">
                                   <shadow type="text" id="t0mkzS?1R+ZUR(6Zv-kc">
                                     <field name="TEXT">name</field>
                                   </shadow>
                                 </value>
                                 <value name="OBJECT">
                                   <block type="variables_get" id="2pbvCH0vG;J(MtyZDMiI">
                                     <field name="VAR" id="9jxj.k~ts;=BDSFxGEzF">homes</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
             </next>
           </block>
          </xml>
          

          F Newpicsel 2 Replies Last reply Reply Quote 1
          • F
            fastfoot @fastfoot last edited by

            @fastfoot sagte in Brauche hilfe json Array verschachtelung zu parsen:

            ich glaube da stimmt was nicht mit Blockly, bin aber nicht ganz sicher.

            Also, auch ältere Versionen arbeiten nicht anders, bin bis auf die 4.7.4 zurück. Mich kommt aber body.homes.0 als Attribut seltsam vor. @paul53 was meinst Du dazu? In JS jedenfalls wäre das ungültig, wird in Blockly ja allerdings mit getAttr() gemacht

            Newpicsel 1 Reply Last reply Reply Quote 0
            • Newpicsel
              Newpicsel @fastfoot last edited by

              @fastfoot

              Unglaublich es funktioniert, sobald einmal die array "[]homes" selektiert ist, kannst danach alle werte auslesen!
              vielen Dank!

              dann muss ich nur noch eine liste aus allen id´s von "modules.modules_bridged" erstellen, wie kann ich dann die zugehörigen namen der id´s ermitteln?
              kann ich eine aktion in eine schleife packen, die genau so oft durchläuft wie id´s in der liste sind und jedesmal die variable mit der nächsten id gefüllt wird?
              geht darum, dass die objekte der räume automatisch angelegt werden, die ja bei jedem user anders heißen und unterschiedlich viele sind...

              für mich könnte ich alles manuel anlegen aber es soll ja am besten ohne weiteres für alle anwendbar sein.

                      "modules": [
              
                        {
              
                          "id": "xy",
              
                          "type": "NAPlug",
              
                          "name": "Relais",
              
                          "setup_date": 1512123665,
              
                          "modules_bridged": [
              
                            "123","456","789","987","654"
                          ]
                        },
              
                        {
                          "id": "123",
                          "name": "Wohnzimmer",
                          "type": "custom",
                          "module_ids": [
                            "123"
                          ]
                        },
                        {
                          "id": "456",
                          "name": "Badezimmer",
                          "type": "bathroom",
                          "module_ids": [
                            "456"
                          ]
                        }
              
              1 Reply Last reply Reply Quote 0
              • Newpicsel
                Newpicsel @fastfoot last edited by

                @fastfoot said in Brauche hilfe json Array verschachtelung zu parsen:

                Also, auch ältere Versionen arbeiten nicht anders, bin bis auf die 4.7.4 zurück. Mich kommt aber body.homes.0 als Attribut seltsam vor. @paul53 was meinst Du dazu? In JS jedenfalls wäre das ungültig, wird in Blockly ja allerdings mit getAttr() gemacht

                Also ich hab den schritt body.homes.0 nicht getestet, da ich in der liste "ListElem" auf die werte schon zugreifen kann, ich finds auch seltsam aber ich kenne mich auch nicht damit aus...

                F 2 Replies Last reply Reply Quote 0
                • F
                  fastfoot @Newpicsel last edited by

                  @newpicsel Auf modules kannst du so zugreifen
                  js1.PNG

                  Newpicsel 1 Reply Last reply Reply Quote 1
                  • F
                    fastfoot @Newpicsel last edited by

                    @newpicsel sagte in Brauche hilfe json Array verschachtelung zu parsen:

                    Also ich hab den schritt body.homes.0 nicht getestet, da ich in der liste "ListElem" auf die werte schon zugreifen kann,

                    für ListElem so
                    js2.PNG

                    1 Reply Last reply Reply Quote 1
                    • Newpicsel
                      Newpicsel @fastfoot last edited by

                      @fastfoot

                      Ja stimmt, jetzt wo ich den block gesehen habe, ist es mir auch wieder eingefallen.

                      Danke dir und auch den anderen, ich bin fast verzweifelt!

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

                        @fastfoot

                        Abend,
                        eine frage habe ich noch, vielleicht kannst du oder jemand helfen?

                        Wie kann ich etwas nach einem Wert aus der Liste "modules" filtern?
                        Ich möchte zb. nur den block ausgeben, wo "name: "Relais"" enthalten ist.

                        Filter.png

                        So klappt es nicht, wobei wenn ich nach den ersten block frage alles klappt, liegt also nur an dem filter, ich weiß nicht wie der hier aussehen müsste...
                        Ich kann nicht sicher sagen ob mein gewünschter Inhalt immer der erste block in der liste ist.

                        F 1 Reply Last reply Reply Quote 0
                        • F
                          fastfoot @Newpicsel last edited by

                          @newpicsel sagte in Brauche hilfe json Array verschachtelung zu parsen:

                          @fastfoot

                          Abend,
                          eine frage habe ich noch, vielleicht kannst du oder jemand helfen?

                          Wie kann ich etwas nach einem Wert aus der Liste "modules" filtern?
                          Ich möchte zb. nur den block ausgeben, wo "name: "Relais"" enthalten ist.

                          Filter.png

                          So klappt es nicht, wobei wenn ich nach den ersten block frage alles klappt, liegt also nur an dem filter, ich weiß nicht wie der hier aussehen müsste...
                          Ich kann nicht sicher sagen ob mein gewünschter Inhalt immer der erste block in der liste ist.

                          den Filter musst du selbst bauen, indem du bei jedem Durchlauf prüfst und dann die Schleife abbrichst

                          Newpicsel 1 Reply Last reply Reply Quote 1
                          • Newpicsel
                            Newpicsel @fastfoot last edited by Newpicsel

                            @fastfoot said in Brauche hilfe json Array verschachtelung zu parsen:

                            den Filter musst du selbst bauen, indem du bei jedem Durchlauf prüfst und dann die Schleife abbrichst

                            😑 ok danke

                            kriege ich aber hin 😛
                            hab nur gehofft es fürde auch so gehen...

                            machs-smart.de 1 Reply Last reply Reply Quote 0
                            • machs-smart.de
                              machs-smart.de @Newpicsel last edited by

                              @newpicsel ich habe dazu eine Anleitung geschrieben, vielleicht hilft es dir ja: https://www.machs-smart.de/json-blockly-einlesen-parsen-verarbeiten/

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              521
                              Online

                              31.7k
                              Users

                              79.6k
                              Topics

                              1.3m
                              Posts

                              blockly javascript
                              5
                              24
                              1724
                              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