Skip to content

DE:twoway‐Binding

Jochen Kühner edited this page Jan 22, 2024 · 6 revisions

In Bearbeitung

Zum Schreiben von Datenpunkten im ioBroker nutzt webui sogenannte two way binding. Beim two way Binding, kann man auch an mehrere Objekte Binden, aber beim schreiben wird bei multi Bindings aber immer in das erste Objekt geschrieben.

Zieht man einen ioBroker-Datenpunkt aus dem Objektbaum auf einen Screen wird standardmässig ein Inputfeld mit einem two way Binding angelegt. Beispiel:

twoway_binding_standard

Bindings werden per default als String behandelt. Handelt es sich beim entsprechenden ioBroker Datenpunkt um eine Zahl (number), so erscheint bei einer Eingabe in dieses Inputfeld eine Meldung im ioBroker Log:

iobroker_meldung

webui bzw. der ioBroker Webserver versucht eine String-Variable in Datenpunkt vom Typ Zahl zu schreiben.
Solange es sich beim Inhalt um eine Zahl handelt, wandelt ioBroker automatisch den String in eine Zahl und alles funktioniert. Besser ist es jedoch, wenn man in webui den Typ des Datenpunktes angibt:

type

Hier also den Typ "number" auswählen. Danach gibt es auch keine Meldung mehr im ioBroker Log

Außerdem hat man den weiteren Vorteil das wenn man eine Formula angelegt hat wie zb.

grafik

Dann wird nur der Zahlenwert übertragen. Wie in diesem fall das °C wird nicht mitgeschrieben. Dies Funktioniert aber auch nur, wenn die Eingabe als Zahl interpretierbar ist.

Für komplexere Funktionen gibt es noch "formula write back", in dieses Feld könnt Ihr eine Expression eingeben, wie mit dem Wert beim zurückschreiben Verfahren wird, bspw:

 value / 10

würde immer den eingegebenen wert durch 10 teilen.

Clone this wiki locally