From aff79f709c73f8b79caf37d7a07a8d327d3cf390 Mon Sep 17 00:00:00 2001 From: Jules Dejaeghere Date: Fri, 22 Dec 2023 18:48:07 +0100 Subject: [PATCH] Start with hardcoded values --- custom_components/irm_kmi/__init__.py | 1 + custom_components/irm_kmi/manifest.json | 11 +++++++++ custom_components/irm_kmi/weather.py | 30 +++++++++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 custom_components/irm_kmi/__init__.py create mode 100644 custom_components/irm_kmi/manifest.json create mode 100644 custom_components/irm_kmi/weather.py diff --git a/custom_components/irm_kmi/__init__.py b/custom_components/irm_kmi/__init__.py new file mode 100644 index 0000000..4255eb0 --- /dev/null +++ b/custom_components/irm_kmi/__init__.py @@ -0,0 +1 @@ +"""Integration for IRM KMI weather""" \ No newline at end of file diff --git a/custom_components/irm_kmi/manifest.json b/custom_components/irm_kmi/manifest.json new file mode 100644 index 0000000..c0790e7 --- /dev/null +++ b/custom_components/irm_kmi/manifest.json @@ -0,0 +1,11 @@ +{ + "domain": "irm_kmi", + "name": "IRM KMI Weather Belgium", + "codeowners": ["@jdejaegh"], + "dependencies": [], + "documentation": "https://github.com/jdejaegh/irm-kmi-ha/", + "integration_type": "service", + "iot_class": "cloud_polling", + "requirements": [], + "version": "0.1.0" +} \ No newline at end of file diff --git a/custom_components/irm_kmi/weather.py b/custom_components/irm_kmi/weather.py new file mode 100644 index 0000000..cc9ff8f --- /dev/null +++ b/custom_components/irm_kmi/weather.py @@ -0,0 +1,30 @@ +import logging +from homeassistant.components.weather import WeatherEntity +from homeassistant.components.weather import ATTR_CONDITION_PARTLYCLOUDY +from homeassistant.const import UnitOfTemperature + +_LOGGER = logging.getLogger(__name__) + + +def setup_platform(hass, config, add_devices, discovery_info=None): + add_devices([IrmKmiWeather()]) + _LOGGER.warning("Irm KMI setup") + + +class IrmKmiWeather(WeatherEntity): + + @property + def name(self) -> str: + return "IRM KMI Weather" + + @property + def condition(self) -> str | None: + return ATTR_CONDITION_PARTLYCLOUDY + + @property + def native_temperature(self) -> float | None: + return 20.2 + + @property + def native_temperature_unit(self) -> str: + return UnitOfTemperature.CELSIUS