NEWS
Shelly Plus Uni MQTT
-
Hallo in die Runde,
ich nutze nun schon seit Jahren den iobroker.
Nun bin ich aber mit meinem Latein am Ende und finde einfach keinen vernünftigen Ansatz.
Ich nutze u.a. einige Shelly, jedoch treibt mich der Shelly Plus Uni in die Verzweiflung. Da eine Datenübertragung vom Shelly Uni zum iobroker über die Cloud nicht vorgesehen ist, habe ich den Shelly direkt über eine MQTT Instanz eingebunden.
Die gewünschte / benötigte Daten kommen als Zahlenreihe mit ID , Bezeichnung etc rein Beispiel: {"id": 100,"voltage":11.71}
Ich möchte aber nur den Wert 11.71 weiterverarbeiten über Blockly.
Leider habe ich auch trotz intensiver Suche in diversen Foren und im www bisher keinen wirklich lauffähigen Ansatz gefunden, da neben den Sonderzeichen {", auch ein Mix aus Text und Zahlen ausgeben wird.
Ich wollte daher hier im Forum anfragen, ob jemand einen Lösungsansatz hat oder gleiches Problem lösen konnte.Vielen Dank!
-
@hansm Grundlagen zu JSON anschauen. Hab ich ganz viel zu erklärt.
Baustein: Attribut von Objekt und dann
voltage
selektieren. Oder einen Alias anlegen, welcher mitJSON.parse(val).voltage
in einer Lesefunktion den Wert extrahiert. -
@hansm
Du kannst dafür auch den Shelly Adapter nehmen und bekommst den Wert ganz einfach ohne weitere Bearbeitung oder String-Zerpflücken.
Der Trick ist, dass du beim Plus Uni in der MQTT Einstellung unter ClientID aus "shellyplusuni" ein "shellyplus1" machst. Den MQTT Prefix kannst du lassen wie er ist (Also mit plusuni) -
@fenderbender Solange Du auch den Support für solche Tipps übernimmst, ...
-
@hansm Du erstellst einfach einen Alias und extrahierst den Wert, der Dich interessiert. Ein Anleitung findest Du hier:
https://forum.iobroker.net/post/980575 -
@mickym Danke, hat sogar funktioniert ohne den Shelly umzubenennen