Hi,
ich habe ein kleines notify Verständnis-Problem ::)
Ich möchte mein Garagentor überwachen und eine Push-Warnung versenden,
wenn es offen steht und kein Handy über BT erkannt wird.
Dafür habe ich folgende dummy Variablen mit folgenden Zuständen:
- Garage_Tor_Status (auf/mitte/zu)
- presence_iPhone_Marcel (absent/present)
folgendes notify habe ich erstellt:
Zitatdefine GarageToristoffenPush notify presence_iPhone_Marcel:absent { if (Value("Garage_Tor_Status") ne "zu") {system('sudo /usr/local/bin/./prowl.sh Achtung_die_Garage_ist_nicht_verschlossen_!!!');;}}
Das funktioniert, wenn ich das Garagentor offen habe und BT abschalte / mich aus dem BT-Bereich entferne, sehr gut.
Dann erhalte ich sofort eine Pushmeldung.
Wenn ich aber das Garagentor mit abgeschalteten Bluetooth, vom geschlossennen Zustand öffne,
erhalte ich keine Push-Nachricht.
Sind die 2 Bedingungen nicht mit "Und" verknüpft?
Funktioniert das nur in eine Richtung?
Gruß
Marcel
Hallo,
so wie es bei notify üblich ist wird es nur getriggert wenn das regexp ausgelöst - in deinem Fall wenn du absent gehst.
Sonst macht das notify nichts.
Grüße
Edith: Aber wie schon beschrieben
http://forum.fhem.de/index.php/topic,16311.0.html (http://forum.fhem.de/index.php/topic,16311.0.html)
lässt auch du uns ein Stück im Dunkeln tappen weil du deine Presencedefinition als streng geheim einstufst und wir daher die Attribute nicht zu sehen bekommen - vermutlich hast du dort ein event-on-change-reading gesetzt sonst würdest du jedesmal eine Nachricht bekommen solange die tür nicht zu ist.
In Zukunft, bei solchen Fragen, wäre es sehr nett von dir wenn du uns hilfst dir zu helfen und ALLE benötigten Definitionen die zu deinem Code gehören postest - siehe verlinkter Beitrag.
Edith2: Ich hab dir hier was rausgesucht: http://fhem.de/commandref_DE.html#notify (http://fhem.de/commandref_DE.html#notify) aber die commandref als Anlaufstelle kennst du sicher schon und hast dir das dort sicher bereits durchgelesen.
Hi,
Zitatweil du deine Presencedefinition als streng geheim einstufst
Nix geheim,ich wollte nur nicht meine ganze fhem.cfg posten.
Zitatdefine presence_iPhone_Marcel PRESENCE local-bluetooth XX:XX:XX:XX:XX:XX 10 60
attr presence_iPhone_Marcel alias Marcel iPhone
attr presence_iPhone_Marcel devStateIcon present:it_smartphone_M@green absent:it_smartphone_M@red
attr presence_iPhone_Marcel event-on-change-reading state
attr presence_iPhone_Marcel fm_type presence-icon
define <name> notify <Suchmuster> <Anweisung>
Also triggert notify immer nur das Suchmuster?
Die Bedingung im Perl-Code, wird nach dem Trigger abgefragt?
Also müsste ich mir für den Fall "Das Tor wird geöffnet in Abwesendheit" ein zweites notify bauen?
Hier dann als Suchmuster der Torstatus und in der Perlanweisung eine Abfrage, ob jemand Zuhause ist?
Gruß
Marcel
Vielleicht mal ein Alternativvorschlag...
Du könntest das notify "umdrehen"; also auf das Öffnen des Garagentores reagieren, auf Deine Anwesenheit prüfen, und dann jeweils reagieren!?
Evtl. ein 2. notify wenn Du gehst, dass eine Mitteilung schickt, wenn bestimmte Sachen noch offen sind.
Hallo,
du sollst auch nicht deine gesamte konfig posten - aber der relevante teil wäre durchaus lesenswert ;)
ZitatAlso triggert notify immer nur das Suchmuster?
Nein.
Das notify wurde DURCH das Suchmuster getriggert.
Du musst dir aber kein zweites notify bauen - du kannst das Suchmuster auf mehrere Geräte und ihre Events erweitern:
(EG_Terrasse|Wetterstation_Eingang):temperature.* {
Hier habe ich 2 Geräte die als Event (Reading) temperature haben - egal welches von beiden auslöst wird das notify getriggert.
Das lässt sich so
(EG_Terrasse|Wetterstation_Eingang):(temperature|temp).*
erweitern sollte eines der beiden Geräte als Event nur temp liefern.
Grüße
Zitat von: mcbo am 02 Oktober 2014, 22:14:40
Hi,
ich habe ein kleines notify Verständnis-Problem ::)
Ich möchte mein Garagentor überwachen und eine Push-Warnung versenden,
wenn es offen steht und kein Handy über BT erkannt wird.
Dafür habe ich folgende dummy Variablen mit folgenden Zuständen:
- Garage_Tor_Status (auf/mitte/zu)
- presence_iPhone_Marcel (absent/present)
folgendes notify habe ich erstellt:
Das funktioniert, wenn ich das Garagentor offen habe und BT abschalte / mich aus dem BT-Bereich entferne, sehr gut.
Dann erhalte ich sofort eine Pushmeldung.
Wenn ich aber das Garagentor mit abgeschalteten Bluetooth, vom geschlossennen Zustand öffne,
erhalte ich keine Push-Nachricht.
Sind die 2 Bedingungen nicht mit "Und" verknüpft?
Funktioniert das nur in eine Richtung?
Gruß
Marcel
Probier mal:
define di_GarageToristoffenPush DOIF ([Garage_Tor_Status] ne "zu" and [presence_iPhone_Marcel] eq "absent")
({system('sudo /usr/local/bin/./prowl.sh Achtung_die_Garage_ist_nicht_verschlossen_!!!')})
Hier wird beides funktionieren, egal in welcher Reihenfolge die Zustände wechseln.
Gruß
Damian
@Damian
Funktioniert mit dem DOIF !!!
Super Modul !!!
Sent from my iPhone using Tapatalk
Hallo,
dann auch hier bitte - dem Titel ein Gelöst vorne dran damit die nächsten sehen das es hier eine Lösung zu finden gibt.
Ganz elegant wäre es wenn, wie im angepinnte Beitrag beschrieben, die Lösung auch im ersten Post eingetragen werden würde.
Danke.
Grüße
P.S.: Alle sagen sie haben den angepinnten Beitrag gelesen aber anscheinend hat ihn niemand verstanden :o