Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Hier wird beschrieben wie das Abfragen und Senden von Wetterwarnungen der ZAMG (Österreich) an den Miniserver funktioniert.

Disclaimer

  • Das ganze funktioniert nur solange die ZAMG ihre Webseite nicht umstellt - wurde leider umgestellt funktioniert so nicht mehr
  • Nach Anfrage bei der ZAMG für eine echte API bekam ich folgende Antwort

...

  • Nach kurzer Recherche müsste sich der Flow relativ leicht für  meteoalarm.eu anpassen lassen, die Daten könnte man dann also Europaweit bekommen (smile)

Basics

Das https://warnungen.zamg.at/html/de/heute/alle/at/ ist die Startseite für Wetterwarnungen in Österreich von der ZAMG. Man sucht sich die eigene Gemeinde z.B. über die Postleitzahl und hat dann Links für den eigenen Bereich, mit vorhersagen für die nächsten 4 Tage, z.B. für Maria Anzbach

...

Die Struktur ist doch ideal geeignet um sich da dann mit etwas Node Red gebastel die Wetterwarnungen abzuholen.

Wo sind die interessanten Daten?

Sonntag  wird gelb angezeigt, also schauen wir uns mal um - und da werden wir fündig: Die warntexte.warnung Sections bzw. die Teile da drinnen sind es, was uns interessiert.

...

Was ich z.B. haben will, sind Hagelwarnungen - weil der Hagelsturm vom  hat mir ordentliche Dellen in meine Jalousien gehämmert, die gerade im Beschattungsmodus waren.

Der Flow

Da die Wetterwarnungen ja immer nur vorhanden sind, wenn es welche gibt, wir in Loxone aber wissen wollen Wetterwarnung ja bzw. nein, ist der Flow in zwei Zweige aufgeteilt, um diese Information zu generieren. Wie man Informationen in einem Flow speichert ist hier erklärt: https://nodered.org/docs/user-guide/context

Wichtig: der cheerio Node muss installiert werden, wird für die HTML Auswertung verwendet (der scheint einen Bug zu haben, geht nur mit Array Result nicht mit Multi Message Result)

Der Flow-Zweig zum Werte holen

  • der Timestamp fragt alle 30 Minuten die aktuellen Werte ab
  • alle Warnungen werden zurückgesetzt und 
  • die Daten werden abgefragt, ausgewertet und die gerade aktuellen Warnungen aktualisiert/gesetzt

Der Loxone Zweig

  • mit 15 Sekunden Verzögerung - damit sicher alles berechnet ist - werden die aktualisierten Daten über UDP an Loxone geliefert

Was muss ich im Flow alles anpassen?

  • auf jeden Fall die URL im Node Unwetterabfrage heute - hier deinen Ort auswählen von dieser Seite:  https://warnungen.zamg.at/html/de/heute/alle/at/ 
  • ev. den Port im Node Miniserver - hier verwende ich den Port 7771 - muss mit dem UDP Port, den du in der Config vergibst, übereinstimmen!

Und hier der Flow zum Download

(lightbulb) wetterwarnung-flow.json

Config für Miniserver

Die Daten werden mit UDP an den Minserver gesendet, hier ein Beispiel, die Hitzewarnung ist gerade aktiv:

Befehlserkennung der virtuellen UDP Eingänge

  • Wichtig: die UDP Eingänge NICHT als Digitaleingeng verwenden!
  • Die Einheit sollte überall mit <v> angegeben werden, es wird 0 oder 1 geliefert 

...

  • \iHitze:\i\v
  • \iGewitter:\i\v
  • \iAkutGewitter:\i\v
  • \Sturm:\i\v
  • \iHagel:\i\v

Diskussionen & Anfragen

...