Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [ gelöst ] JSON aufteilen in DP

    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

    [ gelöst ] JSON aufteilen in DP

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

      @homoran
      Blockly 5.png

      @mickym
      Das habe ich im Hinterkopf.
      Danke für den Hinweis

      Wenn ich das erstmal von @Homoran zum laufen bekomme werde ich mich mit den Rest (Eigentlichen) beschäftigen.

      mickym Homoran 2 Replies Last reply Reply Quote 0
      • mickym
        mickym Most Active @ioBrokerMike last edited by

        @iobrokermike
        @Homoran hat ja Recht, dass in Deinem Debug Fenster ja gar nichts steht. Hast Du noch irgendwas anderes nicht deaktiviertes im Skript.

        894decef-f8de-4df6-9eeb-30f9b816a757-image.png

        Hast Du mal Dein gestartetes Skript mit dem Wiederholungssymbol neu gestartet? - Das muss im Debugfenster zu sehen sein.

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

          @mickym sagte: früher ging das glaub nicht.

          Das ging mit getAttr() schon immer. Siehe Doku. Die Funktion wurde speziell für Blockly geschaffen.

          mickym 2 Replies Last reply Reply Quote 0
          • mickym
            mickym Most Active @paul53 last edited by

            @paul53 OK

            321482ec-b7b2-411d-afc4-c70d744dd006-image.png

            Ich weiß dann nur nicht, ob es dann daran lag, dass es ein verschachteltes Array war - aber es gab Fälle da ging es nicht. Ich schau mal, ob ich was finde.

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

              @iobrokermike läuft das Skript selber?
              war das große log nach mqtt gefiltert?

              I 1 Reply Last reply Reply Quote 0
              • I
                ioBrokerMike @mickym last edited by

                @mickym

                Blockly 6.png

                Hast Du mal Dein gestartetes Skript mit dem Wiederholungssymbol neu gestartet? ...
                Ja das habe ich gemacht.

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

                  @iobrokermike starte mal die Instsnz neu und mach rinen Browserrefresh (Strg-f5)

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

                    @homoran sagte in JSON aufteilen in DP:

                    war das große log nach mqtt gefiltert?

                    Ja, das war nach mqtt gefiltert

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

                      @iobrokermike sagte in JSON aufteilen in DP:

                      @homoran sagte in JSON aufteilen in DP:

                      war das große log nach mqtt gefiltert?

                      Ja, das war nach matt gefiltert

                      dann kann man da natürlich auch keine Meldungen von javascript sehen!

                      I 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @paul53 last edited by mickym

                        @paul53 sagte in JSON aufteilen in DP:

                        @mickym sagte: früher ging das glaub nicht.

                        Das ging mit getAttr() schon immer. Siehe Doku. Die Funktion wurde speziell für Blockly geschaffen.

                        Irgendwie ist das aber anscheinend doch kein Objekt - zumindest, wenn ich es in JSONATA weiter verwenden will. Gibt es da eine Erklärung?

                        51cae8de-09dd-4ffa-9335-2766aa379d39-image.png

                        Im 1. Fall ohne Konvertierung - kann ich über JSONATA nicht auf die Objekteigenschaft zugreifen. Im 2. Fall gehts.

                        <xml xmlns="https://developers.google.com/blockly/xml">
                         <variables>
                           <variable id="NWR;`_N@3a:sTiBKQkne">Objekt</variable>
                         </variables>
                         <block type="variables_set" id="M@F*zUMa;{#yJo2.2goG" x="-1137" y="-337">
                           <field name="VAR" id="NWR;`_N@3a:sTiBKQkne">Objekt</field>
                           <value name="VALUE">
                             <block type="text" id="fWZa-MC8^[YM-V-;#R}:">
                               <field name="TEXT">{"meterId":"1KFM00000754396","deviceId":"EBSD14250567526","msgType":"EMETER_OBIS_V2","measurements":[{"timestamp":"2022-12-03T13:25:53Z","values":{"1-0:96.90.21":"7E2005D2","1-0:0.2.00":"312E3033","1-0:14.7.0255":50,"1-0:81.7.26255":359,"1-0:81.7.15255":330,"1-0:81.7.4255":337,"1-0:81.7.2255":238,"1-0:81.7.1255":118,"1-0:71.7.0255":10.119999885559082,"1-0:51.7.0255":1.7100000381469727,"1-0:31.7.0255":0.89999997615814209,"1-0:72.7.0255":235.89999389648438,"1-0:52.7.0255":234.69999694824219,"1-0:32.7.0255":237,"1-0:16.7.0255":2818,"1-0:2.8.0255":0,"1-0:1.8.0255":9071.03125,"1-0:96.1.0255":"0A014B464D0000006E24","1-0:96.50.1*1":"4B464D"}}]}</field>
                             </block>
                           </value>
                           <next>
                             <block type="debug" id="^5#in-UU}%!K~KPOKHz_">
                               <field name="Severity">info</field>
                               <value name="TEXT">
                                 <shadow type="text" id="-,TGC$b5|aHgxT-/9J]`">
                                   <field name="TEXT">test</field>
                                 </shadow>
                                 <block type="variables_get" id="nRXii?=4yGGy,y7%2jY(">
                                   <field name="VAR" id="NWR;`_N@3a:sTiBKQkne">Objekt</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="debug" id="C*BY:f~|[e)Xvn8W1*s{">
                                   <field name="Severity">info</field>
                                   <value name="TEXT">
                                     <shadow type="text" id="michMudNxqrBOIIp?ntJ">
                                       <field name="TEXT">test</field>
                                     </shadow>
                                     <block type="convert_jsonata" id="AS%.5T)U4NQRb~6pE|^y">
                                       <value name="EXPRESSION">
                                         <shadow type="text" id="]-J?Hivq,p/e0?KwDjKv">
                                           <field name="TEXT">$.measurements[0].values.'1-0:96.50.1*1'</field>
                                         </shadow>
                                       </value>
                                       <value name="TARGET">
                                         <block type="variables_get" id="$:M+P`jmlylnj6q[{yF,">
                                           <field name="VAR" id="NWR;`_N@3a:sTiBKQkne">Objekt</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="QRu@$s3*df8mR7r@=iO#">
                                       <field name="VAR" id="NWR;`_N@3a:sTiBKQkne">Objekt</field>
                                       <value name="VALUE">
                                         <block type="convert_json2object" id="R.c9ffe%vYu70tFC4Wg0">
                                           <value name="VALUE">
                                             <block type="variables_get" id="Z^;~j8`)]MoA[fRfSluS">
                                               <field name="VAR" id="NWR;`_N@3a:sTiBKQkne">Objekt</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="debug" id="yQlY]j3k2iPYr$s%:Z=c">
                                           <field name="Severity">info</field>
                                           <value name="TEXT">
                                             <shadow type="text" id="michMudNxqrBOIIp?ntJ">
                                               <field name="TEXT">test</field>
                                             </shadow>
                                             <block type="convert_jsonata" id="*P_(9@j7YL};L(Uz5~ZN">
                                               <value name="EXPRESSION">
                                                 <shadow type="text" id="7abV56Ncd4Eb9CA7Gy|N">
                                                   <field name="TEXT">$.measurements[0].values.'1-0:96.50.1*1'</field>
                                                 </shadow>
                                               </value>
                                               <value name="TARGET">
                                                 <block type="variables_get" id="^3+giB~)?btQR6/;R1~a">
                                                   <field name="VAR" id="NWR;`_N@3a:sTiBKQkne">Objekt</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                        </xml>
                        

                        Oder heißt das, dass zum Extrahieren wird es temporär in ein Objekt gewandelt, wenn ich es aber weiterverwenden will, dann muss ich es konveritieren.

                        Ja ich hab es mir selbst beantwortet. Vergiss diesen Post.

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

                          @homoran

                          So jetzt die Filterung von Javascript:

                             2024-11-29 20:59:14.006	warn	(COMPACT) at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1876:34)
                          
                          javascript.0
                          2024-11-29 20:59:14.006	warn	(COMPACT) at Object.<anonymous> (script.js.00_Anwesend.AnzahlAnwesend:17:3)
                          
                          javascript.0
                          2024-11-29 20:59:14.005	warn	(COMPACT) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20)
                          
                          javascript.0
                          2024-11-29 20:59:14.003	warn	(COMPACT) You are assigning a number to the state "0_userdata.0.Anwesend.Anzahl" which expects a string. Please fix your code to use a string or change the state type to number. This warning might become an error in future versions.
                          
                          javascript.0
                          2024-11-29 20:59:12.010	info	(COMPACT) State value to set for "0_userdata.0.Anwesend.Anzahl" has to be type "string" but received type "number"
                          
                          javascript.0
                          2024-11-29 20:59:12.005	warn	(COMPACT) at processTimers (node:internal/timers:519:7)
                          
                          javascript.0
                          2024-11-29 20:59:12.005	warn	(COMPACT) at listOnTimeout (node:internal/timers:581:17)
                          
                          javascript.0
                          2024-11-29 20:59:12.004	warn	(COMPACT) at Timeout._onTimeout (/opt/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7)
                          
                          javascript.0
                          2024-11-29 20:59:12.004	warn	(COMPACT) at /opt/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28
                          
                          javascript.0
                          2024-11-29 20:59:12.004	warn	(COMPACT) at Job.invoke (/opt/iobroker/node_modules/node-schedule/lib/Job.js:171:15)
                          
                          javascript.0
                          2024-11-29 20:59:12.004	warn	(COMPACT) at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1876:34)
                          
                          javascript.0
                          2024-11-29 20:59:12.003	warn	(COMPACT) at Object.<anonymous> (script.js.00_Anwesend.AnzahlAnwesend:17:3)
                          
                          javascript.0
                          2024-11-29 20:59:12.003	warn	(COMPACT) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20)
                          
                          javascript.0
                          2024-11-29 20:59:12.002	warn	(COMPACT) You are assigning a number to the state "0_userdata.0.Anwesend.Anzahl" which expects a string. Please fix your code to use a string or change the state type to number. This warning might become an error in future versions.
                          
                          javascript.0
                          2024-11-29 20:59:10.011	info	(COMPACT) State value to set for "0_userdata.0.Anwesend.Anzahl" has to be type "string" but received type "number"
                          
                          javascript.0
                          2024-11-29 20:59:10.005	warn	(COMPACT) at processTimers (node:internal/timers:519:7)
                          
                          

                          starte mal die Instsnz neu und mach rinen Browserrefresh (Strg-f5)

                          Javascript und mqtt neugestartet sowie F5

                          mickym Homoran 2 Replies Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @mickym last edited by

                            @mickym Ist sehr interessant (vielleicht werd ich deswegen mit jsonata nicht warm), aber könnten wir das bitte aus diesem Thread erst mal herauslassen.

                            ich fürchte wir verlieren @ioBrokerMike sonst.

                            mickym 1 Reply Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @ioBrokerMike last edited by

                              @iobrokermike Ja entweder konvertierst Du die Anzahl in eine Zahl oder den Datenpunkt in String/Zeichenkette.

                              I 1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @Homoran last edited by

                                @homoran Ja ist OK - ich habs selbst gecheckt - Du kannst den Post auch löschen.

                                1 Reply Last reply Reply Quote 1
                                • I
                                  ioBrokerMike @mickym last edited by

                                  @mickym sagte in JSON aufteilen in DP:

                                  die Anzahl in eine Zahl oder den Datenpunkt in String/Zeichenkette.

                                  Schon gemacht

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

                                    @iobrokermike sagte in JSON aufteilen in DP:

                                    So jetzt die Filterung von Javascript:

                                    und in dem Zeitbereich (4 Sekunden!) hast du das Testskript refreshed?

                                    @iobrokermike sagte in JSON aufteilen in DP:

                                                            2024-11-29 20:59:12.004	warn	(COMPACT)
                                    

                                    läuft der Adapter bei dir im compact mode?
                                    warum?

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

                                      @homoran sagte in JSON aufteilen in DP:

                                      nd in dem Zeitbereich (4 Sekunden!) hast du das Testskript refres

                                      Nein das hatte ich nicht getan.

                                      läuft der Adapter bei dir im compact mode?
                                      warum?

                                      Das kann ich nicht sagen.
                                      Habe den harken im Host raus gemacht.

                                      Was mir eben auffiel ist :
                                      Wenn ich den Javascript Adapter auf debug stelle läuft das Testscript warum auch immer.
                                      Blockly 7.png

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

                                        @iobrokermike sagte in JSON aufteilen in DP:

                                        läuft das Testscript warum auch immer.

                                        dann jetzt zum echten Skript!

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

                                          @homoran sagte in JSON aufteilen in DP:

                                          t zum echten Skript!

                                          Blockly 8.png

                                          Vielen Dank an euch und eure Geduld . 👍

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

                                            @iobrokermike sagte in [ gelöst ] JSON aufteilen in DP:

                                            Vielen Dank an euch und eure Geduld .

                                            heisst das, dass es jetzt läuft?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            667
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            48
                                            2001
                                            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