FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: SamNitro am 11 Mai 2024, 22:52:22

Titel: [Erledigt] DOIF mit SELF und and Verknüpfung wird Ignoriert
Beitrag von: SamNitro am 11 Mai 2024, 22:52:22
Hallo habe hier ein $SELF DOIF, aber der Sensor wird ignoriert,

defmod DOIF_DLD_Tuer_aufschliessen_abschliessen DOIF ([$SELF:AUF]) \
(set dummy2 on)\
DOELSEIF\
([$SELF:ZU] and [Sensor_Tuer_Terrasse] eq "open")\
(set dummy2 off)
attr DOIF_DLD_Tuer_aufschliessen_abschliessen cmdState AUF|ZU
attr DOIF_DLD_Tuer_aufschliessen_abschliessen do always
attr DOIF_DLD_Tuer_aufschliessen_abschliessen setList AUF ZU
attr DOIF_DLD_Tuer_aufschliessen_abschliessen webCmd AUF:ZU

Es wird einfach geschaltet egal welchen Status der Sensor hat.
Geht das nicht oder habe ich einen Fehler in meinem DOIF?
Gruß Patrick
Titel: Aw: DOIF mit SELF und and Verknüpfung wird Ignoriert
Beitrag von: Per am 12 Mai 2024, 08:26:20
Wenn du mit Set schaltest, werden die Bedingungen ignoriert.
Mehr kann ich aus dem Konstrukt nicht herauslesen.
Titel: Aw: DOIF mit SELF und and Verknüpfung wird Ignoriert
Beitrag von: Damian am 12 Mai 2024, 11:23:57
Mit [$SELF:AUF] reagierst du auf das Reading namens "AUF" egal was da drin steht.

Wenn du auf das Ereignis "AUF" reagieren willst, dann muss du es in Anführungszeichen angeben: [$SELF:"AUF"]
Titel: Aw: DOIF mit SELF und and Verknüpfung wird Ignoriert
Beitrag von: SamNitro am 12 Mai 2024, 12:08:25
Hey, aber trotzdem scheint es mir so das der Türssensor ignoriert wird, er schaltet egal welcher Zustand der Sensor hat. Meine Heizung wird auch von dem Sensor gesteuert. aber halt nicht mit einem $SELF Befehl.

Alternativ habe ich einen Dummy als trigger benutzt, damit geht es natürlich, aber ich wollte mir den dummy sparen :)
Titel: Aw: DOIF mit SELF und and Verknüpfung wird Ignoriert
Beitrag von: Damian am 12 Mai 2024, 12:35:01
Durch deine Definition wird bei AUF set cmd_1 ausgeführt und bei ZU set cmd_2 ohne die Bedingung auszuwerten

Du kannst statt über einen Dummy über ein Reading gehen:

defmod DOIF_DLD_Tuer_aufschliessen_abschliessen DOIF ([$SELF:button] eq "AUF") \
(set dummy2 on)\
DOELSEIF\
([$SELF:button] eq "ZU" and [Sensor_Tuer_Terrasse] eq "open")\
(set dummy2 off)
attr DOIF_DLD_Tuer_aufschliessen_abschliessen cmdState AUF|ZU
attr DOIF_DLD_Tuer_aufschliessen_abschliessen do always
attr DOIF_DLD_Tuer_aufschliessen_abschliessen readingList button
attr DOIF_DLD_Tuer_aufschliessen_abschliessen setList button:AUF,ZU
attr DOIF_DLD_Tuer_aufschliessen_abschliessen webCmd button
Titel: Aw: DOIF mit SELF und and Verknüpfung wird Ignoriert
Beitrag von: SamNitro am 12 Mai 2024, 13:16:41
Perfekt Damian, danke für deine tolle Arbeit :) So funktioniert es.