Pushmeldung bei unauthorisierter Türöffnung wenn zwei iPhones BT abwesend sind

Begonnen von maraka, 20 Februar 2017, 13:16:05

Vorheriges Thema - Nächstes Thema

maraka

Hallo,

kann mir vielleicht jemand bei folgendem Code helfen? Bekomme keine Pushmeldung, Watchdog löst nach 3min aus und in fhem sieht es aus als wenn alles funktioniert, kommt nur keine Pushmeldung.

#Abwesenheit
#Otto1 definieren
define Otto1 dummy
attr Otto1 eventMap 1
attr Otto1 room Haus
define FileLog_Otto1 FileLog ./log/Otto1-%Y-%m.log Otto1
attr FileLog_Otto1 logtype text

#Otto1 auf on setzen bei Anwesenheit
define Otto1On notify Otto1Bluetooth:present { fhem ("set Otto1 on;; setstate watchdogOtto1Abwesend defined") if (Value("Otto1") ne "on") }

#Otto1 auf off setzen nach 3 Min Abwesenheit
define watchdogOtto1BluetoothAbwesend watchdog Otto1Bluetooth:absent 00:03 Otto1Bluetooth:present set Otto1 off
attr watchdogOtto1BluetoothAbwesend regexp1WontReactivate 1
attr watchdogOtto1BluetoothAbwesend room Haus

#Otto2 definieren
define Otto2 dummy
attr Otto2 eventMap 1
attr Otto2 room Haus
define FileLog_Otto2 FileLog ./log/Otto2-%Y-%m.log Otto2
attr FileLog_Otto2 logtype text

#Otto2 auf on setzen bei Anwesenheit
define Otto2On notify Otto2Bluetooth:present { fhem ("set Otto2 on;; setstate watchdogOtto2BluetoothAbwesend defined") if (Value("Otto2") ne "on") }

#Otto2 auf off setzen nach 3 Min Abwesenheit
define watchdogOtto2BluetoothAbwesend watchdog Otto2Bluetooth:absent 00:03:10 Otto2Bluetooth:present set Otto2 off
attr watchdogOtto2BluetoothAbwesend regexp1WontReactivate 1
attr watchdogOtto2BluetoothAbwesend room Haus

#FL.UnautorisierteTueroeffnung definieren
define FL.UnautorisierteTueroeffnung dummy
attr FL.UnautorisierteTueroeffnung room Haus

#FL.UnautorisierteTueroeffnung definieren
define FL.UnautorisierteTueroeffnungAn notify FL.Fensterkontakt1:open.* { fhem ("set FL.UnautorisierteTueroeffnung on") if (Value("Otto1") eq "off" && Value("Otto2") eq "off")}
define FL.UnautorisierteTueroeffnungAus notify FL.Fensterkontakt1:open.* { fhem ("set FL.UnautorisierteTueroeffnung off") if (Value("Otto1") eq "on" || Value("Otto2") eq "on")}


#Pushover Notification bei unautorisierter Türöffnung
define Otto1BluetoothStatusPushover notify Otto1:(on|off) { system ("curl -s -F 'token=xxxxxxxxxxxxxxxxxxx' -F 'user=xxxxxxxxxxxxxxxxxxx' -F 'message=Unautorisierte Türöffnung' https://api.pushover.net/1/messages.json")}

#Pushover Notification bei unautorisierter Türöffnung
define Otto2BluetoothStatusPushover notify Otto2:(on|off) { system ("curl -s -F 'token=xxxxxxxxxxxxxxxxx' -F 'user=xxxxxxxxxxxxxxxxxxx' -F 'message=Unautorisierte Türöffnung' https://api.pushover.net/1/messages.json")}

Otto123

Moin,
da mein Name bei Dir Programm ist, will ich es mal versuchen  8)
Als erstes brauchst Du beim Posten Codetags, sonst wird keiner Lust haben den Code zu lesen. Die findest Du über dem  :-X die # Taste.

Also Zweites nimmst Du die Zeile:
{ system ("curl -s -F 'token=xxxxxxxxxxxxxxxxxxx' -F 'user=xxxxxxxxxxxxxxxxxxx' -F 'message=Unautorisierte Türöffnung' https://api.pushover.net/1/messages.json")}
und wirfst sie oben in die FHEM Kommandzeile. Ich denke das funktioniert nicht.

Der Rest deines notify sieht eigentlich gut aus. Zusätzlich kannst Du, um sicher zu sein das Dein notify triggert, den Ausführungsteil durch { Log 1, "Hello" }ersetzen.
Du  müsstet dann einen Eintrag im Log haben.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

KernSani

Zitat von: maraka am 20 Februar 2017, 13:16:05
define Otto1BluetoothStatusPushover notify Otto1:(on|off) { system ("curl -s -F 'token=xxxxxxxxxxxxxxxxxxx' -F 'user=xxxxxxxxxxxxxxxxxxx' -F 'message=Unautorisierte Türöffnung' https://api.pushover.net/1/messages.json")}

Neben dem, was Otto123 bereits gesagt hat... Warum verwendest du nicht eines der vorgefertigten Module für push messages, das macht es an vielen Stellen einfacher und übersichtlicher...
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

maraka

Zitat von: Otto123 am 23 Februar 2017, 09:14:55
Moin,
da mein Name bei Dir Programm ist, will ich es mal versuchen  8)
Als erstes brauchst Du beim Posten Codetags, sonst wird keiner Lust haben den Code zu lesen. Die findest Du über dem  :-X die # Taste.

Also Zweites nimmst Du die Zeile:
{ system ("curl -s -F 'token=xxxxxxxxxxxxxxxxxxx' -F 'user=xxxxxxxxxxxxxxxxxxx' -F 'message=Unautorisierte Türöffnung' https://api.pushover.net/1/messages.json")}
und wirfst sie oben in die FHEM Kommandzeile. Ich denke das funktioniert nicht.

Der Rest deines notify sieht eigentlich gut aus. Zusätzlich kannst Du, um sicher zu sein das Dein notify triggert, den Ausführungsteil durch { Log 1, "Hello" }ersetzen.
Du  müsstet dann einen Eintrag im Log haben.

Gruß Otto

Vielen Dank. Ich bin noch absoluter Einsteiger. Habe diesen Code in meintechblog.de gefunden.
Mit einem Smartphone klappt das auch ganz gut, nur mit dem zweiten zusammen nicht mehr.
Weil ich nun mal Einsteiger bin, kann ich mit deiner Antwort nicht so richtig was anfangen, sorry.
Würde mich freuen, wenn du das anhand meines Codes mal schreiben könntest.
Danke

CoolTux

Zitat von: maraka am 23 Februar 2017, 11:33:24
Vielen Dank. Ich bin noch absoluter Einsteiger. Habe diesen Code in meintechblog.de gefunden.
Mit einem Smartphone klappt das auch ganz gut, nur mit dem zweiten zusammen nicht mehr.
Weil ich nun mal Einsteiger bin, kann ich mit deiner Antwort nicht so richtig was anfangen, sorry.
Würde mich freuen, wenn du das anhand meines Codes mal schreiben könntest.
Danke

Dieser Blog gehört verboten und geschlossen. Der ganze alte Shit stimmt vorne und hinten nicht.
Für Pushover gibt es ein wunderbares Modul. Bitte verwende das, dann gibt es auch keine Probleme mit irgendwelchen zusammen geschusterten Codeteilen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

maraka

Zitat von: CoolTux am 23 Februar 2017, 11:42:40
Dieser Blog gehört verboten und geschlossen. Der ganze alte Shit stimmt vorne und hinten nicht.
Für Pushover gibt es ein wunderbares Modul. Bitte verwende das, dann gibt es auch keine Probleme mit irgendwelchen zusammen geschusterten Codeteilen.

dann eben nicht!!

Benni

Zitat von: maraka am 23 Februar 2017, 11:57:26
dann eben nicht!!

:o kannst ja mal beim blog-Betreiber nach support fragen

Für alles was du machen möchtest gibt es inzwischen längst geeignete FHEM-Module:

PRESENCE
ROOMMATE und RESIDENTS
PUSHOVER


Cobra

Ich würde hier generell auf Module setzen und nicht auf Dummys, so kannst du dir einiges an Code sparen:
Presence-Modul für die Anwesenheitserkennung
Pushover-Modul für den Versand der Nachrichten

Somit fallen die Dummy und die Watchdogs weg und du hast deinen Code mindestens halbiert.
RaspberryPI 3 mit Raspbian Jessie, HMLAN/HM-LAN-Gateway
Diverse HM-Komponenten, Netatmo, Hue, Sonos, Nuki, Alexa

KernSani

RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

maraka

Zitat von: Benni am 23 Februar 2017, 12:00:18
:o kannst ja mal beim blog-Betreiber nach support fragen

Für alles was du machen möchtest gibt es inzwischen längst geeignete FHEM-Module:

PRESENCE
ROOMMATE und RESIDENTS
PUSHOVER


...da hast du recht, Support ist so gut wie gar nichts.
Mit den Modulen bin ich leider als blutiger Anfänger total überfordert. :'(
Aber trotzdem Danke.

CoolTux

Fang einfach klein an.
Was du möchtest ist das zwei Handys erkannt werden wenn sie zu Hause sind. Korrekt? Das ganze anscheinend über Bluetooth. Also schaust Du Dir den Wikiartikel über Bluetooth Anwesenheitskontrolle an versucht das mit dem presence Modul erstmal um zu setzen. Also nur das erstmal erkannt wird ob oder ob nicht in Reichweite.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Otto123

Hallo Maraka,

was war denn jetzt an meiner Antwort so schwer?  :-[
Die erste Frage war ob Deine Message wirklich geht? Also Du solltest Deinen Ausführungsteil vom notify in die FHEM Kommandozeile kopieren und enter drücken.
Du kannst auch erstmal klein probieren mit { Log 1, "Hello" } Dann öffnest Du dein logfile und solltest einen Eintrag sehen.

Ich denke Dein notify funktioniert,, aber auch das kannst Du ohne Nachricht testen:

define Otto1BluetoothStatusPushover notify Otto1:(on|off) { Log 1, "Hello" }


Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

maraka

Zitat von: CoolTux am 23 Februar 2017, 13:31:15
Fang einfach klein an.
Was du möchtest ist das zwei Handys erkannt werden wenn sie zu Hause sind. Korrekt? Das ganze anscheinend über Bluetooth. Also schaust Du Dir den Wikiartikel über Bluetooth Anwesenheitskontrolle an versucht das mit dem presence Modul erstmal um zu setzen. Also nur das erstmal erkannt wird ob oder ob nicht in Reichweite.


Das funktioniert gut, ANWESEND und ABWESEND.
Wenn jetzt beide Handys abwesend sind, und die Haustür geöffnet wird zB.gewaltsam, möchte ich auf meinem Smartphone die entsprechende Meldung bekommen. Sobald ein Handy oder beide Handys  anwesend ist, keine Meldung bei Türöffnung.

Otto123

Zitat von: maraka am 23 Februar 2017, 14:51:58

Das funktioniert gut, ANWESEND und ABWESEND.
Wenn jetzt beide Handys abwesend sind, und die Haustür geöffnet wird zB.gewaltsam, möchte ich auf meinem Smartphone die entsprechende Meldung bekommen. Sobald ein Handy oder beide Handys  anwesend ist, keine Meldung bei Türöffnung.
Ich finde auch, Dein Code erscheint umständlich, aber die Dinge die funktionieren sind doch auch gut so. Kannst Du später immer schöner machen.
Konzentriere Dich auf das was nicht geht und ermittle warum.

Nochmal die Frage: Funktioniert die Nachricht auf der FHEM Kommandozeile?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

CoolTux

Zitat von: maraka am 23 Februar 2017, 14:51:58

Das funktioniert gut, ANWESEND und ABWESEND.
Wenn jetzt beide Handys abwesend sind, und die Haustür geöffnet wird zB.gewaltsam, möchte ich auf meinem Smartphone die entsprechende Meldung bekommen. Sobald ein Handy oder beide Handys  anwesend ist, keine Meldung bei Türöffnung.

@Otto
Ich glaube wir haben da jetzt einen anderen Weg genommen denke ich.

@Maraka
Wie weit sind wir denn jetzt genau? Hast du erstmal nur die beiden presences und willst jetzt weiter machen mit dem was du oben beschrieben hast?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net