FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: heikoh81 am 15 März 2016, 19:20:06

Titel: DOIF: Auslösen entweder zu Zeitpunkt oder durch Trigger in Zeitraum
Beitrag von: heikoh81 am 15 März 2016, 19:20:06
Hallo zusammen,

wenn mein TV eingeschaltet wird (presence-Funktion), soll ein Aktor eingeschaltet werden, aber nur, wenn ein bestimmter Zeitpunkt erreicht ist (sprich Dämmerung).
Tagsüber brauche ich die Akzentbeleuchtung nicht.

Andererseits kann es aber auch vorkommen, dass der Fernseher schon nachmittags an ist und der Dämmerungszeitpunkt erreicht wird.
Dann soll de Aktor durch das Eintreten der Uhrzeit getriggert werden.

Ich hatte zuerst folgendes DOIF, was aber nicht funktioniert hat (attr do always).

(
([{sunset_abs(-3000,"16:00:43","22:30:43")}-23:59:00] and [TVWohnzimmer] eq "present")
and [?TVWohnzimmerSteuertVitrine] eq "on"
)
(set NAME=PollinWohnzimmerVitrine:FILTER=STATE=off on)
DOELSEIF ([TVWohnzimmer:"absent"] and [?TVWohnzimmerSteuertVitrine] eq "on")
(set NAME=PollinWohnzimmerVitrine:FILTER=STATE=on off)
DOELSE ()



Erst dieses DOIF hat die gewünschte Wirkung.

(
([{sunset_abs(-3000,"16:00:43","22:30:43")}-23:59:00] and [?TVWohnzimmer] eq "present")
or ([?{sunset_abs(-3000,"16:00:43","22:30:43")}-23:59:00] and [TVWohnzimmer] eq "present")
and [?TVWohnzimmerSteuertVitrine] eq "on"
)
(set NAME=PollinWohnzimmerVitrine:FILTER=STATE=off on)
DOELSEIF ([TVWohnzimmer:"absent"] and [?TVWohnzimmerSteuertVitrine] eq "on")
(set NAME=PollinWohnzimmerVitrine:FILTER=STATE=on off)
DOELSE ()



Geht es auch irgendwie einfacher?
Viele Grüße,
Heiko
Titel: Antw:DOIF: Auslösen entweder zu Zeitpunkt oder durch Trigger in Zeitraum
Beitrag von: Sirel am 15 März 2016, 20:02:06
Hallo Heiko,

Dein erstes Beispiel war schon gut, glaube nur ein paar Klammern zu viel. Probier mal so:

([{sunset_abs(-3000,"16:00:43","22:30:43")}-23:59:00] and [TVWohnzimmer] eq "present" and [?TVWohnzimmerSteuertVitrine] eq "on") (set...)

Do always brauchst Du bei diesem Ansatz nicht.

Zum ausschalten passt der rest Deines Codes...

Viele Grüße,
Max
Titel: Antw:DOIF: Auslösen entweder zu Zeitpunkt oder durch Trigger in Zeitraum
Beitrag von: heikoh81 am 15 März 2016, 21:09:47
Danke, werde ich probieren.