Hallo zusammen,
ich haben den folgenden Dummy definiert, welche ich mit einem und demselben Taster des HM-PB-6-WM55 on bzw. off schalten möchte:
define Garten_Partymodus dummy
attr Garten_Partymodus room Alles,Garten
attr Garten_Partymodus setList on off
attr Garten_Partymodus webCmd on:off
notify:
define 6fach_btn04_s1 notify EZ_6fach_btn_04_Partymodus {if (ReadingsVal("Garten_Partymodus","state","off")) {fhem ("set Garten_Partymodus on");;}else {if (ReadingsVal("Garten_Partymodus","state","on")) {fhem ("set Garten_Partymodus off");;}}}
Interessanterweise klappt das on-Schalten, nur das off-Schalten nicht.
Im Log ist nur das on-Schalten erkennbar, egal aus welchem Status:
2013.10.14 22:24:54 5: Triggering EZ_6fach_btn_04_Partymodus (2 changes)
2013.10.14 22:24:54 5: Notify loop for EZ_6fach_btn_04_Partymodus Short (to broadcast)
2013.10.14 22:24:54 5: Triggering 6fach_btn04_s1
2013.10.14 22:24:54 5: Cmd: >{if (ReadingsVal("Garten_Partymodus","state","off")) {fhem ("set Garten_Partymodus on");}else {if (ReadingsVal("Garten_Partymodus","state","on")) {fhem ("set Garten_Partymodus off");}}}<
2013.10.14 22:24:54 5: Cmd: >set Garten_Partymodus on<
2013.10.14 22:24:54 4: dummy set Garten_Partymodus on
Weiss jemand Rat?
VG
Manuel
ungetestet:
define 6fach_btn04_s1 notify EZ_6fach_btn_04_Partymodus { my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ; fhem ("set Garten_Partymodus $s");}
Zitat von: betateilchen am 14 Oktober 2013, 22:47:26
ungetestet:
define 6fach_btn04_s1 notify EZ_6fach_btn_04_Partymodus { my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ; fhem ("set Garten_Partymodus $s");}
Ergebnis:
Unknown command fhem, try help. Unknown command }, try help.
Danke für die Hilfe, vielleicht bekommen wir es ja noch hin.
define 6fach_btn04_s1 notify EZ_6fach_btn_04_Partymodus { my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ; fhem("set Garten_Partymodus $s") }
funktioniert bei mir.
Zitat von: betateilchen am 14 Oktober 2013, 23:14:52
define 6fach_btn04_s1 notify EZ_6fach_btn_04_Partymodus { my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ; fhem("set Garten_Partymodus $s") }
funktioniert bei mir.
Wenn ich das zu Speichern versuche kommt bei mir:
Unknown command fhem("set, try help.
Wieso läuft das denn bei Dir ??? :o
Im Argument von notify (und at,watchdog,etc) muss man ; mit ;; schuetzen,
ES SEI DENN man verwendet das FHEMWEB-Frontend Detail-Ansicht der notify (auf DEF clicken).
Achtung, das gilt NICHT fuer Edit files -> fhem.cfg, da braucht man ;;
Also Folgendes wird nun ausgeführt, aber 2x:
define 6fach_btn04_s1 notify EZ_6fach_btn_04_Partymodus { my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ;; fhem('set Garten_Partymodus $s') }
2013.10.15 17:25:11 5: Cmd: >{ my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ; fhem('set Garten_Partymodus $s') }<
2013.10.15 17:25:11 5: Cmd: >set Garten_Partymodus on<
2013.10.15 17:25:11 4: dummy set Garten_Partymodus on
2013.10.15 17:25:11 5: Triggering 6fach_btn04_s1
2013.10.15 17:25:11 5: Cmd: >{ my $s = (Value('Garten_Partymodus') eq 'on') ? 'off' : 'on' ; fhem('set Garten_Partymodus $s') }<
2013.10.15 17:25:11 5: Cmd: >set Garten_Partymodus off<
2013.10.15 17:25:11 4: dummy set Garten_Partymodus off
2013.10.15 17:25:11 5: Triggering EZ_6fach (2 changes)
das doppelte Ausführen ist normal, das kommt daher, dass dein regex im Notify viel zu unsepzifisch ist. Du musst dort noch angeben, auf welchen Event das notify wirklich reagieren soll.
Zitat von: betateilchen am 15 Oktober 2013, 19:37:11
das doppelte Ausführen ist normal, das kommt daher, dass dein regex im Notify viel zu unsepzifisch ist. Du musst dort noch angeben, auf welchen Event das notify wirklich reagieren soll.
Da brauche ich leider noch einmal Eure Hilfe. Wie stelle ich es in diesem Notify an, dass der Dummy-Wert von on auf off und andersherum nur einmal gesetzt wird??
Vielleicht stehe ich nur auf dem Schlauch. Vielen Dank vorab!
Hi, ich stehe vor dem gleichen Problem.
Ich habe schon versucht den Ausdruck auf den "Short"-Befehl einzugrenzen, aber nun schaltet er gar nicht mehr.
Ich habe bereits den Tip aus einem anderen Beitrag (http://forum.fhem.de/index.php/topic,14428.msg91574.html#msg91574) benutzt, aber mit "notify wz_Wandschalter_Btn_03:Short.* set ..." bekomme ich gar keine Reaktion mehr.
Wie müsste der Asdruck für
wz_Wandschalter_Btn_03 Short (to HMLAN1)
aussehen?
Ok ich kann es mir auch nicht richtig erklären, aber es funktioniert nun mit dem Befehl
wz_Wandschalter_Btn_03:Short.*