Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Payload String zerlegen

    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

    Payload String zerlegen

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @1984chris last edited by

      @1984chris Nein eben nicht - hinter dem Tagstrom ist ein komisches Steuerzeichen und deswegen funktioniert der ganze JSON String nicht.

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

        @1984chris

        @1984chris sagte in Payload String zerlegen:

        @1984chris

        jetzt kommt ein Fehler

        Fehler_Token.jpg

        Ja genau - und das ist die Ursache - dass das Objekt kaputt ist. 😉

        Das ist dieses komische Zeichen, was Du auch

        {"Time":"2023-05-16T19:45:29","Tagstrom":{"V_L1":233,"V_L3":236,"V_L3":236,"A_L1":0.63,"A_L2":2.33,"A_L3":0.32,"W_IN":590,"W_OUT":0,"kWh_total_IN":19147.756,"kWh_total_OUT":776.383},"WäPu":{"V_L1":232,"V_L3":236,"V_L3":235,"A_L1":0.48,"A_L2":0.00,"A_L3":0.02,"W_IN":112,"W_OUT":0,"kWh_total_IN":21698.535,"kWh_total_OUT":0.000}}
        

        https://forum.iobroker.net/post/992609

        gepostet hast. Also irgendwo - wo Du ggf. Tagstrom eingegeben hast - ist ein komisches Sonderzeichen drin.

        1 mickym 2 Replies Last reply Reply Quote 0
        • 1
          1984chris @mickym last edited by

          @mickym
          Das habe ich im Tasmota Script lese damit 2 Smartmeter Zähler aus.

          >D
          
          >B
          smlj=0
          =>sensor53 r
          >R
          smlj=0
          >S
          if upsecs>22
          then
          smlj|=1
          endif
          >M 2
          +1,16,r,0,2400,Tagstrom,
          1,=so3,512
          1,=so4,413F4428472B4B6150645367566B5970
          1,020Ex1UUuu@1,Spannung L1,V,V_L1,0
          1,020Ex4UUuu@1,Spannung L2,V,V_L3,0
          1,020Ex7UUuu@1,Spannung L3,V,V_L3,0
          1,020Ex10UUuu@100,Strom L1,A,A_L1,2
          1,020Ex13UUuu@100,Strom L2,A,A_L2,2
          1,020Ex16UUuu@100,Strom L3,A,A_L3,2
          1,020Ex19UUuuUUuu@1,Leistung +P,W,W_IN,0
          1,020Ex24UUuuUUuu@1,Leistung -P,W,W_OUT,0
          1,020Ex29UUuuUUuu@1000,Zählerstand +P,kWh,kWh_total_IN,3
          1,020Ex34UUuuUUuu@1000,Zählerstand -P,kWh,kWh_total_OUT,3
          
          +2,17,r,0,2400,WäPu,
          2,=so3,512
          2,=so4,6B58703273357638782F413F4428472B
          2,020Ex1UUuu@1,Spannung L1,V,V_L1,0
          2,020Ex4UUuu@1,Spannung L2,V,V_L3,0
          2,020Ex7UUuu@1,Spannung L3,V,V_L3,0
          2,020Ex10UUuu@100,Strom L1,A,A_L1,2
          2,020Ex13UUuu@100,Strom L2,A,A_L2,2
          2,020Ex16UUuu@100,Strom L3,A,A_L3,2
          2,020Ex19UUuuUUuu@1,Leistung +P,W,W_IN,0
          2,020Ex24UUuuUUuu@1,Leistung -P,W,W_OUT,0
          2,020Ex29UUuuUUuu@1000,Zählerstand +P,kWh,kWh_total_IN,3
          2,020Ex34UUuuUUuu@1000,Zählerstand -P,kWh,kWh_total_OUT,3
          #
          
          1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @mickym last edited by mickym

            @mickym Dann mach in Zeile 28 mal den Umlaut raus - und schreib die Zeile 14 neu - und lösch mal die Zeile 27 (oder mach auch ein #) - vielleicht ist das komisch. Du kannst das ja ggf. wieder rückgängig machen.

            Jedenfalls muss das Sonderzeichen nach dem Wort Tagstrom raus.

            1 1 Reply Last reply Reply Quote 0
            • 1
              1984chris @mickym last edited by

              @mickym

              Wenn ich statt Tagstrom nur Strom eingebe bekomme ich

              MQTTok.jpg

              so sollte es sein oder? verstehe ich nicht

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

                @1984chris Ja so sollte es sein. 😉 . Du kannst ja nochmal Tagstrom hinschreiben - vielleicht war da ein komisches Zeichen vorher drin. Ansonsten schreib halt T-Strom - vielleicht liegt es an der Anzahl Zeichen. Und Umlaute solltest Du auch vermeiden. Aber jedenfalls sind wir nun auf der richtigen Spur. 😉

                1 1 Reply Last reply Reply Quote 0
                • 1
                  1984chris @mickym last edited by

                  @mickym

                  Danke. Bin jetzt am probieren das ich einen Wert in die influxDB bekomme.

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

                    @1984chris Kann Dir schon weiterhelfen. Wie sieht denn das Objekt jetzt aus?

                    Und warum nutzt Du eine alte Influx- DB Version?

                    1 1 Reply Last reply Reply Quote 0
                    • 1
                      1984chris @mickym last edited by

                      @mickym
                      Ich habs hinbekommen in Grafana Danke.
                      Da war eine Anleitung mit Docker und wie man die Programme instaliert da war diese influxDB Version verlinkt

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

                        gelöscht

                        1 Reply Last reply Reply Quote 0
                        • U
                          ursmii last edited by ursmii

                          ich möchte diesen älteren topic aufgreifen, den ich via gockel gefunden habe
                          ich will von standard TheThinkNet-nodes die Temperatur (später auch andere Werte) auslesen.
                          die daten kann ich empfangen und habe mich an das vorgehen von @mickym gehalten und den pfad kopiert
                          Anpassung.jpg
                          die ergebnisse mit den verschiedenen "to the value" habe ich beschrieben. keines ergibt den temperaturwert.
                          das json ist hier:
                          JSON_Inject.jpg
                          der ganze flow ist hier

                           [
                              {
                                  "id": "d02e3f7c2c9d8dc7",
                                  "type": "tab",
                                  "label": "Flow 1",
                                  "disabled": false,
                                  "info": "",
                                  "env": []
                              },
                              {
                                  "id": "9a80d4b9e8173efb",
                                  "type": "inject",
                                  "z": "d02e3f7c2c9d8dc7",
                                  "name": "",
                                  "props": [
                                      {
                                          "p": "payload"
                                      }
                                  ],
                                  "repeat": "",
                                  "crontab": "",
                                  "once": false,
                                  "onceDelay": 0.1,
                                  "topic": "",
                                  "payload": "{\"end_device_ids\":{\"device_id\":\"ttn-node-ursm-01\",\"application_ids\":{\"application_id\":\"ttn-node-ursm\"},\"dev_eui\":\"0000000000000001\",\"join_eui\":\"0000000000000002\",\"dev_addr\":\"26000000\"},\"correlation_ids\":[\"gs:uplink:01HYR5GS5DZX2DDNVX5215YAT6\"],\"received_at\":\"2024-05-25T15:22:14.265805009Z\",\"uplink_message\":{\"session_key_id\":\"AY2eG2Lo/G+V4WochCF2LA==\",\"f_port\":2,\"f_cnt\":28993,\"frm_payload\":\"AQAAAgAAAwAABAIBSwVnAOgGZQAAB3EA+fzy/2s=\",\"decoded_payload\":{\"accelerometer_7\":{\"x\":0.249,\"y\":-0.782,\"z\":-0.149},\"analog_in_4\":3.31,\"digital_in_1\":0,\"digital_in_2\":0,\"digital_in_3\":0,\"luminosity_6\":0,\"temperature_5\":23.2},\"rx_metadata\":[{\"gateway_ids\":{\"gateway_id\":\"ursmii-raspi-ic880a-02\",\"eui\":\"B8ABCDEFCDD390B0\"},\"time\":\"2024-05-25T15:22:14.045971Z\",\"timestamp\":7302939,\"rssi\":-119,\"channel_rssi\":-119,\"snr\":-2.5,\"location\":{\"latitude\":47,\"longitude\":8,\"altitude\":444,\"source\":\"SOURCE_REGISTRY\"},\"uplink_token\":\"CiQKIgoWdXJzbWlpLXJhc3BpLWljODgwYS0wMhIIuCfr//7TkLAQm969AxoLCKaEyLIGEPqY2hwg+IKompvbsgE=\",\"received_at\":\"2024-05-25T15:22:14.060198010Z\"},{\"gateway_ids\":{\"gateway_id\":\"ursmii-ttig01\",\"eui\":\"ABCDEFFFFE801065\"},\"time\":\"2024-05-25T15:22:14.015352010Z\",\"timestamp\":658488075,\"rssi\":-93,\"channel_rssi\":-93,\"snr\":8.5,\"location\":{\"latitude\":47,\"longitude\":8,\"altitude\":111,\"source\":\"SOURCE_REGISTRY\"},\"uplink_token\":\"ChsKGQoNdXJzbWlpLXR0aWcwMRIIWKDL//6AEGUQi/b+uQIaCwimhMiyBhDOrZ4kIPjFyoeVkAE=\",\"received_at\":\"2024-05-25T15:22:14.055845927Z\"}],\"settings\":{\"data_rate\":{\"lora\":{\"bandwidth\":125000,\"spreading_factor\":7,\"coding_rate\":\"4/5\"}},\"frequency\":\"868100000\",\"timestamp\":7302939,\"time\":\"2024-05-25T15:22:14.045971Z\"},\"received_at\":\"2024-05-25T15:22:14.062290457Z\",\"consumed_airtime\":\"0.087296s\",\"version_ids\":{\"brand_id\":\"the-things-products\",\"model_id\":\"the-things-node\",\"hardware_version\":\"1.0\",\"firmware_version\":\"1.0\",\"band_id\":\"EU_863_870\"},\"network_ids\":{\"net_id\":\"000111\",\"ns_id\":\"ABCDEF0000000181\",\"tenant_id\":\"ttn\",\"cluster_id\":\"eu1\",\"cluster_address\":\"eu1.cloud.thethings.network\"}}}",
                                  "payloadType": "json",
                                  "x": 450,
                                  "y": 300,
                                  "wires": [
                                      [
                                          "6e94662c29031b5b"
                                      ]
                                  ]
                              },
                              {
                                  "id": "6e94662c29031b5b",
                                  "type": "json",
                                  "z": "d02e3f7c2c9d8dc7",
                                  "name": "Data ttn-node-01",
                                  "property": "payload",
                                  "action": "str",
                                  "pretty": false,
                                  "x": 690,
                                  "y": 300,
                                  "wires": [
                                      [
                                          "96615256b6126e76"
                                      ]
                                  ]
                              },
                              {
                                  "id": "96615256b6126e76",
                                  "type": "change",
                                  "z": "d02e3f7c2c9d8dc7",
                                  "name": "",
                                  "rules": [
                                      {
                                          "t": "set",
                                          "p": "payload",
                                          "pt": "msg",
                                          "to": "uplink_message.decoded_payload.temperature_5",
                                          "tot": "msg"
                                      }
                                  ],
                                  "action": "",
                                  "property": "",
                                  "from": "",
                                  "to": "",
                                  "reg": false,
                                  "x": 920,
                                  "y": 300,
                                  "wires": [
                                      [
                                          "4042c08b38ba5fe9"
                                      ]
                                  ]
                              },
                              {
                                  "id": "4042c08b38ba5fe9",
                                  "type": "debug",
                                  "z": "d02e3f7c2c9d8dc7",
                                  "name": "debug 19",
                                  "active": true,
                                  "tosidebar": true,
                                  "console": false,
                                  "tostatus": false,
                                  "complete": "false",
                                  "statusVal": "",
                                  "statusType": "auto",
                                  "x": 1120,
                                  "y": 300,
                                  "wires": []
                              },
                              {
                                  "id": "875e4e72bbf6123d",
                                  "type": "comment",
                                  "z": "d02e3f7c2c9d8dc7",
                                  "name": "copied path",
                                  "info": "uplink_message.decoded_payload.temperature_5",
                                  "x": 690,
                                  "y": 420,
                                  "wires": []
                              }
                          ]
                          
                          

                          ich hoffe, dass ich hier eine antwort auf meinen sicher banalen fehler erhalte
                          besten dank!

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

                            @ursmii Ich kann so auf Anhieb nichts entdecken. Dein Flow lässt sich leider nicht importieren, da Du den Code nicht in CodeTags eingebunden hast.

                            Code-Tags.gif

                            Achte darauf dass in der ersten und letzten Zeile die

                            3 Zeichen `
                            erhalten bleiben

                            Ansonsten den Pfad aus dem Debugfenster kopieren:

                            copy path.gif

                            Eventuell hast Du auch Deine JSON Node falsch konfiguriert. Wenn Du in einen Objekt schon in deiner Inject Node hast und Du lässt die JSON Node auf automatisch, konvertiert Dir die JSON Node das Objekt wieder in einen String.

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

                              In deiner Change Node hat payload gefehlt, Du hast den Pfad nicht kopiert. Ausserdem hättest Du gesehen, wenn Du eine Debug Node hinter Deine JSON Node gemacht hättest, dass das was aus Deiner JSON Node rauskommt, ein String ist. Du hast also das Objekt wieder in einen JSON String gewandelt. 😠 Das hatte ich ja bereits vermutet, aber wie gesagt, Du hast auch den Pfad nicht aus dem Objekt kopiert, wie ich das im letzten Post gepostet habe.

                              8dd24783-330d-4f3f-b05b-ee27f96c4cc2-image.png

                              Das Debug Fenster kann mehr, als vermutet. 😉

                              [{"id":"9a80d4b9e8173efb","type":"inject","z":"d02e3f7c2c9d8dc7","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"end_device_ids\":{\"device_id\":\"ttn-node-ursm-01\",\"application_ids\":{\"application_id\":\"ttn-node-ursm\"},\"dev_eui\":\"0000000000000001\",\"join_eui\":\"0000000000000002\",\"dev_addr\":\"26000000\"},\"correlation_ids\":[\"gs:uplink:01HYR5GS5DZX2DDNVX5215YAT6\"],\"received_at\":\"2024-05-25T15:22:14.265805009Z\",\"uplink_message\":{\"session_key_id\":\"AY2eG2Lo/G+V4WochCF2LA==\",\"f_port\":2,\"f_cnt\":28993,\"frm_payload\":\"AQAAAgAAAwAABAIBSwVnAOgGZQAAB3EA+fzy/2s=\",\"decoded_payload\":{\"accelerometer_7\":{\"x\":0.249,\"y\":-0.782,\"z\":-0.149},\"analog_in_4\":3.31,\"digital_in_1\":0,\"digital_in_2\":0,\"digital_in_3\":0,\"luminosity_6\":0,\"temperature_5\":23.2},\"rx_metadata\":[{\"gateway_ids\":{\"gateway_id\":\"ursmii-raspi-ic880a-02\",\"eui\":\"B8ABCDEFCDD390B0\"},\"time\":\"2024-05-25T15:22:14.045971Z\",\"timestamp\":7302939,\"rssi\":-119,\"channel_rssi\":-119,\"snr\":-2.5,\"location\":{\"latitude\":47,\"longitude\":8,\"altitude\":444,\"source\":\"SOURCE_REGISTRY\"},\"uplink_token\":\"CiQKIgoWdXJzbWlpLXJhc3BpLWljODgwYS0wMhIIuCfr//7TkLAQm969AxoLCKaEyLIGEPqY2hwg+IKompvbsgE=\",\"received_at\":\"2024-05-25T15:22:14.060198010Z\"},{\"gateway_ids\":{\"gateway_id\":\"ursmii-ttig01\",\"eui\":\"ABCDEFFFFE801065\"},\"time\":\"2024-05-25T15:22:14.015352010Z\",\"timestamp\":658488075,\"rssi\":-93,\"channel_rssi\":-93,\"snr\":8.5,\"location\":{\"latitude\":47,\"longitude\":8,\"altitude\":111,\"source\":\"SOURCE_REGISTRY\"},\"uplink_token\":\"ChsKGQoNdXJzbWlpLXR0aWcwMRIIWKDL//6AEGUQi/b+uQIaCwimhMiyBhDOrZ4kIPjFyoeVkAE=\",\"received_at\":\"2024-05-25T15:22:14.055845927Z\"}],\"settings\":{\"data_rate\":{\"lora\":{\"bandwidth\":125000,\"spreading_factor\":7,\"coding_rate\":\"4/5\"}},\"frequency\":\"868100000\",\"timestamp\":7302939,\"time\":\"2024-05-25T15:22:14.045971Z\"},\"received_at\":\"2024-05-25T15:22:14.062290457Z\",\"consumed_airtime\":\"0.087296s\",\"version_ids\":{\"brand_id\":\"the-things-products\",\"model_id\":\"the-things-node\",\"hardware_version\":\"1.0\",\"firmware_version\":\"1.0\",\"band_id\":\"EU_863_870\"},\"network_ids\":{\"net_id\":\"000111\",\"ns_id\":\"ABCDEF0000000181\",\"tenant_id\":\"ttn\",\"cluster_id\":\"eu1\",\"cluster_address\":\"eu1.cloud.thethings.network\"}}}","payloadType":"json","x":730,"y":300,"wires":[["96615256b6126e76"]]},{"id":"96615256b6126e76","type":"change","z":"d02e3f7c2c9d8dc7","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.uplink_message.decoded_payload.temperature_5","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":920,"y":300,"wires":[["4042c08b38ba5fe9"]]},{"id":"4042c08b38ba5fe9","type":"debug","z":"d02e3f7c2c9d8dc7","name":"debug 19","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1120,"y":300,"wires":[]}]
                              

                              U 1 Reply Last reply Reply Quote 0
                              • U
                                ursmii @mickym last edited by

                                @mickym danke für deine rasche hilfe
                                eine anmerkung:

                                • den pfad habe ich natürlich kopiert. "payload" kommt nicht automatisch mit rein und dass das notwendig ist, habe ich oben überlesen
                                • der grobe fehler war, dass ich noch den json parser eingefügt habe.

                                aber wieder viel dazu gelernt und nun folgt die einbindung in homeassistant, aber das ist kein topic für hier ...

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

                                  @ursmii sagte in Payload String zerlegen:

                                  den pfad habe ich natürlich kopiert. "payload" kommt nicht automatisch mit rein

                                  Na wenn Du es über Pfad kopieren aus dem Debug Fenster gemacht hättest (wie in dem Screenshot gezeigt), wäre der vollständige Pfad schon mitgekommen

                                  payload.uplink_message.decoded_payload.temperature_5
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  763
                                  Online

                                  31.9k
                                  Users

                                  80.1k
                                  Topics

                                  1.3m
                                  Posts

                                  7
                                  77
                                  12621
                                  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