Ich habe ein Problem, ich will bei einem Schalter (RPI_GPIO) ein Licht für 2 Minuten anmachen. Wenn der Schalter aber 3 Sekunden gedrückt wird (longpress) soll das Licht erst nach 15 Minuten abschalten. Das klingt einfach ich bekomm es aber nicht hin, weil der press das Licht immer nach 2 Minuten abschaltet und der Longpress nichts mehr nutzt, weil es schon lange aus ist.
Meine Konfiguration:
define n_Tuer_Schalter notify Tuer_Schalter:on {fhem("set Pin21_Licht_EG on-for-timer 120");;}
define n_Tuer_Schalter_longpress notify Tuer_Schalter:Longpress:on {fhem("set Pin21_Licht_EG on-for-timer 900");;}
Vielen Dank für die Lösung
Hi,
Ich habe mit kurz Tasten eine Zeitsteuerung, mit Longpress wird es zum Dauerlicht.
2 dummys und 5 notifys. Ist nicht ganz was Du suchst, aber vielleicht kannst es dir ableiten. funktioniert einwandfrei.
define Li_Einfahrt_Zeit dummy
attr Li_Einfahrt_Zeit webCmd on:off
define Li_Einfahrt_Dauer dummy
attr Li_Einfahrt_Dauer webCmd on:off
define Licht12_Einfahrt_GPIO_in notify GPIO_IN_27:on {Log 1,$EVENT;;;;{if (Value("Li_Einfahrt_Zeit") eq "on") {fhem ("set Li_Einfahrt_Zeit off")}else {fhem ("set Li_Einfahrt_Zeit on")}};;;;}
define Licht12_Einfahrt_GPIO_out notify Li_Einfahrt_Zeit set OUT_2 PortA7 $EVENT
define Licht12_Einfahrt_Longpress notify GPIO_IN_27:Longpress:.*on {Log 1,$EVENT;;fhem("delete a_tmp_Li_Einfahrt_Zeit");;}
define Licht12_Einfahrt_Toggle notify Li_Einfahrt_Dauer:on.* \
{if (Value("OUT2_A7") eq "on") {fhem ("set OUT_2 PortA7 off")}\
else {fhem ("set OUT_2 PortA7 on")}}
define Licht12_Einfahrt_Zeit notify Li_Einfahrt_Zeit:on {if(OldValue('Li_Einfahrt_Zeit') eq 'off'){fhem("set Li_Einfahrt_Zeit on");;fhem("define a_tmp_Li_Einfahrt_Zeit at +00:03:00 set Li_Einfahrt_Zeit off");;}elsif(OldValue('Li_Einfahrt_Zeit') eq 'on'){fhem("set Li_Einfahrt_Zeit off");;}}