Hallo,
Ist es möglich eine Zeit über das Web einzugeben und diese dann in einer Variablen zu speichern. Um dann zB die Rollos zur Eingegebenen Zeit hochfahren zu lassen.
Gruß
Markus
Hallo,
ja. Auch das ist möglich.
Einen dummy definieren und diesen mit setList state:time füllen.
Grüße
So was?
(siehe Anhang / see attachement)
define MeinTimer dummy
attr MeinTimer setList state:
00:00,00:10,00:20,00:30,00:40,00:50,01:00,01:10,01:20,01:30,01:40,01:50,02:00,02:10,02:20,02:30,02:40,02:50,
03:00,03:10,03:20,03:30,03:40,03:50,04:00,04:10,04:20,04:30,04:40,04:50,05:00,05:10,05:20,05:30,05:40,05:50,06:00,
06:10,06:20,06:30,06:40,06:50,07:00,07:10,07:20,07:30,07:40,07:50,08:00,08:10,08:20,08:30,08:40,08:50,09:00,09:10,
09:20,09:30,09:40,09:50,10:00,10:10,10:20,10:30,10:40,10:50,11:00,11:10,11:20,11:30,11:40,11:50,12:00,12:10,12:20,
12:30,12:40,12:50,13:00,13:10,13:20,13:30,13:40,13:50,14:00,14:10,14:20,14:30,14:40,14:50,15:00,15:10,15:20,15:30,
15:40,15:50,16:00,16:10,16:20,16:30,16:40,16:50,17:00,17:10,17:20,17:30,17:40,17:50,18:00,18:10,18:20,18:30,18:40,
18:50,19:00,19:10,19:20,19:30,19:40,19:50,20:00,20:10,20:20,20:30,20:40,20:50,21:00,21:10,21:20,21:30,21:40,21:50,
22:00,22:10,22:20,22:30,22:40,22:50,23:00,23:10,23:20,23:30,23:40,23:50
attr MeinTimer webCmd state
Oder komfortabler den timepicker verwenden, dann geht's mit Reglern statt dropdown:
define wakeupChange dummy
attr wakeupChange webCmd state
attr wakeupChange setList state:time
Gruß, Uli
Wie habt ihr das mit dem notify gelöst??
Was muss ich verwenden um stat Time die aktuelle zeit zu erhalten..
oder denke ich zu kompliziert?
define Heizung_Ein dummy
attr Heizung_Ein webCmd state
attr Heizung_Ein setList state:time
attr Heizung_Ein group Heizung
attr Heizung_Ein room System
define Heizung_Ein_Schalten notify Heizung_Ein {if (Value("Heizung_Ein") eq "Time") {fhem ("\
set Heizung on")} }
dummys wie im Beispiel oben:
define Hz.Prog.montags.start dummy
attr Hz.Prog.montags.start setList state:00:00,00:10,...,23:40,23:50
attr Hz.Prog.montags.start webCmd state
define Hz.Prog.montags.stop dummy
attr Hz.Prog.montags.stop setList state:00:00,00:10,...,23:40,23:50
attr Hz.Prog.montags.stop webCmd state
usw.
dazu gehörige ats für jeden Schaltpunkt:
define Hz.Timer01.montags.start at *05:40 {\
if($wday eq 1){\
fhem "set Heizung Tag"\
}\
}
define Hz.Timer02.montags.stop at *22:00 {\
if($wday eq 1){\
fhem "set Heizung Nacht"\
}\
}
usw.
und ein notify bei Änderung einer Schaltzeit über die dummys:
define Hz.Prog.changed notify Hz.Prog.* {\
if("@" eq "Hz.Prog.montags.start"){fhem "modify Hz.Timer01.montags.start *%"}\
elsif("@" eq "Hz.Prog.montags.stop"){fhem "modify Hz.Timer02.montags.stop *%"}\
usw.
Das Zentrale ist hier der "modify" Befehl und in % steht die im dummy ausgewählte Uhrzeit.
Achtung bei änderungen von fhem.cfg oder "shutdown restart" werden die Zeiten auf die Initialwerte gesetzt, Triggern mit global:INITIALIZED bei start funktioniert anscheinen nur wenn die Zeit über perl {} w.o. übergeben wird. direkt in Fhem mit % funktioniert nicht.
Gibt es ein notify für reload der fhem.cfg
Zitat von: Thomas81 schrieb am Di, 12 März 2013 21:50Achtung bei änderungen von fhem.cfg oder "shutdown restart" werden die Zeiten auf die Initialwerte gesetzt, ...
Du musst nach Änderungen "save" drücken, da geht nix verloren.
Danke für die Info, mir ist jetzt auch klar warum das passierte.
Naja des Komfort wegen, möchte ich mir aber das save drücken ersparen, ist ja blöd wenn man es mal vergißt,werde es mit einem notify lösen.
Zitat von: Thomas81 schrieb am Mi, 13 März 2013 18:44werde es mit einem notify lösen.
Hallo Thomas
Darf man (ich) wissen, wie du das mit einem notify gelöst hast?
Gruss
Chris
Das habe ich bei mir inzwischen auch nachgerüstet:
define HeizProg.Changed notify Heiz.Prog.* {fhem "save";}
attr HeizProg.Changed group Makros
attr HeizProg.Changed room HeizProgramm
Variante inkl. FHT Programmierung:
# auf Änderung des Wochenprogramms reagieren
# .* heißt jede Änderung erkennen, in % steht die eingestellte Uhrzeit
define HeizProg.Changed notify Heiz.Prog.* {\
if("@" eq "Heiz.Prog.montags.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat mon-from1 %";;\
fhem "set Bad.FHT.Thermostat mon-from1 %"}}\
elsif("@" eq "Heiz.Prog.dienstags.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat tue-from1 %";;\
fhem "set Bad.FHT.Thermostat tue-from1 %"}}\
elsif("@" eq "Heiz.Prog.mittwochs.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat wed-from1 %";;\
fhem "set Bad.FHT.Thermostat wed-from1 %"}}\
elsif("@" eq "Heiz.Prog.donnerstags.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat thu-from1 %";;\
fhem "set Bad.FHT.Thermostat thu-from1 %"}}\
elsif("@" eq "Heiz.Prog.freitags.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat fri-from1 %";;\
fhem "set Bad.FHT.Thermostat fri-from1 %"}}\
elsif("@" eq "Heiz.Prog.samstags.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat sat-from1 %";;\
fhem "set Bad.FHT.Thermostat sat-from1 %"}}\
elsif("@" eq "Heiz.Prog.sonntags.start"){\
if(Value("HeizProg.FHTs.programmieren") eq "an"){\
fhem "set Kueche.FHT.Thermostat sun-from1 %";;\
fhem "set Bad.FHT.Thermostat sun-from1 %"}}\
fhem "save";;}\
}
attr HeizProg.Changed group Makros
attr HeizProg.Changed room HeizProgramm
Zitat von: UliM schrieb am So, 10 März 2013 15:41Oder komfortabler den timepicker verwenden, dann geht's mit Reglern statt dropdown:
define wakeupChange dummy
attr wakeupChange webCmd state
attr wakeupChange setList state:time
Gruß, Uli
Mal ne Frage:
Gibt es den "timepicker" auch für ein Datum, welches sich so auswählen läßt?
Hallo,
versuch mal
Zitatstate:date
Ist jetzt aber nur ins Blaue geraten.
Grüße
Zitat von: Puschel74 schrieb am Sa, 29 Juni 2013 09:42Hallo,
versuch mal
Zitatstate:date
Ist jetzt aber nur ins Blaue geraten.
Grüße
Gute Idee, funktioniert aber nicht.
Noch jemand eine Idee?
Hallo,
ZitatGute Idee, funktioniert aber nicht.
Mist, wär ja zu schön gewesen.
Sorry.
Grüße