Moin Forum,
define garage_hoch notify Garagentor:POWER:.ON {if ( Value("Garagentor_Sensor") eq "Open") { GetHttpFile("192.168.9.84", "/win&T=1")} ;; { GetHttpFile("192.168.9.84", "/win&PL=1")} ;; sleep 12 ;; { GetHttpFile("192.168.9.84", "/win&PL=2")} ;; sleep 3 ;;;{ GetHttpFile("192.168.9.84", "/win&PL=3")} ;; sleep 60 ;; { GetHttpFile("192.168.9.84", "/win&T=0")}}
Ich weiß, nach dem Sleep soll ein FHEM Befehl folgen, sonst friert FHEM ein, aber ist denn "{ GetHttpFile("192.168.9.84", "/win&T=0")}" kein FHEM Befehl.
Das o. g. notify soll nach dem Garagentor:POWER:.ON gemeldet wurde mehrere Webaufrufe (WLED auf Wemos D1 Mini) ausführen.
Dabei wird ein LED Stripe am Garagentor in verschieden Farben/Mustern eingeschaltet.
Wenn das Tor ganz oben ist, sollen alle LEDs für 60 weiß leuchten.
Dabei wird aber durch das "sleep 60" FHEM blockiert.
Was mache ich falsch? Ich hatte es schon so versucht:
......;; sleep 60 ;; { GetHttpFile("192.168.9.84", "/win&T=0")} ;; sleep 1}
Also am Ende noch ein sleep 1.
Funktioniert aber auch nicht.
Jemand einen Tipp für mich?
LG
Markus
Würde ich mit einem DOIF und Attribut "wait" lösen.
Mit der ersten geschweiften Klammer ...{if ... eröffnest du die Perl-Ebene, damit ist dein sleep ein Perl-sleep, welches blockiert.
Du hast hinter dem sleep 3 drei ;;;, also sleep 3 ;;;, das würde ich mal geradeziehen.
@Damian: Das war das Problem, kaum macht man's richtig, klappt es auch. Danke!
@Jamo: Danke, ich habe aufgeräumt.
@Adimarantis: Jetzt wo es funktioniert, nicht mehr nötig, aber Danke für den Tipp.
LG @all
Markus