UWZ
UWZ | |
---|---|
Zweck / Funktion | |
Daten von Unwetterzentrale.de holen | |
Allgemein | |
Typ | Gerätemodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Wettermodule |
Modulname | 77_UWZ.pm |
Ersteller | Tobias (tdoe ) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Das Modul UWZ holt Informationen für eine zu spezifizierende Postleitzahl von der Seite Unwetterzentrale.de und bereitet sie für die Darstellung in Fhem auf.
Voraussetzungen
Installation
Das Modul ist derzeit noch inoffiziell und kann / muss
- aus dem zugehörigen Forenthread (Siehe Zeile "Dokumentation" in der Infobox) geladen werden
- oder über den Befehl
update 77_UWZ.pm https://raw.githubusercontent.com/tobias-d-oe/fhem-uwz/master/controls_uwz.txt
installiert / aktualisiert werden.
Nach der Installation ist ein Restart von FHEM erforderlich.
Anwendung
Define
Abhängig davon, ob man Unwetterwarnungen aus Deutschland oder einem anderen Land abfragen möchte, muss für das Attribut PLZ entweder die Postleitzahl (Deutschland) oder die AREA_ID (Rest der Welt) verwendet werden.
Deutschland
define <name> UWZ <Ländercode> <PLZ> <INTERVAL>
Rest der Welt
define <name> UWZ <Ländercode> <AREA_ID> <INTERVAL>
Die AREA_ID kann folgendermaßen ermittelt werden:
Geokoordinaten ermitteln
Dazu wird folgende URL aufgerufen, und am Ende der URL bei dem search Parameter der Name des Ortes eingegeben. Im Fall von Oberwaltersdorf AT:
http://alertspro.geoservice.meteogroup.de/weatherpro/SearchFeed.php?search=oberwalt
Als Antwort bekommt man eine XML Struktur mit gefundenen Orten:
<result> <cities previousOffset="-1" nextOffset="-1"> <city country="49" city="8512" id="18226609" country-name="Germany" province-name="Bavaria" continent="6" inhabitants="7500" longitude="12.17092" latitude="48.57422" name="Oberwaltenkofen (Ergolding)" timezone="Europe/Berlin"/> <city country="49" city="8671" id="18226768" country-name="Germany" province-name="Bavaria" continent="6" inhabitants="4000" longitude="12.51418" latitude="48.77301" name="Oberwalting (Leiblfing)" timezone="Europe/Berlin"/> <city country="43" city="1161" id="18134912" country-name="Austria" province-name="Niederösterreich" continent="6" inhabitants="2500" longitude="16.3203" latitude="47.9756" name="Oberwaltersdorf" timezone="Europe/Vienna"/> <city country="43" city="1305915" id="182199490" country-name="Austria" province-name="Niederösterreich" continent="6" inhabitants="150" longitude="15.0844" latitude="48.5394" name="Oberwaltenreith" timezone="Europe/Vienna"/> </cities> </result>
Dort sucht man sich die beiden Attribute latitude und longitude für den passenden Ort heraus. Im verwendeten Beispiel wäre es für Oberwaltersdorf in Österreich:
latitude="47.9756"
longitude="16.3203"
AREA_ID abfragen
Mit diesen Werten wird nun die nächste URL zusammengebaut (Parameter lat + lon):
http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=lookupCoord&lat=47.9756&lon=16.3203
Das Resultat:
[{"AREA_TYPE":"UWZ","AREA_ID":"UWZAT00234","CENTER_ID":"2"}]
Nun wissen wir, dass die AREA_ID für Oberwaltersdorf:
UWZAT00234
ist. Bei der Definition wird nun die Nummer 00234 anstelle der PLZ, und AT beim Ländercode verwendet:
define Unwetterzentrale UWZ AT 00234 3600
Attribute
Siehe Dokumentation.
Anwendungsbeispiele
Zur Anzeige der Warnhinweise bietet das Modul vordefinierte Funktionen an, die in Weblinks benutzt werden können.
Anzeige der Warnhinweise nur als Icon
Die UWZ-Warnhinweise können über die Definition
define UnwetterFloorplan weblink htmlCode {UWZAsHtmlFP("Unwetterzentrale")}
als reine Icons angezeigt werden. Diese Darstellung eignet sich besonders für die Einbindung in einen FLOORPLAN.
Im gezeigten Beispiel ist Unwetterzentrale der Name des UWZ-Objekts und UnwetterDetailliert der Name des erzeugten weblink-Objekts.
Detaillierte Anzeige der Warnhinweise
Zur Anzeige der Warnhinweise in der ausführlichsten Form kann mit
define UnwetterDetailliert weblink htmlCode {UWZAsHtml("Unwetterzentrale")}
ein weblink definiert werden.
Im gezeigten Beispiel ist Unwetterzentrale der Name des UWZ-Objekts und UnwetterDetailliert der Name des erzeugten weblink-Objekts.
Unwetterkarten
Auch diverse Unwetterkarten können eingebunden und gedownloadet werden. Hierfür stehen eine Reihe von Karten zur Verfügung. Mögliche Karten sind:
- europa
- deutschland
- deutschland-small
- bayern
- bremen
- baden-wuerttemberg
- brandenburg
- berlin
- hessen
- niedersachsen
- rheinland-pfalz
- saarland
- sachsen
- sachsen-anhalt
- thueringen
- nordrhein-westfalen
- mecklenburg-vorpommern
- schleswig-holstein
- hamburg
- oesterreich
- burgenland
- kaernten
- niederoesterreich
- oberoesterreich
- salzburg
- steiermark
- tirol
- vorarlberg
- wien
- isobaren1
- isobaren2
Anzeige von Unwetterkarten
Dies erfolgt ebenfalls durch einem weblink.
define UnwetterKarteDeutschland weblink htmlCode {UWZAsHtmlKarteLand("Unwetterzentrale","Deutschland")}
Download von Unwetterkarten
Um die Karten herunterzuladen um sie beispielsweise mit dem RSS Modul zu nutzen, muss dies am UWZ Device via Attribute konfiguriert werden. Hierfür stehen folgende Attribute zur Verfügung:
- download [0|1]
- savepath (default:"/tmp/")
- maps (leerzeichen separierte Liste der zu speichernden Unwetterkarten)
attr Unwetterzentrale download 1
attr Unwetterzentrale savepath /tmp/
attr Unwetterzentrale maps deutschland europa bayern
Die angegebenen Karten werden bei jedem Lauf erneut heruntergeladen und überschreiben das alte File.
Links
- Unwetterzentrale (für Deutschland)
- wetteralarm (für Österreich)
- Geoservice [1] zur Bestimmung von Geokoordinaten und Areacode