Neuigkeiten:

Am Sonntag den 8.12.2024 kann es ab ca. 8:00 Uhr zu kurzzeitigen Einschränkungen / Ausfällen bei den Diensten des FHEM Vereines kommen.
Die Server müssen mal gewartet und dabei neu gestartet werden ;)

Hauptmenü

[mailcheck] Anzeige des Textkörpers einer Mail wg. Speedport Smart

Begonnen von Ellert, 26 April 2018, 13:04:12

Vorheriges Thema - Nächstes Thema

Ellert

@justme1968
Ich hätte Interesse daran, dass der Textkörper einer Email durch das Modul bereitgestellt wird, ist das Angenbot noch aktuell https://forum.fhem.de/index.php/topic,14092.msg449231.html#msg449231

Der Hintergrund ist folgender:

Im Zuge der DSL Umrüstung auf Annex-J entfällt mein gefritzter Speedport W701V und damit die Nutzung des FB_CALLMONITOR. Daraus hatte ich mir bei Ankunft zu Hause die verpassten Anrufe ansagen lassen.

Der Speedport W701V wird durch den kostenlos von der Telekom bereitgestellten Speedport smart abgelöst, der kann bei verpassten Anrufen Emails versenden und die Anruferinformationen stehen im Text, nicht im Betreff.

Ellert

Das angehängte Modul ist um die Möglichkeit ergänzt die Anzeige des Emailbodys als Text in einem Reading Body anzuzeigen, wenn das Attribut body_string gesetzt ist.

Es wäre schön, wenn die Änderung in das offizielle Modul einfliessen würde.


Ergänzt wurden die Zeilen 40 (Attribut ergänzt), 404, 470 (Body lesen und Reading schreiben), 584,585 (Commandref) eingefügt/geändert.

fstefan1960

Hallo,
ist die Übernahme in das Modul inzwischen denkbar?

Mir würde es helfen, aber ich würde ungern einen nicht weiter supporteten Fork benutzen ...


Vielen Dank.
FHEM auf PC: CUL868, CUL 443, HM_LAN, JeeLink
FHEM auf Raspi: CUL868
div. LaCrosse Temp/Hum-Sensoren, HM-Heizkörperventile, Schaltaktoren, etc.

Ellert


Felix_86

Hallo,

ich weiß, ein alter Thread, aber ich suche auch grade nach der Möglichkeit mittels mailcheck (oder einem anderen Modul??) den Mailinhalt / Body in einem Reading zu erhalten.
Mein aktuelles mailcheck Modul (Version unklar) hat kein Attribut body_string. Wie kann ich das aktivieren?

Danke vorab.
Grüße von Felix

Pi3, Raspbian 11, FHEM 6.2, ca 330 Device
SIGNALduino (TCM, TX, IT, SD_GT), CUL (EM, FS20, HMS), JeeLink (PCA301), HUEBridge, HUEDevice, mailcheck, echodevice, alexa, TelegramBot, Weather (OWM), DWD_OpenData, FRITZBOX, TabletUI, Calendar, Abfall, Vitoconnect, LGTV_WebOS, Nina, MQTT2

Ellert


Xsantos

Hallo, ich hoffe mir kann einer von euch Helfen.

so sieht mein Mailfilter notify aus:

Email:Body.* {
   my $body = ReadingsVal("Email", "Body", "");;
   my $from = ReadingsVal("Email", "From", "");;
   if($body eq "Test" && $from eq "X\@web.de") {
      fhem("set Test ok");;
   } elsif($body eq "lol" && $from eq "X\@web.de") {
      fhem("set Test lachen");;
   }
}

Mein Event monitor sieht so aus:
2024-10-16 21:11:05 mailcheck Email Body: <html><head></head><body><div style="font-family: Verdana;font-size: 12.0px;"><div>lol</div></div></body></html>

Also leider ist Body nicht nur lol sondern hat noch die HTML Sprache mit dabei. Daraus folgt, dass fhem den dummy Test nicht verändert.
Gibt es einen Befehl, der den Body (das Reading Body) nur nach bestimmten Wörtern durchsucht? Also quasi, wenn im gesamten Reading irgendwo das Wort "lol" vorkommt, dann z.B. set Test ok. Hat einer von euch eine Idee.
Danke schon mal an euch und liebe Grüße

betateilchen

Zitat von: Xsantos am 16 Oktober 2024, 21:35:13Gibt es einen Befehl, der den Body (das Reading Body) nur nach bestimmten Wörtern durchsucht? Also quasi, wenn im gesamten Reading irgendwo das Wort "lol" vorkommt, dann z.B. set Test ok. Hat einer von euch eine Idee.

Sowas nennt sich "regular expression" und das ist nicht perl- oder FHEM-spezifisch.
Das Internet ist voll mit Anleitungen dazu.

Einfachste Variante:
if ($body =~ m/Test/) {mache irgendwas}
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Xsantos