Ich habe eine rule für einen Aqara H1 Schalter.
Wird die linke Taste gedrückt "action=single_left" soll eine Steckdose ein/ausgeschaltet werden.
Wenn ich die Rule im UI starte wird die Steckdose wie gewünscht ein/aus geschaltet.
Aber irgendwie erkennt die Rule die "action" nicht. Obwohl das ITEM selbst seinen
status entsprechend ändert.
Wie kann ich das prüfen, weshalb die Rule nicht reagiert ?
Ein Status und ein String sind zwei unterschiedliche Dinge. Setze einfach keinen Status im Trigger, sondern prüfe entweder über die Condition (but only if) oder teste den aktuellen Status direkt im Code (jeweils als String...)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
Der Trigger ist, dass das Item ein Update bekommt. Nur ist es egal, welches Update es bekommt.
Falls das Item mehrere unterschiedliche Updates bekommt (weil es mehrere Schaltflächen gibt z.B.) kannst Du die Rule auch für alle möglichen Werte gemeinsam nutzen. Du fragst Dann halt stumpf mit if(itemwert == ...) die verschiedenen Möglichkeiten ab.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
in der Zwischenzeit läuft es. Ich hab OH neu gestartet die Rules (Ein/Aus) neu erstellt, dann lief es.
Jetzt noch eine Frage zu diesem Thema:
Der Schalter liefert die "action" "single_left" wenn die linke Taste gedrückt wurde.
Wird die Taste erneut gedrückt, wird kein Trigger ausgelöst, da es kein "update" und kein "change" gibt.
Ich habe jetzt einfach am Ende des Scriptes immer den Wert des Items auf "NULL" gesetzt. Damit erfolgt bei jedem Tastendruck ein "update"
Das ist jedoch vermutlich nicht die sauberste Lösung, oder ?
Danke
Torsten
openHAB 5.0.0 (#4495) auf einem Pi 4 mit openHABian
Das kann nicht sein.
Das received update Ereignis muss bei jedem Tastendruck kommen, egal welchen Zustand das Item zu dem Zeitpunkt hat.
Wenn es aber anders nicht funktioniert, ist die Lösung, das Item gezielt auf einen Status zu setzen, der nicht vom Binding kommen kann, sicher legitim.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet