FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Heimbastler am 01 März 2020, 15:50:59

Titel: DOIF - Zustand über devices steuern
Beitrag von: Heimbastler am 01 März 2020, 15:50:59
Hi Leute,


ich habe ein DOIF in dem 2 Lampen gesteuert werden sollen. Leider ist mir nicht klar wie ich den Status des reading mybutton bzw. eigentlich nur die Anzeige dazu an- und ausschalten kann.
Wenn eine von den 2 Lampen an ist soll der Schalter auf "on" springen damit man die Lampe oder die Lampen wieder ausschalten kann.

Geht bestimmt mit alten Mittelchen...bin aber leider echt lange schon draußen gewesen wieder...und ich weiß nicht wo ich ansetzen soll.
Hier mein DOIF:

defmod LightAll DOIF ## cmd1 - wenn mybutton gedrückt wird und beide Lampen aus sind dann schalte die 2 Lampen an\
## [?R10] das <?> bedeutet: device wird nur abgefragt, triggert den cmd nicht\
(["$SELF:mybutton: on"])  ##and ([?R10] and [?R11] eq "off")\
   (\
   set R11 on,\
   set R10 on\
   )\
\
## cmd2 - wenn mybutton gedrückt wird dann Schalte alle Lampen aus\
DOELSEIF (["SELF:mybutton: off"])  ##and ([?R10] or [?R11] eq "on")\
   (\
   set R07 off,\
   set R08 off,\
   set R09 off,\
   set R10 off,\
   set R11 off,\
   set R13 off,\
   set ELRO_1011010111_F off\
   )\
\
## cmd3 - Rückgabe von den Lampen\
DOELSEIF ([R10] eq "on")\
   (\
   setreading LightAll mybutton on\
   )\
\

attr LightAll cmdState on|off
attr LightAll devStateIcon off:rc_STOP:on on:rc_YELLOW:off
attr LightAll readingList mybutton
attr LightAll room Entwicklung
attr LightAll setList mybutton:on,off
attr LightAll webCmd mybutton

setstate LightAll initialized
setstate LightAll 2020-03-01 14:51:16 cmd 0
setstate LightAll 2020-03-01 14:51:16 mode enabled
setstate LightAll 2020-03-01 14:49:46 mybutton off
setstate LightAll 2020-03-01 14:51:16 state initialized


Das cmd3 beisst sich natürlich mit den anderen irgendwie. Lege ich cmd3 lahm gehen die anderen Beiden. Nur halt wenn per FHEM die Schalter separat geschaltet werden kriegt das dieses DOIF nicht mit bzw zeigt den Zustand falsch an.
Jede Idee ist willkommen..

Danke
Alex