Nein? Wie kommst Du denn zu der Notation?
Die Rule, welche Du suchst, lautet
Code: Alles auswählen
rule "Auto OFF"
when
Item Untertischgeraet_MeterCurrentWatts changed
then
if(!(Untertischgeraet_MeterCurrentWatts.state instanceof Number))
return;
if((Untertischgeraet_MeterCurrentWatts.state as Number).floatValue < 100)
Untertischgeraet_Switch.sendCommand(OFF)
end
Wobei die 100 vermutlich eher zu hoch angesetzt sind. Die Schwelle sollte geringfügig über dem Ruhestrom liegen. Wenn also im Ruhezustand 0 angezeigt wird, nimmst Du meinetwegen 1 oder 2 als Wert.
Rules in openHAB werden durch Events ausgelöst. Eine Rule läuft exakt einmal, durch und ist dann beendet, bis sie erneut getriggert wird. Dauer eines Durchlaufs typisch weniger als 10 Millisekunden, bei einer so kleinen Rule eher weniger als 1 Millisekunde.
Der Trigger in diesem Fall muss der Verbrauch sein, denn diesen Wert nutzt Du zur Steuerung.
Alle Trigger für eine Rule stehen nach dem when. Es muss ein Schlüsselwort für die Art des Triggers angegeben werden, in diesem Fall Item, weil es um ein Item geht. Getriggert werden soll, wen sich der Verbrauch ändert, also wird nach changed getriggert.
Als ersten Schritt in solch einer Rule muss geprüft werden, ob der Status (.state) des untersuchten Items einen gültigen Zahlenwert enthält (instanceof Number). Ist das nicht der Fall, muss die Rule abgebrochen werden (Das geschieht mit dem return; dies ist die einzige Anweisung in der Rules DSL, welche ein Semikolon am Schluss braucht.)
Im zweiten Schritt wird der Status als Number gecastet, was gefahrlos möglich ist, wir haben ja sichergestellt, dass .state vom Typ Number ist. Wir wollen diese Number als Float (Fließkommazahl) betrachten, deshalb das .floatValue. Es könnte sein, dass die Rule auch ohne diese Erweiterung funktioniert, sobald das Item aber ein UoM Item ist, geht der Vergleich ohne dieses Anhängsel schief, denn .state ist dann nicht .z.B. 35, sondern 35 W. Das wird auch so im Log angezeigt. 35 W kann aber nicht mit 100 verglichen werden (bzw. der Vergleich ist immer wahr, oder immer falsch, je nach Vergleich).
Wenn der gemessene Wert unterhalb des Grenzwertes liegt, wird der Ausschaltbefehl gesendet.
Man könnte die Rule noch etwas sicherer machen, indem man einen Merker verwendet. Der Merker wird gesetzt, wenn der gemessene Strom eine Grenze überschreitet. Nur wenn der Merker gesetzt und die Grenze gleichzeitig unterschritten wird, wird der Ausschaltbefehl gesendet. Damit ist dann sichergestellt, dass die Heizung einmal eingeschaltet war.
Bleibt noch eine Frage zu klären, nämlich wie oft wird der Messwert aktualisiert.

openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet