Hallo,
ich möchte in einer Lighscene gerne für eine Lampe eine Verzögerung zum Ausschalten einbauen.
Anbei ein Screenshot mit der Frage ob das so geht?
Grüße
Dirk
So geht es nicht!!!
Das Attribut async_delay ist dafür da.
Bitte in die commandref schauen.
Gruß
Dan
Die commandref ist immer meine erste Adresse. Das async_delay habe ich so verstanden, dass es für die ganze scene gilt. Ist das nicht so?
Grüße Dirk
Zitat von: Dersch am 01 August 2016, 15:52:52
Die commandref ist immer meine erste Adresse. Das async_delay habe ich so verstanden, dass es für die ganze scene gilt. Ist das nicht so?
Grüße Dirk
Genau, das ist das Delay zwischen dem Schalten von mehreren Devices.
Ein sleep lässt sich nicht in das set von LightScene einbauen soweit ich weiß.
Du könntest aber die Lampe einfach rauslassen aus deiner LightScene und dann ein Notify auf die LightScene setzen, welches beim Aktivieren einer bestimmten Szene dann verzögert (sleep) eben diese Lampe einschaltet.
Gruß
Dan
Hi Dan,
ja das hatte ich mir auch überlegt das Device einfach separat zu behandeln. Hatte nur gehofft das bequemer innerhalb der Scene zu definieren.
Danke für deine Hilfe :)
Grüße
Dirk
Zitat von: Dersch am 01 August 2016, 16:09:55
Hi Dan,
ja das hatte ich mir auch überlegt das Device einfach separat zu behandeln. Hatte nur gehofft das bequemer innerhalb der Scene zu definieren.
Danke für deine Hilfe :)
Grüße
Dirk
Als ich vor 6 Monaten mit FHEM angefing dachte ich: dass wird schon alles irgendwie gehen mit "Bordmitteln". Ist ja auch so, wenn man Perl auch als "Bordmittel"betrachtet.
Mittlerweile habe ich selbst Perl erlernt (in Grundzügen) und mache alles was so nicht von Hause aus funktioniert in meiner 99_MyUtils.pm . Und was soll ich sagen, dann ist eigentlich alles möglich! ;)
Viel Spaß beim Basteln.
Gruß
Dan
Was Du noch probieren könntest (ungetestet), ob Du im set der LightScene ein "on-for-timer" setzen kannst (falls das WzSofaLicht kann).
Dann statt "sleep 80;; off" einfach "on-for-timer 80".
Teste es einfach mal.
Gruß
Dan
Habe es gerade mal getestet und es funktioniert.
Gruß
Dan
schau dir setcmd in der LightScene an. das ist dazu da um statt dem set beliebige kommandos und kommando folgen auszuführen. in der commandref ist dazu auch genau so ein sleep beispiel.
du kannst es auch in der command spalte auswählen.
asyncdelay verzöget alle kommandos in dem es nach jedem beteiligten device eine verzôgerung einbaut. das ist dazu da wenn die kommandos zu schnell kommen und z.b. die funkstrecke zu machen.
gruss
andre
Danke für die Erläuterung Andre.
Hatte zwar setcmd schon gesehen, aber nie probiert bzw. nachgelesen wie es funktioniert.
Es gibt also doch "eine Lösung" für alles.
Gruß
Dan
klar gibt es die :)
gruss
andre
Hallo, ja super setcmd ist dann genau das was ich brauche und habe es in der commandref wohl komplett ignoriert. Schande über mich :)
Danke und Grüße
Dirk
Dann war mein Beispiel oben ja doch fast richtig. ;) hatte nir das setcmd überlesen.
Habe es noch nicht ausprobieren können aber so sollte es doch passen oder?
setcmd sleep 80 ;; set WzSofaLicht off
Grüße
Dirk
Genau so sollte es funktionieren.
Gruß
Dan
Ich habe es nun endlich mal ausprobieren können und es funktioniert leider nicht.
Ich habe es dann aber nochmal über einen Befehl gemacht "set WzHeimkinoLicht setcmd 3DModus WzSofaLicht sleep 30 ;; set WzSofaLicht off"
Nun geht es aber im der Zeile steht nun der Befehl mit nur einem ; Das sollte eventuell in der Commandref oder im Wiki erwähnt werden.
Jedenfalls super!!! Es geht um macht LightScene noch viel flexibler!! :D
Ähhhmmm, das muss aber dem Licht in der LightScene zugeordnet werden und nicht dem Licht selbst.
Gruß
Dan
EDIT: Dateianhang entfernt.
Ja klar. Das habe ich. Siehe screenshot mein post davor. Nur ein ; muss weniger drin sein.
Zitat von: Dersch am 05 August 2016, 23:58:06
Nur ein ; muss weniger drin sein.
Recht Du hast... ;)
Hab's gerade mal selbst getestet.
@Andre: Das solltest Du ändern in der Doku.
Gruß
Dan