FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: tagedieb am 30 November 2016, 18:08:38

Titel: "schweres" DOIF - bekomme es einfach nicht hin - bitte um Hilfe
Beitrag von: tagedieb am 30 November 2016, 18:08:38
Hallo zusammen
trotz commandref beispiele und anderer funktionierender DOIF - bekomme ich das nicht hin  :-[
Vielleicht sehen viele Augen mehr als meine?
ich möchte folgendes:
wenn der Schlüssel nicht am Schlüsselbrett hängt, die Tür geschlossen ist, das Schloss jedoch offen, soll das Schloss schliessen
IST der Schlüssel am Schlüsselbrett und das Schloss zu, möchte es in der Zeit  6.30 - 21.30 Mo-Freitag sich öffnen, an den Wochenenden und Feiertagen eine Stunde später, ansonsten soll es geschlossen sein
Kontaktsensor = Schlüsselbrett
Sensor Haustür= Kontakt an der Tür
Schloss = HM Key (alles Homematik und alles mit HMLAN gepairt)
FHEM aktuelles update

[Kontaktsensor] eq "abwesend" and [Sensor_Haustuer] eq "geschlossen" and [Schloss] eq "unlocked")(set Schloss lock)
DOELSEIF
([06:30-21:30|12345] and [Kontaktsensor] eq "anwesend" and [Sensor_Haustuer] eq "geschlossen" and [Schloss] ne "unlocked")(set Schloss unlock)
DOELSEIF
([07:30-21:30|7] and [Kontaktsensor] eq "anwesend" and [Sensor_Haustuer] eq "geschlossen" and [Schloss] ne "unlocked")(set Schloss unlock)
DOELSE
(set Schloss lock)


ziehe ich den Schlüssel vom Schlüsselbrett, verschliesst das Schloss - stecke ich den Schlüssel wieder an das Brett und öffne das Schloss, schliesst es beim erneuten abziehen des Schlüssels NICHT wieder , auch schliesst es nicht nocheinmal, wenn kein Schlüssel am Brett hängt und die Tür kurz von aussen geöffnet wurde

was habe ich hier falsch gemacht?Kann mir bitte jemand helfen?
Danke im voraus
gruss tagedieb
Titel: Antw:"schweres" DOIF - bekomme es einfach nicht hin - bitte um Hilfe
Beitrag von: l2r am 30 November 2016, 18:38:00
DOIF funktioniert grundsätzlich so, dass ein Befehl nur 1 Mal ausgeführt wird. Findet nach dem Befehl ein Zustandswechsel statt, also wird ein DOELSEIF-Zweig ausgeführt, dann kann anschließend wieder der erste Zweig (cmd_1) ausgeführt werden.

Durch setzen von attr do always werden die Zweige immer wieder ausgeführt. Macht bei dir ja auch sind, da du den Status vom Schloss abfragst.

Eine beliebte Kleinigkeit, die vielen, gerade am Anfang, nicht bewusst ist ;)

Gruß Michael
Titel: Antw:"schweres" DOIF - bekomme es einfach nicht hin - bitte um Hilfe
Beitrag von: tagedieb am 30 November 2016, 19:27:25
Hallo Michael


Dankeschön - das war es!!
Jetzt funktioniert es wie gewünscht

Ich wünsche noch einen schönen Abend
gruss Annette