Wasserleckage Rule wiederkehrend

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Wasserleckage Rule wiederkehrend

Beitrag von SaschaQ »

Hallo zusammen,

ich habe eine Rule mit der ich benachrichtigt werde, wenn mein Wasserleckagesensor an der Spülmaschine Wasser erkennt:

Nun ist es so, dass der Leckagesensor einmal auf An springt wenn Wasser anliegt und dann die Benachrichtigung versendet wird. Der Sensor springt erst dann wieder auf Aus, wenn das Wasser beseitigt wurde.

Wie kann ich die Rule anpassen, sodass öfter nachgeprüft wird, ob der Sensor noch auf An steht ohne dass dieser von Aus auf An wechseln muss.
Ich möchte dass der Sensor mir öfter eine Benachrichtigung schickt, falls der Sensor noch auf An steht und ich die erste Benachrichtigung überlesen habe.

Code: Alles auswählen


rule "Benachrichtigung Wasserleckage Küche Spülmaschine"
when
	Item eg_kueche_spuelmaschine_wasser_leckage changed to ON

then
sendBroadcastNotification("Wasserleckage in der Küche bei der Spülmaschine!")

end



Benutzeravatar
peter-pan
Beiträge: 2774
Registriert: 28. Nov 2018 12:03
Answers: 30
Wohnort: Schwäbisch Gmünd

Re: Wasserleckage Rule wiederkehrend

Beitrag von peter-pan »

...evtl. einem zusätzlichen Cron-Trigger und einer If-Bedingung ?!
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.6 openhabian

Benutzeravatar
KellerK1nd
Beiträge: 432
Registriert: 17. Jun 2019 16:45
Answers: 1
Wohnort: Griesheim

Re: Wasserleckage Rule wiederkehrend

Beitrag von KellerK1nd »

Hat der Sensor auch einen Channel mit Updatetime oder sowas? Dann könntest du auch darauf triggern lassen.
Betriebssystem: Proxmox 7.3-4
openHAB Container: debian11 LXC
openHAB Version: 3.4
Hardware: HomeServer Eigenbau mit einem Intel i5 9600K
Smarthome-Equipment:
- Rasperrymatic
- deConz
- HUE
- Shellys
- Mosquitto
- AVM Fritz!Box

Benutzeravatar
udo1toni
Beiträge: 15271
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: Wasserleckage Rule wiederkehrend

Beitrag von udo1toni »

Also, gesetzt den Fall, es handelt sich um OH2, wäre meine erste Wahl:

Code: Alles auswählen

var Timer tWarn = null

rule "Benachrichtigung Wasserleckage Küche Spülmaschine"
when
    Item eg_kueche_spuelmaschine_wasser_leckage changed
then
    tWarn?.cancel
    if(eg_kueche_spuelmaschine_wasser_leckage.state == ON) {
        tWarn = createTimer(now, [|
            sendBroadcastNotification("Wasserleckage in der Küche bei der Spülmaschine!")
            tWarn.reschedule(now.plusMinutes(30))
        ])
    }
end
Die Rule löst bei jedem Wechsel aus (wichtig)
Zunächst wird ein eventuell laufender Timer gelöscht. ist der Status ON, so wird der Timer angelegt und unmittelbar ausgeführt.

Wird der Timer ausgeführt, so wird die Nachricht verschickt. Anschließend wird der Timer erneut geplant. Im Beispiel gibt es alle 30 Minuten eine Meldung, bis der Sensor wieder von ON zu einem anderen Zustand wechselt.
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Wasserleckage Rule wiederkehrend

Beitrag von SaschaQ »

Ich nutze OH3, da sollte das doch auch so gehen oder?

Benutzeravatar
udo1toni
Beiträge: 15271
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: Wasserleckage Rule wiederkehrend

Beitrag von udo1toni »

Ja, aber nur, denn die Rule zum einen in einer *.rules Datei gespeichert ist (wegen der globalen Variable zwingend) und Du zum anderen das now an beiden Stellen durch ZonedDateTime.now ersetzt.
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Wasserleckage Rule wiederkehrend

Beitrag von SaschaQ »

Ich habe es gestern mal getestet und es funktioniert in OH3 genauso wie du es gepostet hast.

Habe den Sensor mal in Wasser gelegt und die Meldung kam alle 30 Minuten.

Antworten