Aktion steuern in Abhängigkeit empfangener Email?

Begonnen von eddtima, 25 April 2013, 23:43:22

Vorheriges Thema - Nächstes Thema

eddtima

Hallo Liebe FHEM-Fan-Gemeinde,

das mit FHEM EMails gesendet werden können, ist relativ bekannt und gut beschrieben. Ich möchte nun aber einen Aktor in Abhängigkeit einer empfangenen E-Mail schalten. Genau gesagt, soll ein Aktor geschaltet werden, wenn eine E-Mail mit gegebenem Subject Field eintrudelt - die eine WebCam bei Bewegungserkennung versendet hat.

Mir ist klar, dass das nicht ganz ohne ist, denn FHEM selber empfängt ja keine Mails, genausowenig wie FHEM. Die Fritzbox "snifft" keinen Verkehr mit, selbst wenn der E-Mailserver lokal laufen würde und holt auch keine Mails zb. per Pop3 oder IMAP ab. Eine NAS allerdings könnte das mit einem Mail Server tun.

Ein weiterer Ansatz wäre ein-E-Mail-to-"irgendwas"-Service nutzen, um FHEM durch eine Mail zu triggern. Mit SMS? Prowl? Einem Anruf?

Ich setze FHEM auf einer FB7390 und auch eine NAS QNAP-259 mit einem (XDove + XMail) Mailserver ein. Letztere muss aber nicht Bestandteil der Lösung sein ;-), zumal FHEM nicht auf meiner QNAP läuft.

Hat jemand eine Idee, wie sowas realisiert werden könnte?

Viele Grüße
/Till
FHEM auf Odroid N2, FTUI, etwa 110 Homematic Devices verschiedenster Coleur, BMWi3, Gardena, Hue, Sonos, Alexa, Harmony Hub, Samsung TV

Ralph

Das ist mal eine hübsche Aufgabenstellung :-)

Du könntest mit einem Anruf auf eine Fritzbox und der Routine "calllog" einen Trigger auslösen,
der startet ein Script, welches zunächst mit "wget" die Mail woauchimmer abholt und sodann den Inhalt prüft und in dessen Abhängigkeit eine Aktion startet.
Die Details muss ich aber Fachleuten überlassen, die sich mit "sed" und so Filter-Zeugs auskennen.

Oder vieleicht gibts das ja schon für die Fritzbox, frage einfach mal:
http://www.ip-phone-forum.de/forumdisplay.php?f=444


Die nachtragende Edith meint:
Vielleicht könntest Du ja auch dies benutzen:
https://ifttt.com/wtf
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

broadway

Hallo,

ich suche auch nach einer solchen Möglichkeit. Der letzte link "ittt" sieht interessant aus. Man kann, wenn ich es richtig verstehe, z.B. durch eine SMS etwas im google Kalender verändern.

Das wäre doch evtl. eine Möglichkeit?
Also SMS schicken -> Eintrag im Kalender (z.B. in 5 min Heizung an) -> FHEM liest den Kalender aus.

Leider kenne ich mich mit FHEM und google Kalender nicht aus. Wer nutzt außerdem ittt und wie sind die Erfahrungen?

Grüße,
BW
Linksys NSLU2 debian + CUL | FHT80B, FS20, Elro

UliM

Hi,
ifttt nutze ich nicht, aber triggern aus google-Kalender-Einträgen. Dieser Teil der Lösung funzt prima :)
=8-)
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

febus

Hallo zusammen,
hat hier schon jemand eine Lösung gefunden? Ich suche auch nach einer Möglichkeit, per E-Mail verschiedene Aktionen auszuführen...

Gruß,
Marc

Viele Grüße,
Marc

Mitch

Bin auch gerade auf Pushover in Verbindung mit IFTTT gestossen und finde dies sehr interessant.

Uli, wie machst Du das mit dem Kalender?
Fritz kann das ja standardmässig, aber ich würde dies gerne in FHEM grundsätzlich implementieren.

Danke!
FHEM im Proxmox Container

joesy

Ähnlich wie von Ralph vorgeschlagen, habe ich bereits vor längeren ein Skript auf der Fritzbox in Betrieb, welches bei Anruf an zwei dafür reservierte Nummern, Aktionen im fhem anzustossen. Zur Sicherheit wird auch die Gültigkeit der Anrufernummer überprüft. Aktuell dient das Skript dazu, bei Bedarf eine Lampe an- bzw. auszuschalten.

Benötigt wird hierfür 'curl', welches standardmäßig auf der Fritzbox nicht exisitert. Ich habe mit Hilfe einer Freetz-Entwicklungsumgebung curl statisch kompiliert. Damit muss nicht zwingend Freetz auf der Fritzbox installiert sein, um das Skript zu verwenden.

calllog
#!/bin/sh
/var/media/ftp/USB-DISK2-0-01/scripts/myCalllog.sh $*


mycalllog.sh
#!/bin/sh

VATER="XXXXXXXXXX"
MUTTER="XXXXXXXXXX"
KIND1="XXXXXXXXXX"
KIND2="XXXXXXXXXX"
DEST="YYYYYY"
DESTOFF="ZZZZZZ"

logger -t Fritz-telefon $*

if [ "$1" = "$VATER" ] || [ "$1" = "$MUTTER" ] || [ "$1" = "$KIND1" ] || [ "$1" = "$KIND2" ] && [ "$2" = "$DEST" ]; then
echo Lamp on
curl "http://192.168.178.4:8083/fhem" -G -d "cmd.WZ_Stehlampe=set%20WZ_Stehlampe%20on&room=Wohnzimmer"
sleep 5

/sbin/mailer \
-s "Lampe An von $1 an $2 - $3 (`date +\"%d.%m.%y %H:%M\"`)" \
-f '"FritzBox" <user@domain.de>' \
-t "user@domain.de" \
-m 192.168.178.13 \
fi

if [ "$1" = "$VATER" ] || [ "$1" = "$MUTTER" ] || [ "$1" = "$KIND1" ] || [ "$1" = "$KIND2" ] && [ "$2" = "$DESTOFF" ]; then
echo Lamp off
curl "http://192.168.178.4:8083/fhem" -G -d "cmd.WZ_Stehlampe=set%20WZ_Stehlampe%20off&room=Wohnzimmer"
sleep 5

/sbin/mailer \
-s "Lampe Aus von $1 an $2 - $3 (`date +\"%d.%m.%y %H:%M\"`)" \
-f '"FritzBox" <user@domain.de>' \
-t "user@domain.de" \
-m 192.168.178.13 \
fi


Mit folgenden Befehl wird calllog im System verankert, d.h.bei jedem Anruf das Skript aufgerufen.
cat calllog >/var/flash/calllog

justme1968

mail an fhem kann man einfach mit dem mailcheck modul auswerten :)

der original thread mit ein paar beispelen (kommen gegen ende) ist hier: http://forum.fhem.de/index.php/topic,14092.0.html. das modul ist inzwischen ganz normal eingecheckt.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968