NEWS
Werte aus JSON übernehmen
-
@libertyx82 Na dann ist es einfach:
aber sag doch einfach, welchen Wert1 Du als Current und welchen Du als Voltage haben willst?
Na ja seis drum - man kann halt nur so gut helfen, wie man konkrete Fragen bekommt:
Wenn man das in einen Datenpunkt im iobroker schreiben will, dann jagt man es einfach durch die JSON Node.
Wie gesagt - das was Du willst musst halt konkret formulieren.
-
@mickym
Tatsächlich geht es um fast alle Werte aus dem JSON string.
Aber das hat mir schon geholfen, muss es ja nur entwprechend anpassenAllerdings ist mir gerade aufgefallen, dass der Wert lastMeterConsumption die falsche Einheit hat und ich diesen durch 1000 teilen müsste.
Gibt es auch eine Möglichkeit, dass nicht jede Nachricht aus dem Node bearbeitet wird sondern nur z.B. jede 5.?
-
@libertyx82 Ist das Thema jetzt gelöst, oder brauchst Du bei der Umsetzung noch Hilfe?
-
@libertyx82 Wie gesagt, wenn Du das als Objekte in iobroker schreiben willst - dann erzeugst Du String nicht selbst, sondern nutzt das Objekt. Macht einfach keinen Sinn sonst.
Wenn das nicht genau 5 Nachrichten sein müssen, dann empfehle ich Dir die Delay Node. um die Nachrichtenrate zu begrenzen und die Zwischennachrichten zu löschen.
Wenn Du unbedingt zählen willst - dann musst halt eine kleine function Node schreiben.
var counter = context.get("counter") || 0; counter++; if (counter==5) counter = 0; context.set("counter", counter); if (!counter) return msg;
-
Muss nicht exakt jede 5. sein, Delay Node mit 1msg/5s passt perfekt Danke!
Ich schreibe den Wert der msg.payload als Wert in ein iobroker objekt
Daher müsste ich den Wert von lastMeterConsumption davor umrechnen
-
@libertyx82 Warum machst Du da kein Device draus oder ein Verzeichnis und speicherst die Werte einzeln?
-> SET_STATES -> POWER 241,02 -> CURRENT 2,01
-
@libertyx82 dann rechnest halt um
-
@great-sun Na dann kann er gleich meinen Subflow nehmen, der schreibt alle Werte eines JSON in einzelne Datenpunkte:
https://forum.iobroker.net/topic/43856/json-oder-javascript-objekt-in-iobroker-datenpunkte-zerlegen
-
@mickym Siehste, noch einfacher
-
@mickym
Da hätte ich drauf kommen könnenDa ich die Werte in iobroker nicht weiter bearbeite sondern lediglich in ein virtuelles Geräte meines SmartHome schreibe, reicht mir das.
Nochmals Danke!