mirror of
https://github.com/jdejaegh/irm-kmi-ha.git
synced 2025-06-27 03:35:56 +02:00
150 lines
5.5 KiB
Python
150 lines
5.5 KiB
Python
"""Constants for the IRM KMI integration."""
|
|
from typing import Final
|
|
|
|
from homeassistant.components.weather import (ATTR_CONDITION_CLEAR_NIGHT,
|
|
ATTR_CONDITION_CLOUDY,
|
|
ATTR_CONDITION_FOG,
|
|
ATTR_CONDITION_LIGHTNING_RAINY,
|
|
ATTR_CONDITION_PARTLYCLOUDY,
|
|
ATTR_CONDITION_POURING,
|
|
ATTR_CONDITION_RAINY,
|
|
ATTR_CONDITION_SNOWY,
|
|
ATTR_CONDITION_SNOWY_RAINY,
|
|
ATTR_CONDITION_SUNNY)
|
|
from homeassistant.const import Platform
|
|
|
|
DOMAIN: Final = 'irm_kmi'
|
|
PLATFORMS: Final = [Platform.WEATHER, Platform.CAMERA, Platform.BINARY_SENSOR, Platform.SENSOR]
|
|
CONFIG_FLOW_VERSION = 4
|
|
|
|
OUT_OF_BENELUX: Final = ["außerhalb der Benelux (Brussels)",
|
|
"Hors de Belgique (Bxl)",
|
|
"Outside the Benelux (Brussels)",
|
|
"Buiten de Benelux (Brussel)"]
|
|
LANGS: Final = ['en', 'fr', 'nl', 'de']
|
|
|
|
OPTION_STYLE_STD: Final = 'standard_style'
|
|
OPTION_STYLE_CONTRAST: Final = 'contrast_style'
|
|
OPTION_STYLE_YELLOW_RED: Final = 'yellow_red_style'
|
|
OPTION_STYLE_SATELLITE: Final = 'satellite_style'
|
|
CONF_STYLE: Final = "style"
|
|
|
|
CONF_STYLE_OPTIONS: Final = [
|
|
OPTION_STYLE_STD,
|
|
OPTION_STYLE_CONTRAST,
|
|
OPTION_STYLE_YELLOW_RED,
|
|
OPTION_STYLE_SATELLITE
|
|
]
|
|
|
|
CONF_DARK_MODE: Final = "dark_mode"
|
|
|
|
STYLE_TO_PARAM_MAP: Final = {
|
|
OPTION_STYLE_STD: 1,
|
|
OPTION_STYLE_CONTRAST: 2,
|
|
OPTION_STYLE_YELLOW_RED: 3,
|
|
OPTION_STYLE_SATELLITE: 4
|
|
}
|
|
|
|
CONF_USE_DEPRECATED_FORECAST: Final = 'use_deprecated_forecast_attribute'
|
|
OPTION_DEPRECATED_FORECAST_NOT_USED: Final = 'do_not_use_deprecated_forecast'
|
|
OPTION_DEPRECATED_FORECAST_DAILY: Final = 'daily_in_deprecated_forecast'
|
|
OPTION_DEPRECATED_FORECAST_TWICE_DAILY: Final = 'twice_daily_in_deprecated_forecast'
|
|
OPTION_DEPRECATED_FORECAST_HOURLY: Final = 'hourly_in_deprecated_forecast'
|
|
|
|
CONF_USE_DEPRECATED_FORECAST_OPTIONS: Final = [
|
|
OPTION_DEPRECATED_FORECAST_NOT_USED,
|
|
OPTION_DEPRECATED_FORECAST_DAILY,
|
|
OPTION_DEPRECATED_FORECAST_TWICE_DAILY,
|
|
OPTION_DEPRECATED_FORECAST_HOURLY
|
|
]
|
|
|
|
CONF_LANGUAGE_OVERRIDE: Final = 'language_override'
|
|
|
|
CONF_LANGUAGE_OVERRIDE_OPTIONS: Final = [
|
|
'none', "fr", "nl", "de", "en"
|
|
]
|
|
|
|
REPAIR_SOLUTION: Final = "repair_solution"
|
|
REPAIR_OPT_MOVE: Final = "repair_option_move"
|
|
REPAIR_OPT_DELETE: Final = "repair_option_delete"
|
|
REPAIR_OPTIONS: Final = [REPAIR_OPT_MOVE, REPAIR_OPT_DELETE]
|
|
|
|
# map ('ww', 'dayNight') tuple from IRM KMI to HA conditions
|
|
IRM_KMI_TO_HA_CONDITION_MAP: Final = {
|
|
(0, 'd'): ATTR_CONDITION_SUNNY,
|
|
(0, 'n'): ATTR_CONDITION_CLEAR_NIGHT,
|
|
(1, 'd'): ATTR_CONDITION_SUNNY,
|
|
(1, 'n'): ATTR_CONDITION_CLEAR_NIGHT,
|
|
(2, 'd'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(2, 'n'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(3, 'd'): ATTR_CONDITION_PARTLYCLOUDY,
|
|
(3, 'n'): ATTR_CONDITION_PARTLYCLOUDY,
|
|
(4, 'd'): ATTR_CONDITION_POURING,
|
|
(4, 'n'): ATTR_CONDITION_POURING,
|
|
(5, 'd'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(5, 'n'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(6, 'd'): ATTR_CONDITION_POURING,
|
|
(6, 'n'): ATTR_CONDITION_POURING,
|
|
(7, 'd'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(7, 'n'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(8, 'd'): ATTR_CONDITION_SNOWY_RAINY,
|
|
(8, 'n'): ATTR_CONDITION_SNOWY_RAINY,
|
|
(9, 'd'): ATTR_CONDITION_SNOWY_RAINY,
|
|
(9, 'n'): ATTR_CONDITION_SNOWY_RAINY,
|
|
(10, 'd'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(10, 'n'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(11, 'd'): ATTR_CONDITION_SNOWY,
|
|
(11, 'n'): ATTR_CONDITION_SNOWY,
|
|
(12, 'd'): ATTR_CONDITION_SNOWY,
|
|
(12, 'n'): ATTR_CONDITION_SNOWY,
|
|
(13, 'd'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(13, 'n'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(14, 'd'): ATTR_CONDITION_CLOUDY,
|
|
(14, 'n'): ATTR_CONDITION_CLOUDY,
|
|
(15, 'd'): ATTR_CONDITION_CLOUDY,
|
|
(15, 'n'): ATTR_CONDITION_CLOUDY,
|
|
(16, 'd'): ATTR_CONDITION_POURING,
|
|
(16, 'n'): ATTR_CONDITION_POURING,
|
|
(17, 'd'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(17, 'n'): ATTR_CONDITION_LIGHTNING_RAINY,
|
|
(18, 'd'): ATTR_CONDITION_RAINY,
|
|
(18, 'n'): ATTR_CONDITION_RAINY,
|
|
(19, 'd'): ATTR_CONDITION_POURING,
|
|
(19, 'n'): ATTR_CONDITION_POURING,
|
|
(20, 'd'): ATTR_CONDITION_SNOWY_RAINY,
|
|
(20, 'n'): ATTR_CONDITION_SNOWY_RAINY,
|
|
(21, 'd'): ATTR_CONDITION_RAINY,
|
|
(21, 'n'): ATTR_CONDITION_RAINY,
|
|
(22, 'd'): ATTR_CONDITION_SNOWY,
|
|
(22, 'n'): ATTR_CONDITION_SNOWY,
|
|
(23, 'd'): ATTR_CONDITION_SNOWY,
|
|
(23, 'n'): ATTR_CONDITION_SNOWY,
|
|
(24, 'd'): ATTR_CONDITION_FOG,
|
|
(24, 'n'): ATTR_CONDITION_FOG,
|
|
(25, 'd'): ATTR_CONDITION_FOG,
|
|
(25, 'n'): ATTR_CONDITION_FOG,
|
|
(26, 'd'): ATTR_CONDITION_FOG,
|
|
(26, 'n'): ATTR_CONDITION_FOG,
|
|
(27, 'd'): ATTR_CONDITION_FOG,
|
|
(27, 'n'): ATTR_CONDITION_FOG
|
|
}
|
|
|
|
MAP_WARNING_ID_TO_SLUG: Final = {
|
|
0: 'wind',
|
|
1: 'rain',
|
|
2: 'ice_or_snow',
|
|
3: 'thunder',
|
|
7: 'fog',
|
|
9: 'cold',
|
|
12: 'thunder_wind_rain',
|
|
13: 'thunderstorm_strong_gusts',
|
|
14: 'thunderstorm_large_rainfall',
|
|
15: 'storm_surge',
|
|
17: 'coldspell'}
|
|
|
|
POLLEN_NAMES: Final = {'Alder', 'Ash', 'Birch', 'Grasses', 'Hazel', 'Mugwort', 'Oak'}
|
|
|
|
POLLEN_TO_ICON_MAP: Final = {
|
|
'alder': 'mdi:tree', 'ash': 'mdi:tree', 'birch': 'mdi:tree', 'grasses': 'mdi:grass', 'hazel': 'mdi:tree',
|
|
'mugwort': 'mdi:sprout', 'oak': 'mdi:tree'
|
|
}
|