NEWS
MQTT Jason String [gelöst]
-
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. -
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.@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); }); -
@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); });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); }); -
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); }); -
@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 ?
-
@paul53
Danke, es geht jetzt, hat etwas gedauert, der Datenpunkt wird alle 5 Minuten geändert.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden