openhab-addons/bundles/org.openhab.binding.dwdpollenflug/README.md
lsiepel 1a42353cc9
Multiple binding markdown fixes (#17422)
Signed-off-by: Leo Siepel <leosiepel@gmail.com>
2024-09-28 17:46:53 +02:00

202 lines
9.5 KiB
Markdown

# DWD Pollenflug Binding
The "Deutsche Wetterdienst" (DWD) reports the current pollen count index for Germany on a daily base and a forecast for tomorrow and the day after tomorrow.
This binding allows you to retrieve this data for your region or partregion.
You can find a map of the data [here](https://isabel.dwd.de/DE/leistungen/gefahrenindizespollen/gefahrenindexpollen.html)
## Supported Things
This binding supports a bridge thing (`bridge`), which polls the dataset for Germany in an adjustable interval.
And it supports a region thing (`region`), representing the data for all pollen types of a region or partregion.
## Discovery
This binding adds a default `bridge` thing to the Inbox.
This can be used for `region` things you may add manually.
## Thing Configuration
### Bridge
| Parameter | Default | Required | Description |
| --------- | :-----: | :------: | ------------------------------------------------------------------------------------ |
| `refresh` | 30 | no | Define the interval for polling the data from DWD in minutes. Minimum is 15 minutes. |
### Region
| Parameter | Default | Required | Description |
| ---------- | :-----: | :------: | ------------------------------------------------------------------- |
| `regionID` | - | yes | The id of the region. The available options are in the table below. |
#### Manual region or partregion selection
The region ID is the partregion_id or if there is no partregion the region_id from this [json](https://opendata.dwd.de/climate_environment/health/alerts/s31fg.json) of DWD.
You can refer to the following table.
| regionID | Region | Partregion |
| -------- | ------------------------------ | -------------------------------------------------- |
| 11 | Schleswig-Holstein und Hamburg | Inseln und Marschen |
| 12 | Schleswig-Holstein und Hamburg | Geest, Schleswig-Holstein und Hamburg |
| 20 | Mecklenburg-Vorpommern | - |
| 31 | Niedersachsen und Bremen | Westl. Niedersachsen/Bremen |
| 32 | Niedersachsen und Bremen | Östl. Niedersachsen |
| 41 | Nordrhein-Westfalen | Rhein.-Westfäl. Tiefland |
| 42 | Nordrhein-Westfalen | Ostwestfalen |
| 43 | Nordrhein-Westfalen | Mittelgebirge NRW |
| 50 | Brandenburg und Berlin | - |
| 61 | Sachsen-Anhalt | Tiefland Sachsen-Anhalt |
| 62 | Sachsen-Anhalt | Harz |
| 71 | Thüringen | Tiefland Thüringen |
| 72 | Thüringen | Mittelgebirge Thüringen |
| 81 | Sachsen | Tiefland Sachsen |
| 82 | Sachsen | Mittelgebirge Sachsen |
| 91 | Hessen | Nordhessen und hess. Mittelgebirge |
| 92 | Hessen | Rhein-Main |
| 101 | Rheinland-Pfalz und Saarland | Rhein, Pfalz, Nahe und Mosel |
| 102 | Rheinland-Pfalz und Saarland | Mittelgebirgsbereich Rheinland-Pfalz |
| 103 | Rheinland-Pfalz und Saarland | Saarland |
| 111 | Baden-Württemberg | Oberrhein und unteres Neckartal |
| 112 | Baden-Württemberg | Hohenlohe/mittlerer Neckar/Oberschwaben |
| 113 | Baden-Württemberg | Mittelgebirge Baden-Württemberg |
| 121 | Bayern | Allgäu/Oberbayern/Bay. Wald |
| 122 | Bayern | Donauniederungen |
| 123 | Bayern | Bayern n. der Donau, o. Bayr. Wald, o. Mainfranken |
| 124 | Bayern | Mainfranken |
## Channels
The bridge thing has following channels:
| channel | description |
| --------------------- | ---------------------------------------------- |
| `updates#refreshed` | Hold the time of the bridge's last refresh |
| `updates#last_update` | The time when data was last updated by DWD |
| `updates#next_update` | The time when data will be updated next by DWD |
For each of the eight pollen types reported by DWD the region thing has three channels for today, tomorrow and the day after tomorrow.
| channels | pollen type | german name |
| ---------------------- | ----------- | ----------- |
| `alder#today` | alder | Erle |
| `alder#tomorrow` | | |
| `alder#dayafter_to` | | |
| `ambrosia#today` | ambrosia | Ambrosia |
| `ambrosia#tomorrow` | | |
| `ambrosia#dayafter_to` | | |
| `ash#today` | ash-tree | Esche |
| `ash#tomorrow` | | |
| `ash#dayafter_to` | | |
| `birch#today` | birch | Birke |
| `birch#tomorrow` | | |
| `birch#dayafter_to` | | |
| `grasses#today` | grasses | Gräser |
| `grasses#tomorrow` | | |
| `grasses#dayafter_to` | | |
| `hazel#today` | hazel | Hasel |
| `hazel#tomorrow` | | |
| `hazel#dayafter_to` | | |
| `mugwort#today` | mugwort | Beifuß |
| `mugwort#tomorrow` | | |
| `mugwort#dayafter_to` | | |
| `rye#today` | rye | Roggen |
| `rye#tomorrow` | | |
| `rye#dayafter_to` | | |
There are the following possible string values:
| value | description |
| ----- | --------------------------- |
| -1 | not specified |
| 0 | no pollen pollution |
| 0-1 | no to low pollen count |
| 1 | low pollen count |
| 1-2 | low to medium pollen count |
| 2 | medium pollen count |
| 2-3 | medium to high pollen count |
| 3 | high pollen count |
## Full Example
### Things file for region "Brandenburg und Berlin" and partregion "Bayern - Mainfranken"
```java
Bridge dwdpollenflug:bridge:dwd "DWD pollen count Bridge" [refresh="15"] {
Thing region region50 "DWD pollen count region" @ "APIS" [regionID="50"]
Thing region partregion124 "DWD pollen count partregion" @ "APIS" [regionID="124"]
}
```
### Items example for region "Brandenburg und Berlin" and pollen type ash-tree
```java
String pollenTodayEsche
"Esche [MAP(pollen.map):%s]"
{channel="dwdpollenflug:region:dwd:region50:ash#today"}
String pollenTomorrowEsche
"Esche morgen [MAP(pollen.map):%s]"
{channel="dwdpollenflug:region:dwd:region50:ash#tomorrow"}
String pollenDayAfterTomorrowEsche
"Esche übermorgen [MAP(pollen.map):%s]"
{channel="dwdpollenflug:region:dwd:region50:ash#dayafter_to"}
```
### Transform map file pollen.map
```text
0=keine (0)
0-1=keine bis gering (0-1)
1=gering (1)
1-2=gering bis mittel (1-2)
2=mittel (2)
2-3=mittel bis hoch (2-3)
3=hoch (3)
-1=keine Daten
-=keine Daten
NULL=keine Daten
```
### Sitemap example for region "Brandenburg und Berlin" and pollen type ash-tree
```perl
Text label="Pollenflugindex" {
Frame {
Text item=pollenTodayEsche
valuecolor=[=="3"="#f00014",
=="2-3"="#f00014",
=="2"="#ff9900",
=="1-2"="#ff9900",
=="1"="#ffff00",
=="0-1"="#00c83c"] {
Frame {
Text item=pollenTodayEsche
valuecolor=[=="3"="#f00014",
=="2-3"="#f00014",
=="2"="#ff9900",
=="1-2"="#ff9900",
=="1"="#ffff00",
=="0-1"="#00c83c"]
Text item=pollenTomorrowEsche
valuecolor=[=="3"="#f00014",
=="2-3"="#f00014",
=="2"="#ff9900",
=="1-2"="#ff9900",
=="1"="#ffff00",
=="0-1"="#00c83c"]
Text item=pollenDayAfterTomorrowEsche
valuecolor=[=="3"="#f00014",
=="2-3"="#f00014",
=="2"="#ff9900",
=="1-2"="#ff9900",
=="1"="#ffff00",
=="0-1"="#00c83c"]
}
}
}
}
```