FHEM > Codeschnipsel

Punktgenaue Hagelwarnung Schweiz

(1/1)

Markus Stamm:
Hallo zusammen
An meinem EFH habe ich die Storen erneuert. Die Gebäudeversicherung bezahlt keine Schäden, welche durch Hagelschlag verursacht wurden.
Die Vereinigung der kantonalen Gebäudeversicherungen VKG https://www.vkg.ch/de/naturgefahren/projekte/ bietet jedoch punktgenau (Gebäude-Koordinaten) eine Hagelwarnung, welche gratis ist.
Es muss lediglich eine Anfrage gestellt werden, damit man das Formular erhält, welches die Gebäude-Kataster-Nummer und die MAC-Adresse der zu verwendenden Steuerung erfragt.
Auf meinem Raspi Pi3 mit FHEM habe ich mit dem Modul HTTPMOD dieses Signal abgegriffen und ausgewertet.
Mit einem DOIF sende ich ein Mail (siehe diverse Beiträge für "sendemail") mit einem Hashtag an meine TaHoma-Haussteuerung (IFTTT).
Hier der entsprechende Code:


--- Code: ---define HagelWarnung HTTPMOD https://meteo.netitservices.com/api/v0/devices/"Meine MAC-Adresse"/poll?hwtypeId="Mein HW-Type" 120
attr HagelWarnung userattr getHeader1
attr HagelWarnung extractAllJSON 1
attr HagelWarnung getHeader1 Content-Type: application/json
attr HagelWarnung group Hagelwarnung
attr HagelWarnung icon frost
attr HagelWarnung room Wetter
attr HagelWarnung stateFormat currentState

define HagelEvent DOIF ([HagelWarnung:currentState] gt 0) \
({ \
my $HagelStatus = [HagelWarnung:currentState];;\
my $HagelStatusText = "nothing";;\
{\
if($HagelStatus eq "1") \
{ $HagelStatusText = "ALARM (Status=$HagelStatus)" } \
else { $HagelStatusText = "TEST Alarm (Status=$HagelStatus)" }\
}\
TaHomaMail("#Hagel $HagelStatusText");;;; \
})
attr HagelEvent room Aktionen
--- Ende Code ---

und in 99_mySubUtils.pm folgende leicht abgeänderte Funktion von sendemail:


--- Code: ---sub TaHomaMail
{
 my $rcpt = "Meine Empfängeradresse";
 my $subject = shift;
 my $text = "Meine Gebäudebezeichnung : $subject";
 my $attach = shift;
 my $ret = "";
 my $error;
 my $konto = "Mein Mailkonto";
 my $passwrd = "Mein Mailkontopasswort";
 my $from = $konto; # or use different KeyValue if konto is not the from email address
 my $provider = "Mein SMTP-Host:Port"; # smtp.domain.tld:port see provider documentation
 if (not defined($attach)){$attach=''}
 $ret .= qx(sendemail -f '$from' -t '$rcpt' -u '$subject' -m '$text' -a '$attach' -s '$provider' -xu '$konto' -xp '$passwrd' -o tls=auto -o message-charset=utf-8);
 $ret =~ s,[\r\n]*,,g;    # remove CR from return-string
 Log 1, "sendemail returned: $ret";
}
--- Ende Code ---

 
 

FHEMBOC:
Sali Markus

Gibt es diese Funktion noch? Ich habe mit dem Link nichts Konkretes gefunden.
Wie muss man die Anfrage für das Formular stellen?
Gruss Chris

Markus Stamm:
Hallo Chris
Sorry, für die späte Antwort. Mein Hagelschutz hate in der Sommersaison prima funktioniert.
Ja, den Link gibt's noch, allerdings wirde die Webseite erweitert.
Die aktuelle Doku habe mich auf der Seite :
https://www.vkg.ch/media/1916/anleitung-konfigurator-faq_v1-4.pdf
wieder gefunden.
Gruss: Markus

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln