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

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wert aus Objekt auslesen und in Datenpunkt speichern

    This topic has been deleted. Only users with topic management privileges can see it.
    • 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
                                    • Homoran
                                      Homoran Global Moderator Administrators @paul53 last edited by

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

                                      Dann versuche es so:

                                      Auch das hatte nicht geklappt.

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

                                      Uns siehe da:

                                      Dann brauche ich ja nicht mehr versuchen den String zu zerlegen

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

                                        @Homoran sagte:

                                        Auch das hatte nicht geklappt.

                                        @toki1973 hat uns mit {"val":" in die Irre geführt, denn das stammt aus dem state-JSON, das er nur unvollständig gepostet hat.

                                        Homoran 1 Reply 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 er nur unvollständig gepostet hat.

                                          deswegen das unexpected end of JSON

                                          OK - ich denke das Thema ist mit der Lösung über den Sonoff Adapter erledigt

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

                                            @Homoran said in Wert aus Objekt auslesen und in Datenpunkt speichern:

                                            @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

                                            Habe ja auch zwei unterschiedliche Ports 🙂

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            752
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

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