52 lines
1.4 KiB
Python
52 lines
1.4 KiB
Python
"""Constants for Sternwarte."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import Final
|
|
|
|
DOMAIN = "sternwarte"
|
|
|
|
CONF_HOST = "host"
|
|
CONF_PORT = "port"
|
|
CONF_PASSWORD = "password"
|
|
|
|
DEFAULT_NAME = "Sternwarte"
|
|
DEFAULT_HOST = "192.168.1.110"
|
|
DEFAULT_PORT = 80
|
|
DEFAULT_PASSWORD = "sowo2009"
|
|
|
|
UPDATE_INTERVAL_SECONDS = 1
|
|
POWER_ON_DELAY_SECONDS = 30
|
|
OPEN_SCHEDULE_MAX_AGE_SECONDS = 6 * 60 * 60
|
|
WIND_INTERVAL_SECONDS = 30
|
|
WIND_COUNTER_INDEX = 4
|
|
WIND_FACTOR = (2 / 3) * 3.6
|
|
ROOF_POSITION_MAX = 976
|
|
ROOF_COUNTER_CLOSE_INDEX = 0
|
|
ROOF_COUNTER_OPEN_INDEX = 1
|
|
STORAGE_VERSION = 1
|
|
STORAGE_KEY = f"{DOMAIN}_schedule"
|
|
|
|
SERVICE_OPEN_ROOF = "open_roof"
|
|
SERVICE_CLOSE_ROOF = "close_roof"
|
|
SERVICE_STOP_ROOF = "stop_roof"
|
|
SERVICE_POWER_ON = "power_on"
|
|
SERVICE_POWER_OFF = "power_off"
|
|
SERVICE_CLEAR_SCHEDULE = "clear_schedule"
|
|
SERVICE_CLEAR_OPEN_SCHEDULE = "clear_open_schedule"
|
|
SERVICE_CLEAR_CLOSE_SCHEDULE = "clear_close_schedule"
|
|
SERVICE_SET_NAUTICAL_SCHEDULE = "set_nautical_schedule"
|
|
|
|
ENTITY_ROOF_COVER: Final = "roof"
|
|
ENTITY_ROOF_POWER: Final = "roof_power"
|
|
ENTITY_ROOF_CLOSED: Final = "roof_closed"
|
|
ENTITY_ROOF_OPEN: Final = "roof_open"
|
|
ENTITY_ROOF_MOVING: Final = "roof_moving"
|
|
ENTITY_ROOF_STATUS: Final = "roof_status"
|
|
ENTITY_RAIN: Final = "rain"
|
|
ENTITY_WIND_SPEED: Final = "wind_speed"
|
|
ENTITY_ROOF_POSITION: Final = "roof_position"
|
|
ENTITY_SCHEDULE_OPEN: Final = "schedule_open"
|
|
ENTITY_SCHEDULE_CLOSE: Final = "schedule_close"
|
|
ENTITY_SET_NAUTICAL_SCHEDULE: Final = "set_nautical_schedule"
|