Problem Abwesenheit wird doppelt ausgelöst ?

Begonnen von ChrisW, 25 Januar 2013, 10:08:52

Vorheriges Thema - Nächstes Thema

ChrisW

Hallo,
habe da ein Problem. Mein Abwesenheits System über wacht Chris und Tanja Und schaltet somit "Einer"  

Einer bedeutet:
Einer = ON = Einer von beiden oder ALLE da
Einer = OFF = Keiner von beiden zuhause.

Nun habe ich das Problem überall wo ich Einer überwache wird das ganze Doppelt ausgelöst.
Tanja = off danach
Einer = off
Aber wieso  läuft das alles doppelt ? Innerhalb einer Minute kann ich Einer auch nicht verändern..  Einer Log sagt auch nur das es von ON zu OFF gegangen ist !!
2013-01-25_08:03:24 Anwesenheit_Einer on
2013-01-25_09:38:40 Anwesenheit_Einer off


Hier der Code von Einer:

# Anwesenheit Einer
define Anwesenheit_Einer dummy
attr Anwesenheit_Einer loglevel 6
attr Anwesenheit_Einer room Anwesenheit
attr Anwesenheit_Einer setList on off

define Anwesenheit_Einer_FileLog FileLog ./log/Anwesenheit_Einer.log Anwesenheit_Einer
attr Anwesenheit_Einer_FileLog logtype text
attr Anwesenheit_Einer_FileLog room Logfiles

define Anwesenheit_Einer_setzen notify Anwesenheit_.*:.* { \
if ((Value("Anwesenheit_Chris") eq "on") || (Value("Anwesenheit_Tanja") eq "on")) { \
fhem ("set Anwesenheit_Einer on");; \
} \
if ((Value("Anwesenheit_Chris") eq "off") && (Value("Anwesenheit_Tanja") eq "off")) { \
fhem ("set Anwesenheit_Einer off");;\
}\
}


Und um diese 2 Codes geht es
Heizung Auto / Eco:

define Heizung_AutoEco notify Anwesenheit.*:.* { \
if (Value("Anwesenheit_Einer") eq "on") { \
fhem ("set Heizung desiredTemperature auto");; \
Log (3,"Setze Heizung Auto");; \
} \
else { \
fhem ("set Heizung desiredTemperature eco");; \
Log (3,"Setze Heizung Eco");;\
}\
}




HTPC ausmachen:

define HTPC_AUS_ABWESEND notify Anwesenheit.*:.* { \
if (Value("Anwesenheit_Einer") eq "on") { \
} \
else { \
    fhem (GetHttpFile("192.168.2.3:81", "/API/shutdown request"));;\
Log (3,"HTPC Ausgeschaltet weil keiner da");;\
}\
}



Ich weiss das es wohl an : define HTPC_AUS_ABWESEND notify Anwesenheit.*:.* { \ liegt.
Wie kann ich das so verändern das er wirklich nur auf Anwesenheit_Einer on oder off reagiert ? Damit wäre das dadrunter ja auch hinfällig ??

Vielleicht kann mit jemand helfen die 2 Codes zu Bereinigen ;) DANKE
Raspberry PI3 mit allem möglichen.

ChrisW

define Heizung_AutoEco notify Anwesenheit.*:.* { \
in
define Heizung_AutoEco notify Anwesenheit_Einer.*:.* { \

löst zwar das Problem aber ist irgendwie unsauber oder ?
Raspberry PI3 mit allem möglichen.

ChrisW

Sry meine :
define Heizung_AutoEco notify Anwesenheit_Einer:.* { \
Raspberry PI3 mit allem möglichen.