Files
core/homeassistant/components/switchbot_cloud/const.py

60 lines
1.4 KiB
Python

"""Constants for the SwitchBot Cloud integration."""
from datetime import timedelta
from enum import Enum
from typing import Final
DOMAIN: Final = "switchbot_cloud"
ENTRY_TITLE = "SwitchBot Cloud"
DEFAULT_SCAN_INTERVAL = timedelta(seconds=600)
SENSOR_KIND_TEMPERATURE = "temperature"
SENSOR_KIND_HUMIDITY = "humidity"
SENSOR_KIND_BATTERY = "battery"
VACUUM_FAN_SPEED_QUIET = "quiet"
VACUUM_FAN_SPEED_STANDARD = "standard"
VACUUM_FAN_SPEED_STRONG = "strong"
VACUUM_FAN_SPEED_MAX = "max"
AFTER_COMMAND_REFRESH = 5
COVER_ENTITY_AFTER_COMMAND_REFRESH = 10
HUMIDITY_LEVELS = {
34: 101, # Low humidity mode
67: 102, # Medium humidity mode
100: 103, # High humidity mode
}
class AirPurifierMode(Enum):
"""Air Purifier Modes."""
NORMAL = 1
AUTO = 2
SLEEP = 3
PET = 4
@classmethod
def get_modes(cls) -> list[str]:
"""Return a list of available air purifier modes as lowercase strings."""
return [mode.name.lower() for mode in cls]
class Humidifier2Mode(Enum):
"""Enumerates the available modes for a SwitchBot humidifier2."""
HIGH = 1
MEDIUM = 2
LOW = 3
QUIET = 4
TARGET_HUMIDITY = 5
SLEEP = 6
AUTO = 7
DRYING_FILTER = 8
@classmethod
def get_modes(cls) -> list[str]:
"""Return a list of available humidifier2 modes as lowercase strings."""
return [mode.name.lower() for mode in cls]