DOIF: Unterscheidung von Event=Trigger=Bedingung und reiner Bedingung

Begonnen von RaspiCOC, 23 Juni 2016, 15:09:17

Vorheriges Thema - Nächstes Thema

RaspiCOC

Hallo zusammen,

gibt es eine Möglichkeit im Bedingungsteil eine DOIF nach einem Event=Trigger des DOIF=1. Bedingung und einer reinen Bedingung zu unterscheiden?

Beispiel:


define tuewas DOIF ([Bedingung1_istTrigger_istBedingung] eq "on" and [reineBedingung] eq "off") (set ...) ...


Ziel soll es sein, dass eine Veränderung des State von [reineBedingung] den DOIF selbst nicht triggert, aber dennoch als Bedingung ausgewertet wird.

Hintergrund ist, dass ich den Fernsehkonsum der Kinder mittels Funksteckdose und IT-Fernbedienung unter Kontrolle halten möchte. Der Strom für die Glotze soll automatisch ab 20:00 Uhr angehen (kein Problem) aber vor 17:00 Uhr soll die IT-Fernbedienung auch nicht verwendet werden können, es sei denn der Fernbedienung_ist_freigeschaltet Dummy [reineBedingung] steht auf "on", was wiederum zeitgesteuert aber auch manuell geschehen soll.  Da daneben noch weitere Dummys zum Einsatz kommen (Urlaubsschaltung etc.) hat mein DOIF bereits 9 CMDs. Schaltet man Fernbedienung_ist_freigeschaltet manuell auf "on" wird auch immer der DOIF tuewas getriggert, was zu unerwünschten Effekten führt und nur durch umso komplexere DOELSEIF Bedingungen (wenn überhaupt) abgefangen werden kann.

Ideal wäre also die Möglichkeit den oder die Trigger des DOIF vorzugeben, also:


define tuewas DOIF ([Trigger1], [Trigger2], [...]) ([Bedingung1] and [Bedingung2]) (set ...) ...


Das könnte so funktionieren, dass hinter dem DOIF zwei oder drei Sätze an () kommen können. Sind es zwei, dann verhält sich alles wie bisher. Sind es drei, dann werden nur die in der ersten Klammer aufgenommenen Devices als Trigger benutzt.

Wie findet Ihr das?

Irgendwie hoffe ich aber, dass sowas schon geht, ich es nur noch nicht gecheckt habe....

Viele Grüße

RaspiCOC


Ellert

Im Inhaltsverzeichnis des DOIF der deutschsprachigen Befehlsreferenz wird auf einen Abschnitt verwiesen, der Deine Frage beantwortet  ;)

http://fhem.de/commandref_DE.html#DOIF_Zeitintervalle_Readings_und_Stati_ohne_Trigger

RaspiCOC

 :-[ Ihr seid sooooooo gut! Da wurde wirklich an alles Gedacht! Ich liebe DOIF!

Vielen Dank!