FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: michaelapp am 04 Mai 2017, 23:22:01

Titel: Doif / Web
Beitrag von: michaelapp am 04 Mai 2017, 23:22:01
Hallo zusammen,

in meinen Doif habe ich feste Zeitangaben hinterlegt:

## Rollladen soll zum Sonnuntergang runtergefahren werden wenn die Türe geschlossen ist
DOELSEIF ([{sunset (0,"20:00","21:00")}] and [?KT_EG_FLUR_TUE] eq "closed" and [?RL_EG_FLUR_TUE] eq "up")
    (set RL_EG_FLUR_TUE down)


Die Änderung kann ich somit nur direkt im Code durchführen.

Ich möchte jetzt aber die Zeit via Web UI einstellen. Es langt auch eine genaue Zeit einzustellen z.b. 20:30 ohne den Zeitraum.

Gibt es die Möglichkeit das umzusetzen?

Gruß
Michael
Titel: Antw:Doif / Web
Beitrag von: Per am 04 Mai 2017, 23:31:14
Ja, zumindest über einen kleinen Umweg (da du ja nicht die Zeit direkt abfragst, das würde DOIF inzwischen selbst können). Du kannst die Zeit(en) in Dummies speichern und diese im Frontend setzen.
Titel: Antw:Doif / Web
Beitrag von: Ellert am 05 Mai 2017, 08:24:23
Wie Du Zeiten im DOIF über FHEMWEB setzen kannst, ist hier beschrieben:

https://wiki.fhem.de/wiki/DOIF/Ein-_und_Ausgabe_in_FHEMWEB_und_Tablet-UI_am_Beispiel_einer_Schaltuhr

Indirekte Zeitangaben funktionieren auch in "sunset" usw. Etwa so [{sunset (0,"[<Reading im DOIF Beginn>]","[<Reading im DOIF Ende>]")}]

Zeitspanne [[<Reading im DOIF Beginn>]]-[<Reading im DOIF Ende>]]]

Weitere Beispiele https://wiki.fhem.de/wiki/DOIF/Labor_-_ausf%C3%BChrbare,_praxisnahe_Beispiele_als_Probleml%C3%B6sung_zum_Experimentieren
Titel: Antw:Doif / Web
Beitrag von: Muschelpuster am 05 Mai 2017, 08:40:56
Das was Ellert geschrieben hat, wollte ich auch schreiben, nur war er schneller. Also hier mal ein Beispiel (für den Import über RAW-Definition) für das direkte Schalten von Zeiten ohne Dummy's. Ich kann nicht sehen, warum das nicht auch in obigem DOIF eingebaut werden kann:
defmod di_demo_Zeitschaltuhr DOIF ([[$SELF:P_mybegin,"08:00"]])\
   (einschalten)\
DOELSEIF ([[$SELF:P_myend,"20:00"]])\
   (ausschalten)
attr di_demo_Zeitschaltuhr alias Schaltuhr Demo
attr di_demo_Zeitschaltuhr devStateIcon disabl.*:general_aus_fuer_zeit:enable initi.*|cmd.*:general_an_fuer_zeit:disable .*rro.*:icoTool
attr di_demo_Zeitschaltuhr readingList P_mybegin P_myend
attr di_demo_Zeitschaltuhr room DOIF_Labor
attr di_demo_Zeitschaltuhr setList P_mybegin:time P_myend:time
attr di_demo_Zeitschaltuhr webCmd P_mybegin:P_myend

setstate di_demo_Zeitschaltuhr 2017-05-01 00:05:01 P_mybegin 08:15
setstate di_demo_Zeitschaltuhr 2017-05-01 00:05:01 P_myend 19:20
setstate di_demo_Zeitschaltuhr 2017-05-01 00:05:01 mode enable


exemplarische Grüße
Niels