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.
    • 1
      1984chris @1984chris last edited by

      @1984chris

      hier ein Foto von der Tasmota Console,
      da steht nur Tagstrom und sonst nichts ist das Normal?
      Tasmota_Console.jpg

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

        @1984chris

        jetzt kommt ein Fehler

        Fehler_Token.jpg

        mickym 1 Reply Last reply Reply Quote 0
        • 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

                                      932
                                      Online

                                      31.9k
                                      Users

                                      80.1k
                                      Topics

                                      1.3m
                                      Posts

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