Hallo zusammen,
ich würde gerne meinen at define um eine Bedingung zu erweitern. Wahrscheinlich kann man das Ganze auch direkt in ein DOIF packen aber weiß leider nicht wie:
define Rolllade_Tuer_Abends at *{twilight("LichtWetter","ss_civil","18:00","23:00")} {DOIF ([Handy1] eq "off" and [Handy2] eq "off") {fhem("set R_Tuer off")}}
Soll bewirken, dass falls niemand da ist zu der Zeit, wo die Rollladen normal runter gefahren werden, auch R_Tuer runtergefrahren wird.
Danke für Eure Hilfe
DOIF ist kein Befehl, sondern es wird als Gerät definiert, wie es schon aus der Einleitung (http://fhem.de/commandref_DE.html#DOIF) hervorsticht ;)
define Rolllade_Tuer_Abends DOIF ([{twilight("LichtWetter","ss_civil","18:00","23:00")}] and [Handy1] eq "off" and [Handy2] eq "off") (set R_Tuer off)
Verdammt! Ich wusste doch, dass das so nicht klappt irgendwie.
Ist es nicht ressourcenschonender dann eine if bedingung zu nehmen in dem at Befehl?
Das kannst Du mit apptime (http://fhem.de/commandref_DE.html#apptime)ermitteln und das Ergebnis posten.
Zitat von: cdn am 26 Oktober 2016, 20:12:28
Verdammt! Ich wusste doch, dass das so nicht klappt irgendwie.
Ist es nicht ressourcenschonender dann eine if bedingung zu nehmen in dem at Befehl?
Nein. DOIF und at benutzen die gleichen Timermechanismen. Die Bedingungen von DOIF sind bereits bei der Definition in Perl übersetzt worden, siehe list <dein DOIF-Modul>
Gruß
Damian
Ich danke Euch!