Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. MQTT Jason String [gelöst]

    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

    MQTT Jason String [gelöst]

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

      Hallo, meine Zipabox schreibt per MQTT Daten im Jason Format, zb die Thermostate:

      {"value":19.68,"timestamp":"2019-12-16T13:39:45Z"}

      Wie kann ich jetzt die Temperatur in einen neuenDatenpunkt schreiben, im Vis anzeigen oder über den History Adapter als Flot Diagramm darstellen.
      Ich benötige ja eine Möglichkeit den Wert hinter Value in ein neues Objekt zu Schreiben.

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

        @Thor72H sagte:

        Wert hinter Value in ein neues Objekt zu Schreiben.

        Wenn der JSON-String in einem Datenpunkt vorliegt:

        const idJson = '...';
        const idTemp = '0_userdata.0....'; // eigener Datenpunkt vom Typ "Zahl", Einheit: °C
        
        on(idJson, function(dp) {
           var t = JSON.parse(dp.state.val).value;
           setState(idTemp, t, true);
        });
        
        T 1 Reply Last reply Reply Quote 0
        • T
          Thor72H @paul53 last edited by Thor72H

          @paul53

          Habe es jetzt so angepasst, Script läuft ohne Fehler durch, aber es ändert sich nichts, der Wert im eigenen Datenpunkt bleibt auf NULL

          const idJson = 'mqtt.0.Axxxxxxxxxxxxxxxxxxx.attributes.6c023ada-5a8f-4c04-98a4-093b111111110c1.value';
          
          const idTemp = '0_userdata.0.Zipato.Bad_Heizung';
          
           on(idJson, function(dp) {
          
             var t = JSON.parse(dp.state.val).value;
          
             setState(idTemp, t, true);
          
          });
          
          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Thor72H last edited by

            @Thor72H sagte:

            der Wert im eigenen Datenpunkt bleibt auf NULL

            Der Wert im Json-Datenpunkt muss sich erst ändern, damit getriggert wird. Wie oft wird der Datenpunkt aktualisiert ? Ist .value tatsächlich Bestandteil der Datenpunkt-ID ?

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

              @paul53
              Danke, es geht jetzt, hat etwas gedauert, der Datenpunkt wird alle 5 Minuten geändert.

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

                @Thor72H sagte:

                es geht jetzt

                Dann markiere bitte das Thema in der Überschrift als [gelöst].

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

                Support us

                ioBroker
                Community Adapters
                Donate

                606
                Online

                31.8k
                Users

                80.0k
                Topics

                1.3m
                Posts

                javascript
                2
                6
                534
                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