Moin zusammen,
im develop branch auf github sind jetzt neue Treiber für smarthomeNG und eibd/knxd. Die Treiber ermöglichen eine Kombination von Status- und Schaltitems durch einen Doppelpunkt, also in der Form "item_status:item_control". Der Doppelpunkt wurde als Trennzeichen gewählt, weil dieser in smarthomeNG für die YAML-Syntax reserviert ist und somit im item-Namen nicht auftreten darf.
Findet smartVISU solch ein item, werden wie üblich die Updates für "item_status" beim Backend abonniert, während Schaltbefehle an "item_control" gesendet werden. Das item wird in widget.buffer mit vollem Namen abgespeichert und auch so an die jeweiligen Widgets übergeben. Treten item_status oder item_control in der Seite mehrfach auf, werden diese separat gehalten, aber immer gemeinsam aktualisiert. Man kann also z.B. einen basic.stateswitch mit einem kombinierten item "bath.light.status:bath.light.switch" parametrieren und gleichzeitig im Raum-Menü ein basic.symbol mit "bath.light.status", wie das viele von Euch ja implementiert haben.
Die Kombination von Status- und Schaltitem ist dann sinnvoll, wenn man nicht davon ausgehen kann, dass das reguläre item nach einem Schaltvorgang immer den korrekten Zustand rückmeldet - beispielsweise wenn ein Aktor gesperrt werden kann oder wenn der Schaltvorgang längere Zeit dauert (z.B. Anfahren einer Rolladenposition). So meldet smarthomeNG z.B. die Abarbeitung eines Kommandos per item update zurück, ohne den Erfolg geprüft zu haben.
Damit dies funktioniert, muss in der Konfiguration die Option „Item Bestätigung“ aktiviert sein, damit der Treiber auf die Antwort des Backends wartet, bevor er das Item aktualisiert.
Das neue Format ist optional. Wer dies nicht benötigt, muss an seiner Installation nichst ändern.
Danke an Onkelandy fürs erste Testen. Weitere Tester sind immer willkommen!
Gruß
Wolfram
im develop branch auf github sind jetzt neue Treiber für smarthomeNG und eibd/knxd. Die Treiber ermöglichen eine Kombination von Status- und Schaltitems durch einen Doppelpunkt, also in der Form "item_status:item_control". Der Doppelpunkt wurde als Trennzeichen gewählt, weil dieser in smarthomeNG für die YAML-Syntax reserviert ist und somit im item-Namen nicht auftreten darf.
Findet smartVISU solch ein item, werden wie üblich die Updates für "item_status" beim Backend abonniert, während Schaltbefehle an "item_control" gesendet werden. Das item wird in widget.buffer mit vollem Namen abgespeichert und auch so an die jeweiligen Widgets übergeben. Treten item_status oder item_control in der Seite mehrfach auf, werden diese separat gehalten, aber immer gemeinsam aktualisiert. Man kann also z.B. einen basic.stateswitch mit einem kombinierten item "bath.light.status:bath.light.switch" parametrieren und gleichzeitig im Raum-Menü ein basic.symbol mit "bath.light.status", wie das viele von Euch ja implementiert haben.
Die Kombination von Status- und Schaltitem ist dann sinnvoll, wenn man nicht davon ausgehen kann, dass das reguläre item nach einem Schaltvorgang immer den korrekten Zustand rückmeldet - beispielsweise wenn ein Aktor gesperrt werden kann oder wenn der Schaltvorgang längere Zeit dauert (z.B. Anfahren einer Rolladenposition). So meldet smarthomeNG z.B. die Abarbeitung eines Kommandos per item update zurück, ohne den Erfolg geprüft zu haben.
Damit dies funktioniert, muss in der Konfiguration die Option „Item Bestätigung“ aktiviert sein, damit der Treiber auf die Antwort des Backends wartet, bevor er das Item aktualisiert.
Das neue Format ist optional. Wer dies nicht benötigt, muss an seiner Installation nichst ändern.
Danke an Onkelandy fürs erste Testen. Weitere Tester sind immer willkommen!
Gruß
Wolfram
Kommentar