Home Assistant Unofficial Reference 2024.12.1
const.py
Go to the documentation of this file.
1 """Constants for the opentherm_gw integration."""
2 
3 from dataclasses import dataclass
4 from enum import StrEnum
5 
6 from pyotgw import vars as gw_vars
7 
8 ATTR_GW_ID = "gateway_id"
9 ATTR_LEVEL = "level"
10 ATTR_DHW_OVRD = "dhw_override"
11 ATTR_CH_OVRD = "ch_override"
12 ATTR_TRANSP_CMD = "transp_cmd"
13 ATTR_TRANSP_ARG = "transp_arg"
14 
15 CONF_CLIMATE = "climate"
16 CONF_FLOOR_TEMP = "floor_temperature"
17 CONF_PRECISION = "precision"
18 CONF_READ_PRECISION = "read_precision"
19 CONF_SET_PRECISION = "set_precision"
20 CONF_TEMPORARY_OVRD_MODE = "temporary_override_mode"
21 
22 CONNECTION_TIMEOUT = 10
23 
24 DATA_GATEWAYS = "gateways"
25 DATA_OPENTHERM_GW = "opentherm_gw"
26 
27 DOMAIN = "opentherm_gw"
28 
29 SERVICE_RESET_GATEWAY = "reset_gateway"
30 SERVICE_SET_CH_OVRD = "set_central_heating_ovrd"
31 SERVICE_SET_CLOCK = "set_clock"
32 SERVICE_SET_CONTROL_SETPOINT = "set_control_setpoint"
33 SERVICE_SET_HOT_WATER_SETPOINT = "set_hot_water_setpoint"
34 SERVICE_SET_HOT_WATER_OVRD = "set_hot_water_ovrd"
35 SERVICE_SET_GPIO_MODE = "set_gpio_mode"
36 SERVICE_SET_LED_MODE = "set_led_mode"
37 SERVICE_SET_MAX_MOD = "set_max_modulation"
38 SERVICE_SET_OAT = "set_outside_temperature"
39 SERVICE_SET_SB_TEMP = "set_setback_temperature"
40 SERVICE_SEND_TRANSP_CMD = "send_transparent_command"
41 
42 
43 class OpenThermDataSource(StrEnum):
44  """List valid OpenTherm data sources."""
45 
46  BOILER = gw_vars.BOILER
47  GATEWAY = gw_vars.OTGW
48  THERMOSTAT = gw_vars.THERMOSTAT
49 
50 
52  """List valid OpenTherm device identifiers."""
53 
54  BOILER = "boiler"
55  GATEWAY = "gateway"
56  THERMOSTAT = "thermostat"
57 
58 
59 @dataclass(frozen=True, kw_only=True)
61  """Describe OpenTherm device properties."""
62 
63  data_source: OpenThermDataSource
64  device_identifier: OpenThermDeviceIdentifier
65 
66 
67 BOILER_DEVICE_DESCRIPTION = OpenThermDeviceDescription(
68  data_source=OpenThermDataSource.BOILER,
69  device_identifier=OpenThermDeviceIdentifier.BOILER,
70 )
71 GATEWAY_DEVICE_DESCRIPTION = OpenThermDeviceDescription(
72  data_source=OpenThermDataSource.GATEWAY,
73  device_identifier=OpenThermDeviceIdentifier.GATEWAY,
74 )
75 THERMOSTAT_DEVICE_DESCRIPTION = OpenThermDeviceDescription(
76  data_source=OpenThermDataSource.THERMOSTAT,
77  device_identifier=OpenThermDeviceIdentifier.THERMOSTAT,
78 )