E-mail versenden

Hallo zusammen,

stehe gerade wieder vor einem kleinen Problem. Leider hat die Suchfunktion mich auch nicht wirklich weitergebracht.

Ich bin gerade dabei mir bestimmte " Aktionen " per email schicken zu lassen.

So soll zum Beispiel IPS mir eine Email senden wenn die Gartenbewässerung abgeschlossen ist.

Dazu habe ich eine Variable (in meinem Fall eine Homematicsystemvariable ) die bei Beendigung der Bewässerung ihren Zustand von true auf false wechselt ,mit der Email versendung verknüpft.
Email senden wenn Variable bestimmten Wert, in meinem Fall "false "
Dies funktioniert auch soweit , allerdings bekomme ich so wie es aussieht jetzt zyklisch diese Mail obwohl der Zustand sich nicht geändert hat , also steht die ganze Zeit fest auf false.
"Variablenänderung " kann ich ja auch nicht wählen, da er ja dann auch beim wechseln von false auf true eine email senden würde.
Gibt es da eine elegante Lösung oder muss ich meine Variablen so ändern das sie quasi nur einen Impuls geben und somit nur einmal eine E-Mail gesendet wird?
Oder habe ich da vielleicht noch ne Einstellung übersehen?

MFG
Dennis

Du hast bestimmt den Haken bei „Nachfolgende Ereignisse“ ausführen an, oder? Nimm den mal raus - dann sollte es klappen :slight_smile:

paresy

Verdammt :slight_smile:

Ja der ist an… ich dachte eigentlich das bezieht sich auf das Ereignis das ich im nächsten Fenster dann auswähle, also was die email auslöst.
Habe mich schon gefragt was der „Schwachsinn“ soll, aber dann macht es natürlich Sinn :wink:

Daaaanke !

MFG Dennis

Du kannst doch einfach ein Miniscript nehmen, darauf ein Ereignis legen mit der Variable als Trigger und dies bei Variablenänderung oder auch Variablenaktualisierung, je nach dem was besser ist, ausführen lassen.

So in der Art kannst Du dann entsprechend anpassen.


$smtpid = 55709 // Objekt ID der E-Mail Sendeinstanz
$wateringstate = GetValue(20281 /*[Geräte\Benachrichtigung\Email\Test Email Trigger]*/); // Auslösende Variable
$lastchange = date("H:i:s", IPS_GetVariable(20281 /*[Geräte\Benachrichtigung\Email\Test Email Trigger]*/)["VariableChanged"]); // Letzte Änderung der Variable
if($wateringstate)
{
	 SMTP_SendMail($smtpid, "Gartenbewässerung", "Die Gartenbewässerung wurde um ".$lastchange." Uhr gestartet.");

}
else
{
	 SMTP_SendMail($smtpid, "Gartenbewässerung", "Die Gartenbewässerung wurde um ".$lastchange." Uhr beendet.");

}

Das wäre natürlich auch eine elegante Lösung , vor allem da noch Start und Endzeit mit angegeben werden …
Mit freundlichen Grüßen
Dennis

Gesendet von iPhone mit Tapatalk