Aktuelle Temperatur per Email senden

Begonnen von onix20, 16 Juni 2018, 09:22:04

Vorheriges Thema - Nächstes Thema

onix20

Hallo,

ich habe ein Alarm für den Gefrieschrank angelegt. Wenn der Gefrierschrank eine Temperatur >-16° errecht,
wird eine Email an mich gesendet. Wenn die Temperatur nach 30min. immer noch >16° ist, wird eine weitere Emailwarnung gesendet. Das funktioniert schon mal.
Jetzt würde ich gerne die aktuelle Temperatur in der Email angeben. Das bekomme ich einfach nicht hin.
Kann mir jemand sagen, wie ich das umsetzen kann?

Hier meine aktuelle Konfiguration:

Gefrierschrank:temperature:.* {
if ( (ReadingsVal("Gefrierschrank","temperature",0) > -16.0) && (time > $main::NewMailtime)) {DebianMail(######@#####.de','FHEM-Temperatur-Alarm Gefrierschrank','ACHTUNG - die Temperatur vom Gefrierschrank ist über -16° gestiegen!');$main::NewMailtime = time+1800;
  }
}

Otto123

#1
Moin,

genaugenommen steht der Wert schon im $EVENT, du brauchst nicht mal neu auslesen.

Du kannst auch ReadingsVal("Gefrierschrank","temperature",0) durch $EVTPART1 ersetzen. (Ich hoffe $EVTPART1 ist richtig, die Zählung beginnt bei 0, musst Du genau im Eventmonitor schauen)
https://commandref.fhem.de/#notify

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

amenomade

Und pass auf, dass innerhalb von single quotes die Variables nicht interpretiert werden.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Otto123

#3
Guter Hinweis :)
@onix20 und nimm bitte beim posten von Code die Code Tags - die # Taste über dem  :-X Smiley
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

onix20

#4
Hallo Otto,
dein Hinweis hat funktioniert.

Ich habe es so geändert:

Gefrierschrank:temperature:.* {
if (($EVTPART1 > -16.0) && (time > $main::NewMailtime)) {DebianMail('#####@#####.de','FHEM-Temperatur-Alarm Gefrierschrank','ACHTUNG - die Temperatur vom Gefrierschrank ist auf'.$EVTPART1);$main::NewMailtime = time+1800;
  }
}


Die Ausgabe sieht so aus:

ACHTUNG - die Temperatur vom Gefrierschrank ist auf -13.3

Wie kriege ich nun die Ausgabe formatiert, dass sie so aussieht:

ACHTUNG - die Temperatur vom Gefrierschrank ist auf -13.3°C  gestiegen


amenomade

'ACHTUNG - die Temperatur vom Gefrierschrank ist auf'.$EVTPART1.' gestiegen'?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Otto123

Oder so sollte es auch gehen.
"ACHTUNG - die Temperatur vom Gefrierschrank ist auf $EVTPART1 gestiegen"

@ Jürgen Du wolltest doch Deine Email schwärzen?  ;)
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

onix20

Zitat von: Otto123 am 16 Juni 2018, 13:14:46
Oder so sollte es auch gehen.
"ACHTUNG - die Temperatur vom Gefrierschrank ist auf $EVTPART1 gestiegen"

@ Jürgen Du wolltest doch Deine Email schwärzen?  ;)
Ups, danke für den Hinweis

taskkill

Kann ich wenn Alarm ausgelöst, die Pollingzeit irgendwie vergrößern so das ich nicht alle 3 Minuten eine Mail bekomme ? Oder nur einmalig eine beim Unter/Überschreiten des Wertes erhalten ?
RPI 3B+ mit Raspbian Bullseye auf SSD, aktiver USB-Hub, Fhem (is klar), TI CC2652P, nanoCUL 868 WMBUS, Echo Plus 2te Gen., ESPxxxx, usw.

Pfriemler

Uh ... Leichenfledderei :-)
Aber wo wir schon mal dabei sind:
In diesem Fall wäre DOIF dein Freund. Zustandswechsel (Temperatur ok/nicht ok), Warnungen in definierten Abständen mit definierter Wiederholungszahl usw. Meines Wissens gibt es sogar ein Beispiel in der commandref.
Ein notify wird direkt durch das Event der Temperaturmeldung getriggert. Man kann da auch was bauen, aber es ist m.M.n. ungleich komplizierter.

"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Otto123

Hi,

hier geht es normal nicht um Polling sondern darauf auf eine Event zu reagieren.
Du kannst also die Events verändern oder die Reaktion auf die Events.
event-on-change-reading würde die Events am Temperatur sensor verringern helfen.
disabledAfterTrigger beim notify würde die Reaktion des notify verändern.
ZitatdisabledAfterTrigger someSeconds
disable the execution for someSeconds after it triggered.

Es gibt sicher 100 andere Ansätze...

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