Hallo,
Ich habe ein elektrisches Keymatic Schloss und überall Sensoren am Fenster.
Ich habe für alle Fenster zusammen eine Gruppe gebildet und eingestellt das die Gruppe nur open oder closed kann. Wenn alle Fenster geschlossen sind, wird sauber closed angezeigt. Sollte nun nur ein Fenster der Gruppe geöffnet sein, erscheint sofort closed.
Nun möchte ich gerne erreichen das wenn mein Türschloss geschlossen wird (ich also in der Regel außer Haus gehe), überprüft wird, ob alle Fenster geschlossen sind und ich eine Pushnachricht auf das Handy bekomme. Sollte noch ein Fenster offen sein, dann soll auch eine Nachricht kommen, mit einem anderen Text.
Ich hoffe folgende Code ausgeführt:
define status_msg_fenster DOIF
([keymatic_wohnung] eq "locked" and [fenster_alle] eq "closed") (set pushmsg msg 'Alle Fenster sind geschlossen.') DOELSE ([keymatic_wohnung] eq "locked" and [fenster_alle] eq "open") (set pushmsg msg 'Ein Fenster ist noch geöffnet.')
Wenn ich nun das Schloss verriegeln lasse und alle Fenster geschlossen sind, kommt die richtige Nachricht. Sowie ich aber auf den Knopf "unlock" gehe und mein Schloss wieder öffnet, kommt die Nachricht das noch ein Fenster geöffnet ist. Ist ja totaler quatsch.
Hab ich mein Befehl falsch aufgebaut ?
Ich weiß auch noch nicht, ob ich grundsätzlich richtig an die Sache dran gegangen bin. Ich möchte ja später auch erfahren, welches Fenster noch geöffnet ist. Damit ich nicht erst suchen muss.
Grüße,
Visionsurfer
Du benutzt DOELSE mit einer Bedingung, das ist nicht vorgesehen, nimm DOELSEIF.
Hi,
Danke. Ja so funktioniert es. Der lustige Nebeneffekt ist, das wenn ich dann das Fenster schließe, sofort eine neue Pushnachricht kommt, alle Fenster sind geschlossen.
Keine Ahnung. Eventuell lag es auch dran, weil der Status vielleicht noch nicht schnell genug aktualisiert war. Ich habe eine Nachricht bekommen, das ein Fenster noch offen ist. Dann hab ich es geschlossen und sofort kam eine zweite Nachricht das alle Fenster geschlossen sind.
Grüße,
Visionsurfer
Versuchs mal so:
define status_msg_fenster DOIF
([keymatic_wohnung] eq "locked" and [?fenster_alle] eq "closed") (set pushmsg msg 'Alle Fenster sind geschlossen.') DOELSEIF ([keymatic_wohnung] eq "locked" and [?fenster_alle] eq "open") (set pushmsg msg 'Ein Fenster ist noch geöffnet.')
Und ließ dir mal die commandref zu DOIF durch... ;)
Hi,
ok. Danke. Probiere ich.
Was genau hat es mit den ? vor dem ..fenster genau zu tun ? Also was bewirken die ?
Grüße,
Visionsurfer
ZitatUnd ließ dir mal die commandref zu DOIF durch... ;)
Dieses reading bzw device triggert dann NICHT das DOIF.
Heisst, bei dir wird das DOIF nur durch die Tür ausgelöst, aber beim auslösen werden die Fenster beachtet.