From a93e583c324a9f84b1eb22657c166c3fb67d8b3a Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Mon, 20 May 2024 10:44:16 +0200 Subject: [PATCH 1/7] Update README.md --- README.md | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/README.md b/README.md index 02f517c..12bfc0d 100644 --- a/README.md +++ b/README.md @@ -20,8 +20,10 @@ This integration provides the following things: - A weather entity with current weather conditions - Weather forecasts (hourly, daily and twice-daily) [using the service `weather.get_forecasts`](https://www.home-assistant.io/integrations/weather/#service-weatherget_forecasts) +- Short-term rain forecasts using the radar data using the custom service `ìrm_kmi.get_forecasts_radar` - A camera entity for rain radar and short-term rain previsions - A binary sensor for weather warnings +- A sensor with the timestamp for the start of the next warning - Sensors for active pollens The following options are available: @@ -74,6 +76,12 @@ Mapping was established based on my own interpretation of the icons and conditio ## Warning details +Warnings are represented with two sensors: + - a binary sensor showing if any warning is currently active + - a timestamp sensor with the start time of the next warning (if any, else `unknown`) + +### Binary sensor for ongoing warnings + The warning binary sensor is on if a warning is currently relevant (i.e. warning start time < current time < warning end time). Warnings may be issued by the IRM KMI ahead of time but the binary sensor is only on when at least one of the issued warnings is relevant. @@ -109,6 +117,15 @@ The following table summarizes the different known warning types. Other warning The sensor has an attribute called `active_warnings_friendly_names`, holding a comma separated list of the friendly names of the currently active warnings (e.g. `Fog, Ice or snow`). There is no particular order for the list. +### Timestamp sensor for upcoming warnings + +The state is the start time of the earliest next warning, if any; else `unknown`. + +The sensor has two additional attributes: + - `next_warnings`: a list of all the upcoming warnings, with the same data as the `warnings` attribute of the binary sensor (see above) + - `next_warning_friendly_names` holding a comma separated list of the friendly names of the currently active warnings (e.g. `Fog, Ice or snow`). There is no particular order for the list. + + ## Pollen details One sensor per pollen is created and each sensor can have one of the following values: active, green, yellow, orange, @@ -121,6 +138,29 @@ The exact meaning of each color can be found on the IRM KMI webpage: [Pollen all This data sent to the app would result in oak and ash have the 'active' state, birch would be 'purple' and alder would be 'green'. All the other pollens would be 'none'. +## Custom service `irm_kmi.get_forecasts_radar` + +The service returns a list of Forecast objects (similar to `weather.get_forecasts`) but only data about precipitation is available. +The data is taken from the radar forecast: it is useful for very short-term rain forecast. + +The service can optionally include data from the past (like shown on the radar). + +Here is an example of service call: + +```yaml +service: irm_kmi.get_forecasts_radar +target: + entity_id: weather.home +data: + include_past_forecasts: true +``` + +The data is optional and defaults to `false`. + +Even when `include_past_forecasts` is `false`, the current 10 minutes interval is returned so the first item in the +response is in the past (at most 10 minutes in the past). This can be useful to determine if rain is currently falling +and how strong it is. + ## Disclaimer This is a personal project and isn't in any way affiliated with, sponsored or endorsed by [The Royal Meteorological From a1e0b7d39458270b399977e856730ad63463c168 Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Mon, 20 May 2024 10:45:33 +0200 Subject: [PATCH 2/7] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 12bfc0d..fd47aeb 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ This integration provides the following things: - A weather entity with current weather conditions - Weather forecasts (hourly, daily and twice-daily) [using the service `weather.get_forecasts`](https://www.home-assistant.io/integrations/weather/#service-weatherget_forecasts) -- Short-term rain forecasts using the radar data using the custom service `ìrm_kmi.get_forecasts_radar` +- Short-term rain forecasts using the radar data using the [custom service `ìrm_kmi.get_forecasts_radar`](#custom-service-irm_kmiget_forecasts_radar) - A camera entity for rain radar and short-term rain previsions - A binary sensor for weather warnings - A sensor with the timestamp for the start of the next warning From e4a6d254af9620a453910473363100da816f896a Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Mon, 20 May 2024 10:46:12 +0200 Subject: [PATCH 3/7] Make service parameter optional --- custom_components/irm_kmi/services.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/irm_kmi/services.yaml b/custom_components/irm_kmi/services.yaml index fecdd6d..ebb55fa 100644 --- a/custom_components/irm_kmi/services.yaml +++ b/custom_components/irm_kmi/services.yaml @@ -5,7 +5,7 @@ get_forecasts_radar: domain: weather fields: include_past_forecasts: - required: true + required: false default: false selector: boolean: From 35bc326267415710fd1d3a4b28efe0bc4e07c8f3 Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Mon, 20 May 2024 10:54:42 +0200 Subject: [PATCH 4/7] Add User-Agent to the client --- custom_components/irm_kmi/api.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/custom_components/irm_kmi/api.py b/custom_components/irm_kmi/api.py index a106fd7..44e53af 100644 --- a/custom_components/irm_kmi/api.py +++ b/custom_components/irm_kmi/api.py @@ -69,6 +69,10 @@ async def _api_wrapper( headers: dict | None = None, ) -> any: """Get information from the API.""" + if headers is None: + headers = {'User-Agent': 'github.com/jdejaegh/irm-kmi-ha'} + else: + headers['User-Agent'] = 'github.com/jdejaegh/irm-kmi-ha' try: async with async_timeout.timeout(60): From d85d4c72645995ee8941b20e895fc7e7f010b4ab Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Mon, 20 May 2024 11:04:10 +0200 Subject: [PATCH 5/7] Add big blue buttons to install and configure the integration in one click --- README.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fd47aeb..1cd242c 100644 --- a/README.md +++ b/README.md @@ -7,11 +7,22 @@ Although the provider is Belgian, the data is available for Belgium 🇧🇪, Lu ## Installing via HACS +[![Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=jdejaegh&repository=irm-kmi-ha&category=integration) + +or + 1. Go to HACS > Integrations 2. Add this repo into your [HACS custom repositories](https://hacs.xyz/docs/faq/custom_repositories/) 3. Search for IRM KMI and download it 4. Restart Home Assistant -5. Configure the integration via the UI (search for 'IRM KMI') + +## Set up the integration + +[![Open your Home Assistant instance and start setting up a new integration.](https://my.home-assistant.io/badges/config_flow_start.svg)](https://my.home-assistant.io/redirect/config_flow_start/?domain=irm_kmi) + +or + +1. Configure the integration via the UI (search for 'IRM KMI') ## Features From d75756968ae2a76e8b93668a0a285f9d65c9c831 Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Mon, 20 May 2024 11:08:54 +0200 Subject: [PATCH 6/7] Update sensors screenshot --- img/sensors.png | Bin 32768 -> 33326 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/img/sensors.png b/img/sensors.png index b26a9ad9f215c0a073b13b66627b4876e89d4f47..daf8bedfeb709f7d1d164412afac23b8b09738f2 100644 GIT binary patch literal 33326 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 Date: Mon, 20 May 2024 11:13:33 +0200 Subject: [PATCH 7/7] Update license date --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index 02f3855..9eb11df 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Jules Dejaeghere +Copyright (c) 2023-2024 Jules Dejaeghere Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal