DOIF Heizungsteuerung & Residents

Begonnen von PetA1990, 02 April 2018, 13:54:14

Vorheriges Thema - Nächstes Thema

PetA1990

Hallo zusammen,

ich hänge schon seit einiger zeit an einem DOIF Problem fest, ich denk es ist nur eine Kleinigkeit, aber ich komme einfach nicht drauf.
1. Habe Residents eingerichtet, das funktioniert auch alles
2. wollte ich per DOIF anhand der Residents Bewohner Status meine Heizung steuern
habe Pro Raum ein DOIF angelegt, hier z.B. vom Wohnzimmer:

([rgr_Bewohner:"^zuhause$"])
(set WZ_HZ1_Clima controlManu 20.0,set WZ_HZ2_Clima controlManu 20.0)
DOELSEIF ([rgr_Bewohner:"^bettfertig$"])
(set WZ_HZ1_Clima controlManu 17.0,set WZ_HZ2_Clima controlManu 17.0)
DOELSEIF ([rgr_Bewohner:"^schläft$"])
(set WZ_HZ1_Clima controlManu 16.0,set WZ_HZ2_Clima controlManu 16.0)
DOELSEIF ([rgr_Bewohner:"^aufgestanden"])
(set WZ_HZ1_Clima controlManu 20.0,set WZ_HZ2_Clima controlManu 20.0)
DOELSEIF ([rgr_Bewohner:"^abwesend$"])
(set WZ_HZ1_Clima controlManu 17.set WZ_HZ2_Clima controlManu 17.0)
DOELSEIF ([rgr_Bewohner:"^verreist$"])
(set WZ_HZ1_Clima controlManu off,set WZ_HZ2_Clima controlManu off)
DOELSE
(set WZ_HZ1_Clima controlManu off,set WZ_HZ2_Clima controlManu off)


So jetzt zu meinem Problem:
Wenn ich den Status auf zuhause setzte zeigt das DOIF cmd1 an, was ja auch richtig ist, aber nach kurzer Zeit Springt es auf cmd 7 und zwar immer wenn das Reading (Residents) durTimerPresence ein update macht, ich habe bereits checkReadingEvent auf 1 gesetzt leider bringt das auch nichts, komme im Moment einfach nicht weiter.

Danke für eure Hilfe und schöne Ostern noch.

Damian

Mit dieser Syntax: ([rgr_Bewohner:"^bettfertig$"]) wird das DOIF getriggert wenn irgendetwas von rgr_Bewohner kommt und wenn es nicht "bettfertig" ist, dann bleibt nur noch DOELSE übrig.

Du hast zwei Möglichkeiten

1. auf DOELSE zu verzichten, bzw. diesen Fall als DOELSEIF zu definieren
2. Die Abfragen abzuändern auf z. B. hier  (["^rgr_Bewohner$:^bettfertig$"]) so wird das DOIF-Modul nur noch getriggert, wenn genau dieses EVENT kommt.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

PetA1990

Super danke, habe es mit Vorschlag 2 gelöst und jetzt funktioniert es.