Hihi,
ich habe im Forum nun einiges gelesen, drehe mich aber mal wieder in Kreis.
Zu meinem Problem: Wenn unsere Heizung auf Störung geht (wird das über einen LDR auf der Störlampe erkannt und per espeasy als Analogwert an fhem gesendet) soll eine E-Mail an mich versendet werden. Das klappt auch so weit.
define n_ESPEasy_esp_easy_heizung_LDR_notify_stoerung notify ESPEasy_esp_easy_heizung_LDR:Analog:.* { if (ReadingsNum('ESPEasy_esp_easy_heizung_LDR','Analog',0) >=950){DebianMail("XXXX.XXXX\@gmail.com,heizung.XXXX\@gmail.com","Heizung ist auf Stoerung","Heizung ist auf Stoerung")}}
Leider kommt die E-Mail so natürlich jede Minute solange die Störung ansteht. In der Nacht ist das ein Problem.
Wie kann ich das so ändern, dass die E-Mail dreimal gesendet wird und dann nicht mehr?
Oder die E-Mail nach auslösen ">=950" nur alle Stunde einmal versendet wird?
Gibt es dafür eine Lösung und ihr könnt mir dabei helfen?
Gruß
Franzl
Am einfachsten:
Attribut disabledAfterTrigger
Und/oder:
Attribut disabledForIntervals
Evtl. auch event-on-change-reading beim "sendenden" Device, also dort wo das Event entsteht, auf das das notify triggert...
Gruß, Joachim
ZitatWie kann ich das so ändern, dass die E-Mail dreimal gesendet wird und dann nicht mehr?
Mit Hilfe der Funktion Each:
defmod n_ESPEasy_esp_easy_heizung_LDR_notify_stoerung notify ESPEasy_esp_easy_heizung_LDR:Analog:.* {\
my @w=(1..4);;\
my $s=join(",",@w);;
Each($SELF,$s);;\
return fhem("set $SELF inactive") if InternalVal($SELF,'EACH_INDEX',1) == 4;;\
if (ReadingsNum('ESPEasy_esp_easy_heizung_LDR','Analog',0) >=950){DebianMail("XXXX.XXXX\@gmail.com,heizung.XXXX\@gmail.com","Heizung ist auf Stoerung","Heizung ist auf Stoerung")}}
Wenn ich keinen Denkfehler dabei habe, brauchts dann noch eine Lösung, wie man nach der Störung das notify wieder scharf schaltet.
OT
Um meiner Linie treu zu bleiben (überall wo ich auftauche es Probleme gibt)
-> hier würd ich mir im Hintergrund genau diese Funktion für notify wünschen, welches die Anzahl der Wiederholungen mit der Angabe in einem Attribut (oder wie auch immer) umsetzt ...