Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wert aus Objekt auslesen und in Datenpunkt speichern

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wert aus Objekt auslesen und in Datenpunkt speichern

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

      Hallo, ich bekomme per MQTT diesen String übermittelt. Wir kann ich denn über blockly die Werte von "DJ_TPWRCURR" und "Meter_total" in jeweils einen Datenpunkt schreiben?

      mqtt.0	2021-01-05 15:12:40.748	debug	(21339) stateChange mqtt.0.tele.Itron_mME_Power.SENSOR: {"val":"{\"Time\":\"2021-01-05T15:12:40\",\"SML\":{\"Meter_total\":3497.518,\"DJ_TPWRCURR\":590,\"Meter_number\":\"xxxx\"}}
      
      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @toki1973 last edited by

        @toki1973 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

        ich bekomme per MQTT diesen String übermittelt.

        wie sieht denn der inhalt des Datenpunktes im MQTT-client.0 aus?

        T 1 Reply Last reply Reply Quote 0
        • T
          toki1973 @Homoran last edited by

          @Homoran
          Danke für die Rückmeldung!

          Der String oben ist der String den ich bekommen. Hier noch mal:
          8fb77336-87bc-49a4-b237-fa6b8ee46acc-image.png

          {"val":"{\"Time\":\"2021-01-05T15:12:40\",\"SML\":{\"Meter_total\":3497.518,\"DJ_TPWRCURR\":590,\"Meter_number\":\"xxxxxxxxxxx\"}}
          

          Aus dem val möchte ich die Werte von Meter_total und DJ_TPWRCURR ohne doppelpunkt in eigene Datenpunkte schreiben damit ich dies in die Influx db schreiben lassen kann.

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

            @toki1973 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

            {"val":"{"Time":"2021-01-05T15:12:40","SML":{"Meter_total":3497.518,"DJ_TPWRCURR":590,"Meter_number":"xxxxxxxxxxx"}}

            das sieht selbst für mich aus wie ein JSON, das müsste dann mir "Attribut von" gehen.
            Das reizt mich jetzt mal es mit deinem Export zu probieren

            T paul53 2 Replies Last reply Reply Quote -1
            • T
              toki1973 @Homoran last edited by

              @Homoran
              Ich bekomme den String von Tasmota

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

                @toki1973 ich bin leider nicht erfolgreich gewesen.
                Wenn @paul53 das sieht, wird er wahrscheinlich lachen und in kürzester Zeit die Lösung bringen.

                Dann kann ich wenigstens auch noch was lernen

                T 1 Reply Last reply Reply Quote 0
                • T
                  toki1973 @Homoran last edited by

                  @Homoran Danke Dir fürs probieren

                  @paul53 Wäre echt cool wenn du mal schauen könntest.

                  Alternativ könnte ich versuchen über die Tasmota Scripting Language den Wert anders zu übergeben - aber damit habe ich auch noch nichts zu tun gehabt.

                  T paul53 2 Replies Last reply Reply Quote 0
                  • T
                    toki1973 @toki1973 last edited by

                    So wie hier sollte es klappen: https://forum.iobroker.net/topic/40664/gelöst-datenpunkt-aus-json-in-ccu2-variable-schreiben/8
                    Aber irgendwie bekomme ich das parsen nicht auf meine String angepasst.

                    const idJson =  'stateChange mqtt.0.tele.Itron_mME_Power.SENSOR';
                    const idSV   = 'kWh_total';
                     
                    function json2sv(json) {
                       let obj = JSON.parse(json)[0];
                       setState(idSV, obj.Meter_total + '. ' + obj.DJ_TPWRCURR);
                    }
                     
                    json2sv(getState(idJson).val); // Script start
                     
                    on(idJson, function(dp) { // Wertänderung
                       json2sv(dp.state.val);
                    });
                    
                    Homoran 1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @toki1973 last edited by Homoran

                      @toki1973 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

                      Aber irgendwie bekomme ich das parsen nicht auf meine String angepasst.

                      Das war ja auch mein Problem.
                      Du hast noch Escape-Sequenzen mit einem \ drin, dadurch ist es kein "echtes" json
                      Außerdem hast du ein verschachteltes "JSON"

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

                        @toki1973
                        Versuche es mal so:

                        Blockly_temp.JPG

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

                          @paul53 So habe ich es probiert - ohne Erfolg
                          json.png

                          und zwar mit den \ und wie im Bild auch ohne

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

                            @Homoran sagte:

                            {"val":"{"Time":"2021-01-05T15:12:40","SML":{"Meter_total":3497.518,"DJ_TPWRCURR":590,"Meter_number":"xxxxxxxxxxx"}}

                            In diesem String stören die " vor {"Time"
                            Sind die im Original wirklich vorhanden ?

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

                              @paul53 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

                              In diesem String stören die " vor {"Time"
                              Sind die im Original wirklich vorhanden ?

                              Noch schlimmer, die sind escaped:

                              @toki1973 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

                              {"val":"{\"Time\":\"2021-01-05T15:12:40\",\"SML\":{\"Meter_total\":3497.518,\"DJ_TPWRCURR\":590,\"Meter_number\":\"xxxxxxxxxxx\"}}

                              paul53 T 2 Replies Last reply Reply Quote 0
                              • paul53
                                paul53 @Homoran last edited by paul53

                                @Homoran
                                ... und am Ende fehlt auch noch eine geschweifte Klammer.
                                Das ist alles mögliche, nur kein JSON.

                                EDIT: "val":" stammt aus dem state-JSON

                                Homoran 1 Reply Last reply Reply Quote 0
                                • T
                                  toki1973 @Homoran last edited by

                                  Ja so steht es in dem Objekt das in MQQT Objekt angelegt wird.

                                  Tasmota schickt es so auch raus:

                                  13:57:47.444 MQT: tele/Itron_mME_Power/SENSOR = {"Time":"2021-01-08T13:57:47","SML":{"Meter_total":3539.467,"DJ_TPWRCURR":608,"Meter_number":"0a0149545200034ba81e"}}
                                  

                                  Dumme Frage wir bekomme ich den Block Wert da hinein?
                                  2c08b7f1-10df-457e-a1c6-cecb503fb68b-image.png

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

                                    @paul53 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

                                    Das ist alles mögliche, nur kein JSON.

                                    das hatte ich befürchtet, bin gerade dabei Buchstaben zu zählen 😉

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

                                      @toki1973 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

                                      Dumme Frage wir bekomme ich den Block Wert da hinein?

                                      befindet sich unter den Triggerbausteine, ist ein pulldown, da steht standardmäßig "Objekt ID"

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

                                        @toki1973 sagte:

                                        13:57:47.444 MQT: tele/Itron_mME_Power/SENSOR = {"Time":"2021-01-08T13:57:47","SML":{"Meter_total":3539.467,"DJ_TPWRCURR":608,"Meter_number":"0a0149545200034ba81e"}}

                                        Dann versuche es so:

                                        Blockly_temp.JPG

                                        Wert findet man unter "Trigger".

                                        Blockly_DP_Props.JPG

                                        Homoran T 2 Replies Last reply Reply Quote 0
                                        • T
                                          toki1973 @Homoran last edited by

                                          Argh 😖 Ich habe jetzt mal auf den Sonoff mqtt Server umgestellt. Uns siehe da:
                                          e83c1b0d-b545-49fd-9ae7-3d100c077abe-image.png

                                          Zuvor hatte ich eine separate MQTT Instanz

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

                                            @toki1973 sagte in Wert aus Objekt auslesen und in Datenpunkt speichern:

                                            Zuvor hatte ich eine separate MQTT Instanz

                                            du kannst keine zwei MQTT Clients mit gleichem Port parallel betreiben

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            29
                                            5069
                                            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