Gebäudeüberwachung mit Presence

Begonnen von Automatik-Willi, 13 Juli 2015, 11:43:41

Vorheriges Thema - Nächstes Thema

Automatik-Willi

Hallo zusammen,
ich beschäftige mich seit gestern mit fhem und möchte zunächst einmal prüfen, ob ich überhaupt da bin :-)
Eine Mail von der Commandline wird versendet, ich bekomme es aber nicht hin daß ich eine Statusmail bekomme. Bei jeder Änderung soll eine Mail versendet werden. Hier mein Code

define HandyStatus PRESENCE function {RemoteFritzBoxWeb("11:22:33:66:DB:3D")} 60 60
define Handy dummy
attr Handy setList anwesend abwesend
define HandyHome notify HandyStatus:1 set Handy anwesend;;{ DebianMail('<name@vodafone.de>','Info vom FHEM System','Handy anwesend');;}
define HandyAway notify HandyStatus:0 set Handy abwesend;;{ DebianMail('<name@vodafone.de>','Info vom FHEM System','Handy abwesend');;}


Hat jemand eine Ahnung warum nichts passiert oder so etwas schon realisiert ?

danke Gruß Willi

Hollo

Ohne Dir zu nahe treten zu wollen...
- hast Du das Einsteiger.pdf gelesen?
- hast Du die entsprechenden Wiki-Beiträge gelesen?
- hast Du mal ein bisschen im Forum gestöbert?

Von Deinem Code her würde ich von NEIN ausgehen.

Es bringt nichts, wenn Du sofort einen neuen Beitrag startest.
Zu diesem Thema gibt es schon reichlich Beiträge mit unterschiedlichen Varianten.

Presence-Konfiguration checken, DebianMail-Konfiguration checken, wozu der zusätzliche Dummy;
die Antwort auf Deine Frage steht in Deinem LOG...
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

Automatik-Willi

So etwas in der Art war mir irgendwie klar,
Zitat- hast Du das Einsteiger.pdf gelesen?
JA
Zitat- hast Du die entsprechenden Wiki-Beiträge gelesen?
JA
Zitat- hast Du mal ein bisschen im Forum gestöbert?
AUCH JA

Es fehlt anscheinend eine Anleitung für Dummies.

Danke

marvin78

Die Anleitung für Dummys ist das Einsteiger-PDF. Falls das zu hoch für dich sein sollte, wie deine Aussage nahe legt, dann hast du ein Problem, das wir nicht lösen können.

Warum schaust du nicht einmal in dein Log? Dort solltest du sehen, welchen Fehler du gemacht hast. Das wäre auch eine gute Übung zur Fehlernalyse.

Du hast auch die hilfreichen Beiträge für Anfänger hier im Forum nicht gelesen, sonst wüsstest du, dass man nichts damit anfangen kann, wenn jemand schreibst "es geht nicht". Uns fehlen die Informationen, was genau nicht geht!?

Automatik-Willi

Dummerweise steht in meinem Log nicht daß KEINE Mail versendet wurde. Das bringt mich jetzt also nicht weiter.
Also nochmal von vorn:
Wenn ich das hier in die fhem.cfg schreibe, dann erkennt fhem ob mein Handy eingebucht ist oder nicht.

define HandyStatus PRESENCE function {RemoteFritzBoxWeb("11:22:33:66:DB:3D")} 120 120
define Handy dummy
attr Handy setList anwesend abwesend
define HandyHome notify HandyStatus:1 set Handy anwesend
define HandyAway notify HandyStatus:0 set Handy abwesend


Sobald das notify eine Mail versenden soll, wird diese aber nicht gesendet und es wird  kein Event mehr angezeigt ob Handy an-/abwesend.

define HandyStatus PRESENCE function {RemoteFritzBoxWeb("11:22:33:66:DB:3D")} 120 120
define Handy dummy
attr Handy setList anwesend abwesend
define HandyHome notify HandyStatus:1 set Handy anwesend;;{ DebianMail('<name@vodafone.de>','Info vom FHEM System','Handy anwesend');;}
define HandyAway notify HandyStatus:0 set Handy abwesend;;{ DebianMail('<name@vodafone.de>','Info vom FHEM System','Handy abwesend');;}



JoWiemann

Hallo,

Du solltest schon etwas im Log finden. Bei der E-Mail-Adresse musst Du das @ maskieren. Also empfaenger@@name.domain

Siehe auch: http://www.fhemwiki.de/wiki/E-Mail_senden#Raspberry_Pi

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

marvin78

Und du willst es partout nicht alleine herausfinden?

Dein Ausführungscode ist übrigens nicht wirklich falsch.

Deine Email sollte aber vermutlich nicht <name@vodafone.de>, sondern name@vodafone.de sein. Ich weiß aber leider nicht, wie deine DebianMail-Funktion aussieht.

BTW: Das mit dem Maskieren ist nicht nötig, wenn du einen entsprechenden featurelevel von FHEM verwendest.

Automatik-Willi

Marvin, was denkst du was ich den ganzen Tag mache ?  >:( :( :o ::)

In meinem Log sehe ich NIX - NICHTS - NOTHING was Mail betrifft, ich versteh es nicht

CoolTux

Versuche mal von hinten das ganze zu prüfen.
Funktioniert Dein DebianMailsystem den generell. Kannst Du eine Mail auf der Konsole versenden und sie kommt auch da an wo sie soll?
Wenn das geht.

{ DebianMail('<name@vodafone.de>','Info vom FHEM System','Handy anwesend');;}

{ DebianMail('<n.....

ist eine Sub. Hast Du diese Sub eingerichtet? 99_myUtilsblabla?
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

marvin78

Hast du es denn mit meinen und JoWiemanns wirklich sehr hilfreichen Tipps versucht? Außerdem habe ich in meinem Beitrag beschrieben, was uns zum Helfen evtl. noch fehlt.

Automatik-Willi

#10
Mailcode in der Commandline des fhem abgeschickt, alles ist fein (JA, die Mail kommt sogar an)

2015.07.13 14:35:19 5: Cmd: >{DebianMail('name@vodafone.de','Info vom FHEM System','Handy abwesend','');}<
2015.07.13 14:35:19 1: sendEmail RCP: name@vodafone.de
2015.07.13 14:35:19 1: sendEmail Subject: Info vom FHEM System
2015.07.13 14:35:19 1: sendEmail Text: Handy abwesend
2015.07.13 14:35:19 1: sendEmail Anhang:
2015.07.13 14:35:20 1: sendEmail returned: Jul 13 14:35:20 raspberrypi sendEmail[2444]: Email was sent successfully!


Im fhem-eventmonitor sehe ich daß die Abfrage zur Fritzbox wohl auch funzt :

Events:
2015-07-13 14:38:14 PRESENCE HandyStatus present
2015-07-13 14:39:18 PRESENCE HandyStatus present
2015-07-13 14:40:21 PRESENCE HandyStatus absent


Logfile :

2015.07.13 14:38:14 5: Cmd: >{PRESENCE_ProcessLocalScan('HandyStatus|0|present')}<
2015.07.13 14:38:14 5: PRESENCE (HandyStatus) - blocking scan result: HandyStatus|0|present
2015.07.13 14:38:14 5: Triggering HandyStatus (1 changes)
2015.07.13 14:38:14 5: Notify loop for HandyStatus present
2015.07.13 14:38:14 4: eventTypes: PRESENCE HandyStatus present -> present
2015.07.13 14:38:14 4: eventTypes: PRESENCE HandyStatus state: present -> state: present
2015.07.13 14:38:14 4: PRESENCE (HandyStatus) - rescheduling next check in 60 seconds

JoWiemann

In der Command Line brauchst Du auch nicht maskieren, beim notify ohne entsprechenden featurelevel schon.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Automatik-Willi

@Jörg
in der fhem.cfg sieht das so aus :

define HandyStatus PRESENCE function {RemoteFritzBoxWeb("11:22:33:66:DB:3D")}
60 60

define Handy dummy
attr Handy setList anwesend abwesend
define HandyHome notify HandyStatus:1 set Handy anwesend;;
{DebianMail('name@@vodafone.de','Info vom FHEM System','Handy
abwesend','');;}

define HandyAway notify HandyStatus:0 set Handy abwesend;;
{DebianMail('name@@vodafone.de','Info vom FHEM System','Handy
abwesend','');;}


im Log ist NULL von Mail zu sehen  ???

marvin78

Sind das tatsächlich Zeilenvorschübe? Das wird so nicht funktionieren. Aber da ich keine Hilfe für die .cfg gebe... Wie sieht denn der Code im DEF Bereich des notify aus?

JoWiemann

Probier mal folgendes:


{
  fhem("set Handy anwesend");
  DebianMail('name@@vodafone.de','Info vom FHEM System','Handy abwesend','');
}


Bitte so im Def des notify eingeben. Wenn Du direkt in der fhem.cfg arbeitest musst Du den Zeilenumbruch und das ; maskieren.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM