Ich habe eine rule, die ausgelöst wird, wenn sich ein item "changed". Nun habe ich festgestellt, dass diese Regel auch nach dem nächtlichen Restart ausgeführt wird. Das item steht in der Persist-Datei mit restoreOnStartup drin, soll also wiederhergestellt werden, jedoch soll die Regel dabei nicht ausgelöst werden. Kann man das irgendwie einstellen. Danke.
Ich nutze Openhab3 auf eine Raspberry Pi 4.
restoreOnStartup löst Rule aus
-
- Beiträge: 1173
- Registriert: 4. Nov 2019 22:08
Re: restoreOnStartup löst Rule aus
Nun, warum startest Du jeden Abend neu?? Dabei hat das Item zunächst ein "NULL" oder "UNDEF" und wird dann richtigerweise mit dem letzten Wert befüllt. Dies ist dann "Item Changed" und triggered die Regel.
Du könntest dies z.B. abfangen über
Somit wird die Regel nur bei der Initialisierung nicht ausgelöst
Finde ich nicht ganz schön, aber sollte funktionieren?
Du könntest dies z.B. abfangen über
Code: Alles auswählen
(item.state == ON && (previousState != NULL || previousState != UNDEF)
Finde ich nicht ganz schön, aber sollte funktionieren?
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3
-
- Beiträge: 33
- Registriert: 9. Jan 2021 16:12
Re: restoreOnStartup löst Rule aus
Hey du könntest die rule ändern indem du sagst das sie nur auslösen soll wenn sich der Status von einem von dir festgelegten wert zu einem anderen ändert
siehe bild
siehe bild
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
OH3 auf RPI4,
Heizungssteuerung: Fritz DECT,
Zigbee: Conbee2 über Phoscon-GW: Aqara Opple Schalter, Aqara Temperatursensoren, Aqara Fenstersensoren, Aqara Aktoren, IKEA Lichter
Astro Binding
DWDUnwetter Binding
OpenWeatherMap Binding
FritzBox TR 064 Binding
iRobot Binding
Telegramm Binding für Benachrichtigungen und Steuerung von unterwegs
Rolladensteuerung: Rademacher DuoFern über HTTP Binding
Heizungssteuerung: Fritz DECT,
Zigbee: Conbee2 über Phoscon-GW: Aqara Opple Schalter, Aqara Temperatursensoren, Aqara Fenstersensoren, Aqara Aktoren, IKEA Lichter
Astro Binding
DWDUnwetter Binding
OpenWeatherMap Binding
FritzBox TR 064 Binding
iRobot Binding
Telegramm Binding für Benachrichtigungen und Steuerung von unterwegs
Rolladensteuerung: Rademacher DuoFern über HTTP Binding
-
- Beiträge: 20
- Registriert: 29. Dez 2020 12:29
Re: restoreOnStartup löst Rule aus
manchmal sollte man doch etwas länger darüber nachdenken und dann Google mit den richtigen Begriffen füttern.
Dann kommt man zu dieser Lösung https://www.openhab.org/docs/configurat ... p-behavior
Werde es mal mit Option 1 probieren.
Dann kommt man zu dieser Lösung https://www.openhab.org/docs/configurat ... p-behavior
Werde es mal mit Option 1 probieren.
-
- Beiträge: 1173
- Registriert: 4. Nov 2019 22:08
Re: restoreOnStartup löst Rule aus
Dann sind wir mal gespannt und freuen uns auf Dein Update und die Lösung

openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3
-
- Beiträge: 20
- Registriert: 29. Dez 2020 12:29
Re: restoreOnStartup löst Rule aus
Option 1 funktioniert für mich. Wie beschrieben, habe ich einen Switch Item angelegt, welches bei einem Neustart automatisch auf "NULL" gesetzt wird und durch eine Regel, welche 10 min nach dem Restart läuft dann den Switch auf "ON" setzt.
In den anderen Regel habe ich dann eine IF-Funktion eingebaut, die nachdem sich der Status eines Items ändert prüft, ob der Switch auf "ON" ist. Wenn ja wird die Regel ausgeführt sonst nicht.
Problematisch sind aus meiner Sicht zwei Dinge. Zum einen ist dies nur praktikabel, wenn man eine geringe Anzahl von Regeln hat, für die das relevant ist. Bei mir waren es zwei, da ist es ok, ansonsten kann es aber evt. unpraktikabel sein, dies so umzusetzen.
Zweites Problem ist aber ein nicht planmässiger Neustart des Pi. Daher werde ich nun Option 1 und 2 kombinieren und eine Regel und Script zum verzögerten laden der "Umschalt-Regel" schreiben, die jedesmal nach einem Neustart ausgeführt wird.
Edit: der hervorgehobene Teil ist natürlich Quatsch, wenn man die Regel zum ändern des Switches an den Neustart koppelt und nicht an eine feste Uhrzeit. Ursprünglich hatte ich den Neustart für 04:30 Uhr und die Regel zum Umschalten auf 04:40 gesetzt.
Jetzt habe ich mit "when System started" und "createTimer" die Regel so geändert, dass sie nach jedem Restart greift.
In den anderen Regel habe ich dann eine IF-Funktion eingebaut, die nachdem sich der Status eines Items ändert prüft, ob der Switch auf "ON" ist. Wenn ja wird die Regel ausgeführt sonst nicht.
Problematisch sind aus meiner Sicht zwei Dinge. Zum einen ist dies nur praktikabel, wenn man eine geringe Anzahl von Regeln hat, für die das relevant ist. Bei mir waren es zwei, da ist es ok, ansonsten kann es aber evt. unpraktikabel sein, dies so umzusetzen.
Zweites Problem ist aber ein nicht planmässiger Neustart des Pi. Daher werde ich nun Option 1 und 2 kombinieren und eine Regel und Script zum verzögerten laden der "Umschalt-Regel" schreiben, die jedesmal nach einem Neustart ausgeführt wird.
Edit: der hervorgehobene Teil ist natürlich Quatsch, wenn man die Regel zum ändern des Switches an den Neustart koppelt und nicht an eine feste Uhrzeit. Ursprünglich hatte ich den Neustart für 04:30 Uhr und die Regel zum Umschalten auf 04:40 gesetzt.
Jetzt habe ich mit "when System started" und "createTimer" die Regel so geändert, dass sie nach jedem Restart greift.