NEWS
JSON mit Blockly auflösen
-
Ich brauche bitte Hilfe von euch. Habe verschiedene Forenbeiträge gelesen, komme aber nicht auf eine für mich passende Lösung.
Hat jemand für mich ein Blockly Bespielscript mit dem ich aus einem MQTT Datenfeld einzelne Werte rausbekomme.Das schmeißt meine Zbbridge raus:
{"ZbReceived":{"0xB5C1":{"Device":"0xB5C1","0500<00":"010000000000","ZoneStatusChange":1,"Contact":1,"Endpoint":1,"LinkQuality":149}}}
Nun möchte ich diesen String in einzelne Datenfelder auflösen, komme aber nicht weiter.
Ich danke schon mal vorab für eure Hilfe
-
@tgespeedsurfer sagte in JSON mit Blockly auflösen:
Nun möchte ich diesen String in einzelne Datenfelder auflösen, komme aber nicht weiter.
ruf dir mal den json-viewer unter jsonviewer.stack.hu auf, kopiere das json dort rein und du siehst schonmal die Struktur
Jetzt kannst du mit dem Block "Attribut von" die jeweiligen Werte in die gewünschten Datenpunkte schreiben.
Der Inhalt vonZbReceived.0xB5C1.Device
wäre dann "0xB5C1" -
@tgespeedsurfer So:
-
Verstanden! Sehr gut.
Vielen Dank für die schnelle Hilfe
Jetzt kann ich weitermachen. -
Hallo zusammen,
ich bin aktuell ein Anfänger, und kämpfe an der Herausforderung, die Werte von einem Tasmota Adapter (IR-Kopf) von einem Stromzähler in IO-Broker aufzunehmen und in der influx Datenbank systematisch abzulegen.
Via MQTT kommen im IO Broker folgende Message die als ein Objekt von IO-Broker identifiziert wird. Nun möchte ich die Werte in der Body von dieser Nachricht (JSON?) auf die drei Zeitreihen "Total_in", "Power_curr" und "Total_out" aufzuteilen. Ich wollte es mit Blockly zusammen stellen, aber irgendwie komme ich nicht richtig weiter. Kann mir vielleicht jemand bei Erstellung von Blockly helfen?
Der Namen von Objekt, das über MQTT in IOBroker ankommt, lautet:
"tasmota/Stromzaehler-Haus/tele/SENSOR"Das Datenpaket umfasst foglende Message:
{"Time":"2023-04-23T01:04:29","Haus":{"Meter_Number":"0a0149545200034d1461","Total_in":5303.4909,"Power_curr":326,"Total_out":0.0000}}
Gewünscht sind drei Datenobjekten:
-Total_in
-Power_curr
-Total_out
mit dem gesendeten Zeitstempel "Time", die dann in der DAtenbank gespeichert werden, nachdem die MEssage vin Tasmota ankommt. -
@anonymous23 sagte in JSON mit Blockly auflösen:
bei Erstellung von Blockly helfen?
So geht man beim "zerlegen" vor:
-
@djmarc75 Danke!
ich finde bei mir in Blockly das Element "Setze" weder bei Triggern noch bei Aktionen und Funktionen...
Auch in Variablen finde ich kein passendes Block.
Suche ich an der falschen Stelle?... (sry für mein Unwissen...) -
@anonymous23 Du musst die Variable erst erstellen, dann findest Du auch setze
-
@djmarc75 vielen Dank.
Bin jetzt noch ein Stück weiter.
Eine Frage: was soll als Element in Blockly für das "Wert" eingeführt werden?
-
@anonymous23 links unter Trigger den Baustein "Objekt ID" rausziehen und dann auf Wert stellen: