Gibt es beim @DeutscherWetterdienst oder anderen Diensten irgendwo eine Schnittstelle, über die man *einfach* abfragen kann, ob für Ort XYZ eine Unwetterwarnung besteht? Ob per PLZ oder Gemeindecode wäre mir egal. Möchte nur ungern aus Polygon-Punkten errechnen, ob der Ort darin liegt.

Bisher finde ich nur (nicht standardkonforme?) json-Dateien mit *allen* Warnungen für ganz Deutschland, die ich ungern auf einem Microcontroller parsen würde 😅 Alternativ große zip-Archive, bei denen ich mich erst einmal in die umfangreiche Datenstruktur einarbeiten müsste...

Die Foren sind voll von Menschen, die es (meist erfolglos) probiert haben, gewarnt zu werden. Erfolge sind selten und wenn, dann sind die Projekte viele Jahre alt.

#Unwetterwarnung #API #esp32

@FFMbyBicycle @DeutscherWetterdienst ich hab da vor ewigen Zeiten mal nachgesehen und meine, auf der opendata Plattform war sowas. Komme aber erst morgen dazu, mal nachzuschauen…
@FFMbyBicycle Ich hab noch nicht genau das gefunden, was ich im Kopf habe, aber da bekommst du schon mal die Warnungen nach Regioanlschlüssel rausgeschmissen: https://nina.api.bund.dev/
Bundesamt für Bevölkerungsschutz - NINA API - OpenAPI Documentation

@FFMbyBicycle in der DWD App kann man doch jeden Ort eingeben, für den man gewarnt werden will...
Und über die Karte der Wetterwarnungen, kann man über die Suche einen Ort eingeben und bekommt dann die aktuellen Warnungen angezeigt🤔
Oder meintest du Maschinenauslesbar?

@Ramonsta72 Letzteres ist gesucht 🙂

Die DWD-App nutzt, soweit ich das verstehe, diese Datei als Datenbasis: https://www.dwd.de/DWD/warnungen/warnapp/json/warnings.json

@FFMbyBicycle @Ramonsta72 Vielleicht hilft dir diese Shellpipeline aus der Hölle mit meinen gruseligen sed-Skills. 🙃

curl https://www.dwd.de/DWD/warnungen/warnapp/json/warnings.json | sed s/"warnWetter.loadWarnings("// | sed "s/.\{2\}$//" | jq | grep regionName | sed s/"\"regionName\": \""// | sed s/" "//g | sed s/"\","// | sort -u

Was es tut: diese “.json” abrufen, daraus eine echte .json machen, diese schön formatieren, alle Regionen, für die aktuell eine Warnung existiert ausschneiden, sortieren und die Duplikate wegwerfen.

Was du dann noch brauchst für deinen Anwendungsfall, wäre eine Datei (meinetwegen .csv), in der jede Zeile aus aus Stadt;Kreis besteht. Falls die obige Pipeline nicht direkt die Stadt ausspuckt, kriegst du wenigstens die dazugehörige Region und kannst in einem zweiten Lauf nachgucken, ob für die Region eine Warnung vorliegt.

@FFMbyBicycle @Ramonsta72 was sind das für Zahlen, die als Key für die "warnings" genutzt werden? zb "103401000" für 'state': 'Niedersachsen' ? Irgendein Gemeindecode?
@FFMbyBicycle @DeutscherWetterdienst Vielleicht können die Menschen hinter @FediNINA helfen?
@FFMbyBicycle Das klingt nach einem Fall für @mjay, der sich mit Wettersachen gut auskennt.

@FFMbyBicycle
den gewünschten Service bietet unter anderem @foss_warn.
https://f-droid.org/packages/de.nucleus.foss_warn/
https://github.com/nucleus-ffm/foss_warn

Ob Du das für Deinen Micro-Controller adaptiert bekommst, wäre herauszufinden. ¯\_(ツ)_/¯

Du kannst dort gezielt einstellen für welche Regionen / Warn-Stufe Du informiert werden möchest.

Viel Erfolg!

// @DeutscherWetterdienst

FOSS Warn | F-Droid - Free and Open Source Android App Repository

Receive emergency alerts worldwide

@FFMbyBicycle
ich sehe gerade, @Nucleus hat auch einen Server als #FOSS, der Dich weiterbringen könnte: https://invent.kde.org/webapps/foss-public-alert-server

Gutes Gelingen!

// @DeutscherWetterdienst

@FFMbyBicycle
Im Prinzip könntest du da tatsächlich unseren Server nutzen, solange du statt PLZ oder Gemeindecode eine Boundingbox nimmst. Du findest unsere API-Dokumentation hier: https://invent.kde.org/webapps/foss-public-alert-server/-/blob/master/openAPI-docu.yaml

Zurück bekommst du CAP-alerts als XML. Wenn du Fragen zum Server hast, kannst du auch in unserem Matrix-Space vorbeikommen. Ping mich auch gerne mal, wenn das Projekt Erfolg hat.

Viel Erfolg.

@foss_public_alert_server
@madiko @DeutscherWetterdienst