59 lines
1.8 KiB
Python
59 lines
1.8 KiB
Python
""" A custom data class to manage specific presets for VTherm. """
|
|
|
|
from homeassistant.components.climate.const import PRESET_NONE, PRESET_BOOST, PRESET_ECO, PRESET_COMFORT, PRESET_ACTIVITY
|
|
|
|
# from .const import PRESET_SAFETY, PRESET_POWER, PRESET_FROST_PROTECTION
|
|
|
|
# Liste des presets valides (à adapter selon ton projet)
|
|
PRESET_POWER = "power"
|
|
PRESET_SAFETY = "safety"
|
|
PRESET_FROST_PROTECTION = "frost"
|
|
|
|
PRESET_TEMP_SUFFIX = "_temp"
|
|
PRESET_AC_SUFFIX = "_ac"
|
|
PRESET_AWAY_SUFFIX = "_away"
|
|
|
|
|
|
# Constants for all VTherm presets
|
|
class VThermPreset(str):
|
|
"""The List of Preset used by VTherm"""
|
|
|
|
NONE = PRESET_NONE
|
|
FROST = PRESET_FROST_PROTECTION
|
|
ECO = PRESET_ECO
|
|
COMFORT = PRESET_COMFORT
|
|
BOOST = PRESET_BOOST
|
|
SAFETY = PRESET_SAFETY
|
|
POWER = PRESET_POWER
|
|
ACTIVITY = PRESET_ACTIVITY
|
|
|
|
|
|
class VThermPresetWithAC(str):
|
|
"""Supplementary preset for AC hvac mode"""
|
|
|
|
ECO = VThermPreset.ECO + PRESET_AC_SUFFIX
|
|
COMFORT = VThermPreset.COMFORT + PRESET_AC_SUFFIX
|
|
BOOST = VThermPreset.BOOST + PRESET_AC_SUFFIX
|
|
FROST = VThermPreset.FROST + PRESET_AC_SUFFIX
|
|
|
|
|
|
class VThermPresetWithAway(str):
|
|
"""The List of Preset of Away type used by VTherm"""
|
|
|
|
FROST = VThermPreset.FROST + PRESET_AWAY_SUFFIX
|
|
ECO = VThermPreset.ECO + PRESET_AWAY_SUFFIX
|
|
COMFORT = VThermPreset.COMFORT + PRESET_AWAY_SUFFIX
|
|
BOOST = VThermPreset.BOOST + PRESET_AWAY_SUFFIX
|
|
|
|
|
|
class VThermPresetWithACAway(str):
|
|
"""The List of Preset for Ac and Away used by VTherm"""
|
|
|
|
FROST = VThermPreset.FROST + PRESET_AC_SUFFIX + PRESET_AWAY_SUFFIX
|
|
ECO = VThermPreset.ECO + PRESET_AC_SUFFIX + PRESET_AWAY_SUFFIX
|
|
COMFORT = VThermPreset.COMFORT + PRESET_AC_SUFFIX + PRESET_AWAY_SUFFIX
|
|
BOOST = VThermPreset.BOOST + PRESET_AC_SUFFIX + PRESET_AWAY_SUFFIX
|
|
|
|
|
|
HIDDEN_PRESETS = [VThermPreset.POWER, VThermPreset.SAFETY]
|