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 Datei parsen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    (gelöst) JSON Datei parsen

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mwolle last edited by mwolle

      Hallo zusammen,
      ich möchte aus einem Portal Zählerstände abholen, per URL Befehl komme ich auch drauf, und erhalte eine JSON Datei. Am Ende hapert es dann beim Auslesen.

      Ich habe den Blockly Code von hier als Vorlage genommen:
      https://www.machs-smart.de/json-blockly-einlesen-parsen-verarbeiten/

      Meine JSON sieht so aus:

      {
         "body":[
            {
               "parser_id":"4c368561-c227-45c9-84b2-a9c5df2447c9",
               "device_id":"7fba5eab-0811-426b-b818-0f4bbc6ae03e",
               "packet_id":"ade14889-52b6-42fd-a1c1-0b7277b63be6",
               "location":null,
               "inserted_at":"2022-05-06T01:21:42.755728Z",
               "measured_at":"2022-05-05T21:59:59.999999Z",
               "data":{
                  "7-0:3.0.0":10384.891,
                  "description_1":"impulses",
                  "error_last_reading":"missing or invalid previous reading with 7-0:3.0.0",
                  "k_wh":117349.2683,
                  "type":"SP1",
                  "unit_1":"none",
                  "value_1":25258.0
               },
               "id":"3bd2608f-f31f-4dd2-8420-ec6ae566b484"
            }
         ],
         "ok":true,
         "retrieve_after_id":"3bd2608f-f31f-4dd2-8420-ec6ae566b484",
         "status":200
      }
      

      Das dazugehörige Blockly:
      9bf1f796-0d32-4a9f-a11d-9fc02ff0d4e1-image.png

      Ergebnis ist leider:

      11:14:12.454	info	javascript.0 (8408) script.js.common.Zaehlerstand_Blockly: null
      11:14:12.455	info	javascript.0 (8408) script.js.common.Zaehlerstand_Blockly: null
      

      Ich schätze es liegt irgendwie an der Formatierung des JSON?!?

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

        @mwolle sagte: Meine JSON sieht so aus:

        "body" enthält ein Array mit einem Element.

        Bild_2022-05-06_113541452.png

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

          @paul53 habe ich so nachgebaut:
          b6c5757d-326d-42ea-9057-26f0facffd6b-image.png

          Ergebnis bleibt weiterhin "null".

          Ok der Eintrag mit type würde gehen, da bekomme ich einen Wert, leider will ich die Zahl bei 7-0:3.0.0 haben. Kriegt er das wegen den Sonderzeichen nicht hin?

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

            @mwolle sagte: Ergebnis bleibt weiterhin "null".

            "7-0:3.0.0" enthält viele unzulässige Zeichen für einen Bezeichner. Da hilft eine Javascript-Funktion parseObj(obj, attr) mit folgendem Inhalt:

            return obj[attr];
            

            Bild_2022-05-06_115759368.png

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

              @paul53 bei der Funktion "JS-Funktion mit Ergebnis parseObj steht bei mir nicht mit obj, attr [...] sondern:
              45ec0f5a-9123-4438-a177-3495548e1616-image.png
              mit Doppelklick auf [...] habe ich das eingefügt:

              function parseObj(obj, attr)
              
              return obj[attr];
              

              bekomme aber nicht den gleichen Block wie du, insbesondere finde ich nicht den parseObj mit obj ...attr

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

                @mwolle sagte: habe ich das eingefügt:

                Nur die letzte Zeile!

                @mwolle sagte in JSON Datei parsen:

                finde ich nicht den parseObj mit obj ...attr

                Zahnrad links:

                Bild_2022-05-06_121149639.png

                M 1 Reply Last reply Reply Quote 1
                • M
                  mwolle @paul53 last edited by

                  @paul53 na hervorragend und vielen Dank für den super Support, es hat geklappt:

                  javascript.0 (8408) script.js.common.Zaehlerstand_Blockly: 10384.891
                  
                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  910
                  Online

                  32.0k
                  Users

                  80.5k
                  Topics

                  1.3m
                  Posts

                  2
                  7
                  344
                  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