mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-19 18:56:03 +00:00
98_DOIF.pm: Doku zu indirekten Zeitangaben angepasst
git-svn-id: https://svn.fhem.de/fhem/trunk@8177 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
a81e5f4198
commit
5c1ad8e961
@ -1276,17 +1276,18 @@ Schalten mit Zeitfunktionen, hier: bei Sonnenaufgang und Sonnenuntergang:<br>
|
|||||||
<br>
|
<br>
|
||||||
<code>define di_light DOIF ([{sunrise_abs()}-{sunset(1800,"17:00","21:00")}])(set outdoorlight off) DOELSE (set outdoorlight on)</code><br>
|
<code>define di_light DOIF ([{sunrise_abs()}-{sunset(1800,"17:00","21:00")}])(set outdoorlight off) DOELSE (set outdoorlight on)</code><br>
|
||||||
<br>
|
<br>
|
||||||
<b>Schalten mit indirekten Zeitangaben</b><br>
|
<b>Indirekten Zeitangaben</b><br>
|
||||||
<br>
|
<br>
|
||||||
Statt fester Zeitangaben können auch Stati, Readings oder Internals angegeben werden. Diese müssen eine Zeitangabe im Format HH:MM oder HH:MM:SS beinhalten.<br>
|
Oft möchte man keine festen Zeiten im Modul angeben, sondern Zeiten, die man z. B. über Dummys über die Weboberfläche verändern kann.
|
||||||
|
Statt fester Zeitangaben können Stati, Readings oder Internals angegeben werden. Diese müssen eine Zeitangabe im Format HH:MM oder HH:MM:SS beinhalten.<br>
|
||||||
<br>
|
<br>
|
||||||
<u>Anwendungsbeispiel</u><br>
|
<u>Anwendungsbeispiel</u>: Lampe soll zu einer bestimmten Zeit eingeschaltet werden. Die Zeit soll über den Dummy <code>time</code> einstellbar sein:<br>
|
||||||
<br>
|
<br>
|
||||||
<code>define time dummy<br>
|
<code>define time dummy<br>
|
||||||
set time 08:00<br>
|
set time 08:00<br>
|
||||||
define di_time DOIF ([[time]])(set lamp on)</code><br>
|
define di_time DOIF ([[time]])(set lamp on)</code><br>
|
||||||
<br>
|
<br>
|
||||||
oder Angaben mit Zeitintervallen<br>
|
Ebenfalls funktionieren indirekte Zeitangaben mit Zeitintervallen. Hier wird die Ein- und Ausschaltzeit jeweils über einen Dummy bestimmt:<br>
|
||||||
<br>
|
<br>
|
||||||
<code>define begin dummy<br>
|
<code>define begin dummy<br>
|
||||||
set begin 08:00<br>
|
set begin 08:00<br>
|
||||||
@ -1294,13 +1295,23 @@ set begin 08:00<br>
|
|||||||
define end dummy<br>
|
define end dummy<br>
|
||||||
set end 10:00<br>
|
set end 10:00<br>
|
||||||
<br>
|
<br>
|
||||||
define di_time DOIF ([[begin]-[end]])(set radio on) DOELSE (set radio off)</code><br>
|
define di_time DOIF ([[begin]-[end]]) (set radio on) DOELSE (set radio off)</code><br>
|
||||||
<br>
|
<br>
|
||||||
Bei einer Änderung des angebenen Status oder Readings wird die geänderte Zeit sofort im Modul aktualisiert.<br>
|
Bei einer Änderung des angebenen Status oder Readings wird die geänderte Zeit sofort im Modul aktualisiert.<br>
|
||||||
<br>
|
<br>
|
||||||
Die Endzeit soll abhängig von der Beginnzeit mit Hilfe einer eignen Perl-Funktion, hier: <code>OffTime()</code>, bestimmt werden. <code>begin</code> und <code>end</code> sind Dummys, wie oben definiert:<br>
|
Angabe eines Readings als Zeitangabe. Beispiel: Schalten anhand eines Twilight-Readings:<br>
|
||||||
<br>
|
<br>
|
||||||
<code>define di_time DOIF ([[begin]-[end]]) (set lamp on, set end_time {(OffTime("[begin]"))}) DOELSE (set lamp off)</code><br>
|
<code>define di_time DOIF ([[myTwilight:ss_weather]])(set lamp on)</code><br>
|
||||||
|
<br>
|
||||||
|
Dynamische Änderung einer Zeitangabe.<br>
|
||||||
|
<br>
|
||||||
|
<u>Anwendungsbeispiel</u>: Die Endzeit soll abhängig von der Beginnzeit mit Hilfe einer eigenen Perl-Funktion, hier: <code>OffTime()</code>, bestimmt werden. <code>begin</code> und <code>end</code> sind Dummys, wie oben definiert:<br>
|
||||||
|
<br>
|
||||||
|
<code>define di_time DOIF ([[begin]-[end]]) (set lamp on, set end {(OffTime("[begin]"))}) DOELSE (set lamp off)</code><br>
|
||||||
|
<br>
|
||||||
|
Indirekte Zeitangaben lassen sich mit Wochentagangaben kombinieren, z. B.:<br>
|
||||||
|
<br>
|
||||||
|
<code>define di_time DOIF ([[begin]-[end]|7]) (set radio on) DOELSE (set radio off)</code><br>
|
||||||
<br>
|
<br>
|
||||||
<b>Kombination von Ereignis- und Zeitsteuerung mit logischen Abfragen</b><br>
|
<b>Kombination von Ereignis- und Zeitsteuerung mit logischen Abfragen</b><br>
|
||||||
<br>
|
<br>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user