Um unterschiedliche Icons für den Türzustand anzuzeigen muss das Attribut devStateIcon wie folgt ergänzt werden.

Für Tür offen sieht es dann so aus:

Und für eine geschlossene Tür:


Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, KI, Statistik, Krypto und Blockchain
Alles rund um die Heimautomatisierung mit Fhem und Homematic usw.
Das geht mit dem msmtp Client (msmtp version 1.4.27).
Dazu den msmtp Client und mutt (Version 1.5.21 (2010-09-15)) auch gleich mit installieren.
|
1 2 3 |
opkg update opkg install msmtp opkg install mutt |
Die Konfigurationsdatei vi /etc/msmtprc wie folgt anlegen und die entsprechenden smtp Daten eingeben:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# /etc/msmtprc account default host smtp.strato.de port 587 auth on user email@test.de password HIER DAS PASSWORT auto_from on from email@test.de tls on tls_starttls on tls_certcheck off logfile syslog LOG_MAIL |
Testen ob alles richtig konfiguriert wurde geht mit dem absetzen folgender Kommandos auf der Konsole:
|
1 |
echo 'Test e-mail' | sendmail email@test.de |
Oder mit cat mit Betreff und Absender:
|
1 2 3 4 5 6 7 |
[root@OpenWrt ~]# cat <<EOF | sendmail -t / To: empfaenger@test.de Subject: Testbetreff From: absender@test.de Testinhalt der E-Mail EOF |
Dann testen ob die E-Mail angekommen ist.
Für das Versenden aus dem Fhem Script reicht das noch nicht. Wir brauchen noch ssmtp
|
1 2 |
opkg update opkg install ssmtp |
Diese zwei Dateien anpassen /etc/ssmtp/ssmtp.conf
|
1 2 3 4 5 6 7 8 |
root=info-anfrage@test.de mailhub=smtp.strato.de:587 rewriteDomain=test.de hostname=email@test.de UseSTARTTLS=YES AuthUser=email@test.de AuthPass=PASSWORT FromLineOverride=YES |
Und die /etc/ssmtp/revaliases
|
1 2 |
root:email@test.de:smtp.strato.de:587 localusername:email@test.de:smtp.strato.de:587 |
Check auf der Konsole mit:
|
1 |
ssmtp email@test.de |
dann Enter und die Nachricht der E-Mail eingeben.
Zum Schluss Strg+D drücken. Dann wird die E-Mail versendet.
Um die digitalen Werten, wie Tür auf oder zu in einem Plot mit dem Batterie Zustand auszugeben, kann wie folgt vorgegangen werden. Der HM-Sec-SC Funk-Tür-/Fensterkontakt gibt die Werte ja zurück. Die rote Linie gibt den Türzustand aus ob die Tür auf oder zu ist bzw. war.

Diese /fhem/www/gplot/myTerrassenTuer.gplot Datei speichern:
/*
myTerrassenTuer.gplot Version 1.0 vom 07.09.2013
Dieses GNU-Plot Script (myTerrassenTuer.gplot) gibt zwei Zustaende des Tuerkontakt als Kurven aus und zwar
den Batterie-Zustand, den Status der Tuer.
(C) 2013 Thomas Wenzlaff http://www.wenzlaff.de
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see {http://www.gnu.org/licenses/}.
*/
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title 'Terrassen Tuer'
set ytics ("Zu" 0, "Ok" 0.8, "Auf" 1)
set y2tics ("Zu" 0, "Ok" 0.8, "Auf" 1)
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]
set ylabel ""
set y2label ""
#FileLog 3:wz_Tuerschalter:0:$fld[2]=~"open"?1:0
#FileLog 4:wz_Tuerschalter:0:$fld[2]=~"ok"?0:0.8
plot \
"< awk '/wz_Tuerschalter/ {print $1, $3~/open/? 1 : 0; }' <IN>"\
using 1:2 title 'Tuer' with steps
"< awk '/wz_Tuerschalter/ {print $1, $3~/ok/? 1 : 0; }' <IN>"\
using 1:2 title 'Batterie' with steps
Folgende Einträge sind in der fhem.cfg Datei noch nötig:
# TW Tuerschalter
define wz_Tuerschalter CUL_HM 000000
attr wz_Tuerschalter .devInfo 000000
attr wz_Tuerschalter .stc 80
attr wz_Tuerschalter actCycle 028:00
attr wz_Tuerschalter actStatus alive
attr wz_Tuerschalter expert 2_full
attr wz_Tuerschalter firmware 2.1
attr wz_Tuerschalter model HM-SEC-SC
attr wz_Tuerschalter peerIDs
attr wz_Tuerschalter room Wohnzimmer
attr wz_Tuerschalter serialNr KEQ0000000
attr wz_Tuerschalter subType threeStateSensor
define FileLog_wz_Tuerschalter FileLog ./log/wz_Tuerschalter-%Y.log wz_Tuerschalter
attr FileLog_wz_Tuerschalter logtype text
attr FileLog_wz_Tuerschalter room Wohnzimmer
define SVG_FileLog_wz_Tuerschalter_1 SVG FileLog_wz_Tuerschalter:myTerrassenTuer:CURRENT
attr SVG_FileLog_wz_Tuerschalter_1 room Wohnzimmer
So wie in der guten Anleitung beschrieben vorgehen.
Die fhem Referenz (nur engl.) gibt auch noch Infos.
Für Langenhagen lautet die Yahoo ID 670178.
Kurz:
1. fhem.cfg ergänzen (siehe Kopiervorlage unten)
2. drei gnuplot Datein von Githup nach /fhem/www/gplot/ kopieren
3. fhem restarten
Zu 1.: Der Teil der in der fhem.cfg ergänzt werden muss für Langenhagen:
# Wetter von Yahoo (670178 = Langenhagen, 600=alle 600 Sekunden (10min) Yahoo abfragen, de=Sprache Deutsch)
define Wetter Weather 670178 600 de
attr Wetter event-on-update-reading temperature,humidity,pressure,wind_speed,wind_chill,wind_direction
attr Wetter group Umwelt
attr Wetter room 9.02_Steuerung
define FileLog_Wetter FileLog ./log/Wetter-%Y.log Wetter
attr FileLog_Wetter logtype temp4hum6:wind_speed|humidity|temperature,text
attr FileLog_Wetter room 9.90_Logs
define w_Wetter weblink htmlCode { WeatherAsHtmlD("Wetter") }
attr w_Wetter group Umwelt
attr w_Wetter htmlattr width_"220" height="330" frameborder="0" marginheight="0" marginwidth="0"
attr w_Wetter room 0.10_Langenhagen
define wl_Wetter_Luftdruck SVG FileLog_Wetter:myPress4:CURRENT
attr wl_Wetter_Luftdruck group Umwelt
attr wl_Wetter_Luftdruck room 0.10_Langenhagen
define wl_Wetter_Temp SVG FileLog_Wetter:myYahooWeather:CURRENT
attr wl_Wetter_Temp group Umwelt
attr wl_Wetter_Temp room 0.10_Langenhagen
define wl_Wetter_Wind SVG FileLog_Wetter:myWind4windDir4:CURRENT
attr wl_Wetter_Wind group Umwelt
attr wl_Wetter_Wind room 0.10_Langenhagen
So sieht es nach den ersten Messwerten aus, ja es ist noch keine Kurve. Aber immerhin:



