Skip to content

jolichter/ioBroker_dwdWeather

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 

Repository files navigation

ioBroker_dwdWeather

DWD Wettervorhersage und stündliche Messdaten für ioBroker

HINWEIS: Dieses Projekt ist ein privates Open-Source-Projekt und steht in keiner Verbindung zum Deutschen Wetterdienst (Copyright).

Das JavaScript lädt öffentliche Wetterdaten vom deutschen Wetterdienst über JSON- bzw. CSV-Links.

DWD-Logo

Der JavaScript-Code in ioBroker verwendet einen JSON-Datensatz von der API des Deutschen Wetterdienstes https://dwd.api.bund.dev, um automatisch entsprechende Datenpunkte für eine Wettervorhersage zu erstellen. Ebenso können stündliche Messdaten (POI) über https://opendata.dwd.de (CSV-Datei) geladen werden und entsprechende Datenpunkte werden erstellt. Durch die regelmäßige Aktualisierung der Datenpunkte bleiben die Informationen stets auf dem neuesten Stand. Dies ermöglicht eine einfache Integration der Wetterdaten in Visualisierungen und Automatisierungen innerhalb von ioBroker.

Folgende Funktionen und Optionen sind im Code enthalten:

  • Der Code verwendet das Node.js-Modul 'axios' für HTTP-Anfragen.
  • Variable enableLogs ermöglicht das Aktivieren oder Deaktivieren von Logs, die Informationen über den Skriptablauf liefern.
  • Variable stationIds enthält eine Liste von Station-IDs für den Wetterdienst. Hier können beliebig viele Station-IDs hinzugefügt werden, getrennt durch Kommas.
  • Variable stationIdentifiers ist für die Stationskennung (wenn bekannt, stündliche Messdaten von DWD Wetterstationen). Es können beliebig viele Station-Identifiers hinzugefügt werden, getrennt durch Kommas.
  • Die Optionen enableForecast1 und enableForecast2 steuern das Aktualisieren der Datenpunkte für forecast1 und forecast2. Du kannst sie auf true setzen, um die entsprechenden Datenpunkte zu aktivieren.
  • Variable splitArrays steuert das Aufteilen von Array-Werten in separate Datenpunkte (nur forecast1 und forecast2). Bei Bedarf können Array-Werte auf diese Weise aufgeteilt werden.
  • Die Funktionen createStateIfNotExists() und setStateIfChanged() werden verwendet, um Datenpunkte zu erstellen und ihre Werte zu aktualisieren, wenn sich die Werte geändert haben.
  • Ungenutzte Datenpunkte (Stationen) können manuell über die ioBroker-Admin-Oberfläche gelöscht werden.
  • Die Funktion convertToISODate() wird genutzt, um Linux-Zeitformate in das ISO-Datumformat zu konvertieren, insbesondere für die Werte "sunrise", "sunset", "moonrise" und "moonset".
  • Die Funktionen updateDataPoints() und updateWeatherData() aktualisieren die Datenpunkte anhand der abgerufenen Wetterdaten. Dabei werden sowohl die Vorhersagen (forecast1 und forecast2) als auch die Tagesdaten aktualisiert.
  • Der Code enthält eine Funktion updateCurrentObservations(), die die aktuellen Messdaten aus einer CSV-Datei aktualisiert, sofern eine Stationskennung angegeben ist. Hierbei werden die stündlichen Messdaten aus der CSV-Datei extrahiert und in entsprechende Datenpunkte geschrieben.
  • Es werden regelmäßige Aktualisierungen der Wetterdaten und aktuellen Messdaten geplant.

Bitte beachte, dass es sich um eine Beta-Version handelt, was bedeutet, dass weitere Verbesserungen und Anpassungen möglich und erforderlich sein können. Das Skript kann als Ausgangspunkt für weitere Entwicklungen und Anpassungen dienen, um zusätzliche Funktionen hinzuzufügen oder spezifische Anforderungen zu erfüllen.

PS: Mir ist kein Echtzeit-Wetterdatenservice des DWD bekannt. Falls jemand darüber Bescheid weiß, würde ich mich über eine entsprechende Information freuen.

Datenpunkte DWD-API dwdDatenpunkte-API

Datenpunkte DWD-POI dwdDatenpunkte-POI

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert. Weitere Informationen finden Ihr in der Lizenzdatei.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published