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

      @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

                                678
                                Online

                                31.9k
                                Users

                                80.1k
                                Topics

                                1.3m
                                Posts

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