Unwetter für Österreich mit n8n und einer kleinen Datenbank in FHEM integrieren
Go to file
2024-08-13 14:42:05 +02:00
GetUnwetterFromZAMG.json Dateien nach "/" hochladen 2024-08-13 14:35:00 +02:00
index.php Dateien nach "/" hochladen 2024-08-13 14:32:02 +02:00
README.md README.md aktualisiert 2024-08-13 14:42:05 +02:00
wetter.sql Dateien nach "/" hochladen 2024-08-13 14:28:24 +02:00

FHEM Unwetter für Österreich

Datenbank

Erstelle eine Datenbank in MySQL (nutze dazu die wetter.sql-Datei aus diesem Repo) und lege einen Benutzer mit entsprechenden Rechten an.

PHP API

Lade die Datei index.php herunter und gib sie auf einen neuen vhost auf den Webserver wo dein FHEM läuft.
Ändere die Verbindungsdaten zu der MySQL-Datenbank in der PHP-Datei.
Bsp:

<VirtualHost *:80>
    ProxyPreserveHost On
    ServerName deinfhem.${MYDOMAIN}
    Alias /unwetter "/opt/uwz/www"
    <Directory "/opt/uwz/www/">
        AllowOverride none
        Require all granted
    </Directory>
    CustomLog /var/log/apache2/${LOG} combined
</VirtualHost>

N8N

Importiere "GetUnwetterFromZAMG.json" in dein N8N.
Ändere im HTTP Request die URL von ZAMG zu deiner gewünschten Region (öffne die bestehende im Browser und navigiere zu deinem Bezirk).
Öffne die 4 MySQL Inserts und hinterlege die Datanbank-Verbindungsdaten.

FHEM

Lege folgendes Device in FHEM an:

defmod Unwetter HTTPMOD 0
attr Unwetter event-on-change-reading .*
attr Unwetter extractAllJSON 1
attr Unwetter get01Name ReadUnwetter
attr Unwetter get01Poll 1
attr Unwetter get01URL http://dein-fhmserver.local/unwetter/index.php
attr Unwetter icon weather_storm
attr Unwetter room Wetter
attr Unwetter stateFormat {sprintf(ReadingsVal($name,"warnung","Keine Unwetterdaten..."))}