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.
    • 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
                                          • Homoran
                                            Homoran Global Moderator Administrators @toki1973 last edited by

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

                                            Habe ja auch zwei unterschiedliche Ports

                                            und die Clients sind auf beide ports konfiguriert?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            872
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

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