Emailversand bei kritischen Temp Werten mit HMS 100 T

Programmierung der FHZ-Zentralen mit contronics homeputer Standard / homeputer Studio & WEB-Server

Moderator: Co-Administratoren

Antworten
rene88
Beiträge: 9
Registriert: 29.07.2009, 13:47

Emailversand bei kritischen Temp Werten mit HMS 100 T

Beitrag von rene88 » 27.10.2009, 11:36

Hallo an alle.

Ich habe einen HMS 100 T in einen Serverschrank verbaut, um den Temperaturverlauf zu verfolgen.
Das funktioniert soweit bestens. Auch mit der HomeHistory gibt es keine Probleme.
Jetzt möchte ich gerne eine Warnung über email erhalten, wenn die Temperatur zum beispiel 40° erreicht hat.
Wie realisiere cih das am besten? Mit der Makroprogrammierung habe ich mich bisher nur geärgert, da ich da noch nicht wirklich durchsteige.
Auch mit den Mailkonfigurationen komm ich nicht weiter. Warum muss ein POP konto eingestellt werden, wenn cih nur Mail´s versenden will?
Ach ja, verwendet werden sowohl die FHZ 1000 PC und homeputer studio.
Vielen dank schon jetzt.

Mfg, Rene

EDIT: ok, das mit dem einrichten des email kontos hat sich erledeigt. habe jetzt auf in der software eine aktive verbindung. nur noch das mit dem makro(?) steht noch aus und da komm cih auch nicht weiter...

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Emailversand bei kritischen Temp Werten mit HMS 100 T

Beitrag von buempi » 27.10.2009, 16:22

Hallo Rene

Die Syntax für den SENDEMAIL()-Befehl ist tatsächlich etwas verwirrend. Einfacher geht's, wenn man sich die Meldung zuerst in einer Zeichenvariable zusammensetzt.

Das Makro sollte im HMS-Sensor (Ausführung bei Empfang aktiviert) stehen. Dieses Makro wird jedes Mal ausgeführt, wenn der HMS-Sensor die Temperatur sendet (ca. alle 5 Minuten). Wir müssen deshalb verhindern, dass jedes Mal, wenn eine Temperatur von über 40° reinkommt, erneut eine Mail rausgeht. Das löse ich mit einer Zeitvariablen, die bewirkt, dass frühestens nach einer Stunde (du kannst den Wert natürlich auch ändern) nochmals gemailt wird:

Code: Alles auswählen

** Im Makro unten folgende Variablen definieren:

** LetzteSendung Typ Zeit
** Meldetext     Typ Zeichen

wenn HMSServerschrank > 40,0 dann
   wenn Stoppzeit(LetzteSendung) > "01:00:00" dann

      ** ACHTUNG: In der nächsten Zeile das Komma hinten nicht überschreiben!
      Meldetext := "deineAdresse@deinProvider.de,"
      Meldetext := Meldetext + "Alarm Temperatur Serverschrank<<"
      Meldetext := Meldetext + Zeit + " Temperatur Serverschrank: " + HMSServerschrank
      Sendemail(Meldetext)
      LetzteSendung := Zeit

   endewenn
endewenn
Beim Programmstart ist die Variable LetzteSendung mit der aktuellen Zeit gefüllt. Der erste Mailversand erfolgt also frühestens eine Stunde später. Zum Testen kannst du die Wartezeit einfach verkleinern und einen tieferen Temperaturgrenzwert eintragen.

Viele Grüsse
Bümpi

rene88
Beiträge: 9
Registriert: 29.07.2009, 13:47

Re: Emailversand bei kritischen Temp Werten mit HMS 100 T

Beitrag von rene88 » 27.10.2009, 16:41

Super! Das ist genau dass, was cih gesucht habe! auch wenn es blöd klingt... wie bekomme ich es noch eingestellt, das er an eine bestimmte email adresse sendet?

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Emailversand bei kritischen Temp Werten mit HMS 100 T

Beitrag von buempi » 27.10.2009, 16:45

Einfach statt "deineAdresse@deinProvider.de," die richtigen Angaben eintragen. Komma hinten muss drin bleiben. Und natürlich auch den Namen deines HMS-Sensors 2x statt "HMSServerschrank" einsetzen.

Viele Grüsse
Bümpi

rene88
Beiträge: 9
Registriert: 29.07.2009, 13:47

Re: Emailversand bei kritischen Temp Werten mit HMS 100 T

Beitrag von rene88 » 27.10.2009, 17:06

*kopf > tisch* natürlich. habs nur überflogen, da ich nebenbei am arbeiten bin... hätte mir natürlich auffallen müssen :)
herzlichsten dank! wiedermal super gute und schnelle hilfe!

rene88
Beiträge: 9
Registriert: 29.07.2009, 13:47

Re: Emailversand bei kritischen Temp Werten mit HMS 100 T

Beitrag von rene88 » 27.10.2009, 17:15

dann noch eine letzte frage hierzu: wie genau kann cih die bezeichner LetzteMeldung deklarieren? bis dahin bekomm ich es hin... habs auch schon ala c++ versucht, die bezeichner zu deklarieren, nur so bekomm cih das nich hin...

EDIT: wer is lesen kann, ist klar im vorteil, was? habs schon gefunden. jetz heissts abwarten und schauen, ob er das makro auch ausführt.
Nochmals vielen dank für die schnelle und tolle hilfe!

Mfg, Rene

Antworten

Zurück zu „homeputer Studio / Standard: Programmierbeispiele“