FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: sash.sc am 07 Dezember 2015, 18:04:08

Titel: (gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 07 Dezember 2015, 18:04:08
Hallo Leute.

Ich wollte zu testzwecken eine Lampe einschalten lassen, sobald ich nach Huase gekommen (Handy hat sich ins WLAN einbgewählt).
Habe es über das PRESENCE MOdul abgefragt. Wenn ich da bin, ist PRESENCE bei mir auf present bzw. da gesetzt (bedingt durch eventMap).

Habe das Problem, dass die Lampe nicht einschaltet sobald ich da bin. Wenn ich die Lampe manuell einschalte, dann funktioniert die Abschaltung, sobald ich aus dem WLAN raus bin, bzw mein Handy.
Wenn ich mich wieder ins WLAN einwähle wird auch nach 1 Minute PRESENCE auf "present" bzw "da" gesetzt.
Und dieser befehl soll zu jeder Zeit ausgeführt bzw. abgefragt werden !

Brauch makl einen Tritt in die richtige Richtung !

Hier meine Defeinitionen.

define person PRESENCE lan-ping 192.168.2.101 30 60
define LW3 DOIF ([person] eq "present") (set EG_wz_EckeLicht on) DOELSE (set EG_wz_EckeLicht off) DOIF:DOALWAYS
attr LW3 repeatcmd 1
attr LW3 room _test


Danke schonmal !

Gruß
Sascha
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: igami am 07 Dezember 2015, 18:10:10
Wie kommst du denn auf

DOIF:DOALWAYS

?
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 07 Dezember 2015, 18:57:15
Ein Kollege sagte es mir. 
Falsch?

Gesendet von meinem C6603 mit Tapatalk

Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: igami am 07 Dezember 2015, 19:33:01
Ja, du solltest die Commandref noch mal durchlesen.
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: Ellert am 07 Dezember 2015, 19:36:24
define LW3 DOIF ([person] eq "present") (set EG_wz_EckeLicht on) DOELSEIF ([person] eq "absent") (set EG_wz_EckeLicht off)


attr LW3 repeatcmd 1

Mit do always würde das DOIF jedesmal ,wenn PRESENCE pingt, triggern, auch wenn der Zustand sich nicht ändert.

Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 07 Dezember 2015, 20:07:18
Also nur Belastung des Systems!
Aber warum schaltet die Lampe nicht ein, wenn ich bzw das Handy da ist?

Gesendet von meinem C6603 mit Tapatalk

Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: Ellert am 07 Dezember 2015, 20:21:04
Glaubst Du wirklich ich kann das ohne weitere Fakten beantworten?
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 08 Dezember 2015, 09:57:04
Nachtrag :

Habe den Code nicht verändert. Kam gestern abend nach hause und die Lampe hat geschaltet. Auch die Abschaltung und wieder Einschaltung hat funktioniert.

Danke an alle

Gruß Sascha

Gesendet von meinem C6603 mit Tapatalk

Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: Amenophis86 am 08 Dezember 2015, 18:19:30
Themen Überschrift bitte entsprechend anpassen. Danke
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 10 Dezember 2015, 14:54:41
Nachtrag:

Habe mal in meinem Log File rumgestöbert, und dabei bemerkt, wenn die DOIF Funktion aktiv ist, dann wird im Sekundentakt ein Einschaltbefehl für die Lampe gesendet.
Ich hatte mich schon gewundert, da ich diese mal manuell ausschalten wollte und die sofort vom System wieder eingeschaltet wurde.

Kann mir da jemand helfen und sagen warum dass so ist ??
Notfalls abhilfe schaffen, indem nur geschaltet wird, wenn eine Änderung des Status über PRESENCE erfolgt.

Gruß
Sascha


define LW3 DOIF ([Sascha] eq "da") (set EG_wz_EckeLicht on) DOELSE (set EG_wz_EckeLicht off)
attr LW3 repeatcmd 1


Lan-ping siehe oben
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: Ellert am 10 Dezember 2015, 20:04:41
Was meinst Du mit
ZitatDOIF Funktion aktiv
?
Teilantwort weiter oben.
Diesen Hinweis beachten:http://forum.fhem.de/index.php/topic,45306.msg371122.html#msg371122 (http://forum.fhem.de/index.php/topic,45306.msg371122.html#msg371122), Logfileauszug?
Notfalls stöbere mal in der Commandref nach event-on-change-reading.
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 10 Dezember 2015, 20:07:05
Wenn ich die Funktion "initialisiert"  habe,  und nicht auf disable stehen lass.

Gesendet von meinem C6603 mit Tapatalk
Titel: Antw:(gelöst) Denkfehler / DOIF
Beitrag von: sash.sc am 11 Dezember 2015, 07:17:41
Nachtrag:

Habe das repeatcmd 1 mal gelöscht. Da hat sich die sekündliche triggerung aufgehört, und es funktioniert auch so.

Gesendet von meinem C6603 mit Tapatalk