Dummy Switch Item erstellen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
mcdandrew
Beiträge: 175
Registriert: 13. Dez 2018 17:42
Answers: 0

Dummy Switch Item erstellen

Beitrag von mcdandrew »

Ich möchte gern folgendes Projekt umsetzen.

An unserem Garagentor befindet sich ein Kontaktsensor, welche über eine Rule überwacht wird und in der Zeit zwischen 22:00 - 06:00 ein Sonoff S20 mit angeschlossener Sirene ansteuert.

Das funktioniert soweit....

Über die Openhab APP möchte ich nun die Möglichkeit haben in der Sitemap ein Switch Item zum Deaktivieren der Alarmauslösung zu haben....schließlich kann es auch mal vorkommen, dass man abend mal in die Garage muss.
Nur irgendwie funktioniert das nicht...

Sitemap-File

Code: Alles auswählen

Switch item=garage_alarm_status label="ON/OFF"
Item-File

Code: Alles auswählen

String garage_alarm_status "Alarmanlage Garage"
Rule-File

Code: Alles auswählen

rule "Tuersensor_Garage_Changed"
when
	Item garage_ks_status changed
    then 
		if(garage_ks_status.state.toString() == "false")
		{
			if (now.getHourOfDay >= 22 || now.getHourOfDay <= 6)
			{
				if(garage_alarm_status.state.toString() == "ON")
				{
					S20_Alarm.sendCommand(ON)
				}
			}
		}
end
Mir fehlt das Verständnis wie der Status in dem Item gespeichert wird und damit ich ihn in der Rule abgefragt nutzen kann.
Über eine weitere Rule sollte dann bei einem eventuellen Systemstart das Item gesetzt werden.

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

Re: Dummy Switch Item erstellen

Beitrag von udo1toni »

Wenn Du in der Sitemap einen Schalter verwenden willst, wäre es das einfachste, auch ein Switch Item dafür zu verwenden.
Item:

Code: Alles auswählen

Switch garage_alarm_status "Alarmanlage Garage"
Sitemap:

Code: Alles auswählen

Switch item=garage_alarm_status
Rule:

Code: Alles auswählen

rule "Tuersensor Garage Changed"
when
    Item garage_ks_status changed
then 
    if(garage_ks_status.state.toString == "false" && (now.getHourOfDay < 6 || now.getHourOfDay > 21) && garage_alarm_status.state == ON) 
        S20_Alarm.sendCommand(ON)
end
Ob der Zustand des Items garage_ks_status so passt, weiß ich natürlich nicht. Im Allgemeinen sollte man versuchen, Kontakte als Contact Item anzulegen. Dann sähe der korrekte Vergleich so aus:

Code: Alles auswählen

if(garage_ks_status.state == OPEN)
Zur Zeitspanne: Um 05:59:59 Uhr liefert getHourOfDay eine 5, eine Sekunde später eine 6 zurück. Um 21:59:59 gilt das entsprechende.
openHAB5.0.0 stable in einem Debian-Container (bookworm) (Proxmox 9.0.3, LXC)

mcdandrew
Beiträge: 175
Registriert: 13. Dez 2018 17:42
Answers: 0

Re: Dummy Switch Item erstellen

Beitrag von mcdandrew »

Die Defintion als Switch Item war der Schlüssel zum Erfolg...vielen Dank für die Unterstützung.

Alarmanlage ist nun aktiv...mal sehen ob ich in der Nacht aus dem Schlaf gerissen werde :lol:

Antworten