1 """Constants used by insteon component."""
5 from pyinsteon.groups
import (
43 Platform.BINARY_SENSOR,
53 Platform.BINARY_SENSOR,
58 CONF_IP_PORT =
"ip_port"
59 CONF_HUB_USERNAME =
"username"
60 CONF_HUB_PASSWORD =
"password"
61 CONF_HUB_VERSION =
"hub_version"
62 CONF_OVERRIDE =
"device_override"
63 CONF_PLM_HUB_MSG =
"Must configure either a PLM port or a Hub host"
65 CONF_SUBCAT =
"subcat"
66 CONF_FIRMWARE =
"firmware"
67 CONF_PRODUCT_KEY =
"product_key"
68 CONF_X10 =
"x10_devices"
69 CONF_HOUSECODE =
"housecode"
70 CONF_UNITCODE =
"unitcode"
71 CONF_DIM_STEPS =
"dim_steps"
72 CONF_X10_ALL_UNITS_OFF =
"x10_all_units_off"
73 CONF_X10_ALL_LIGHTS_ON =
"x10_all_lights_on"
74 CONF_X10_ALL_LIGHTS_OFF =
"x10_all_lights_off"
75 CONF_DEV_PATH =
"dev_path"
80 SRV_ADD_ALL_LINK =
"add_all_link"
81 SRV_DEL_ALL_LINK =
"delete_all_link"
82 SRV_LOAD_ALDB =
"load_all_link_database"
83 SRV_PRINT_ALDB =
"print_all_link_database"
84 SRV_PRINT_IM_ALDB =
"print_im_all_link_database"
85 SRV_X10_ALL_UNITS_OFF =
"x10_all_units_off"
86 SRV_X10_ALL_LIGHTS_OFF =
"x10_all_lights_off"
87 SRV_X10_ALL_LIGHTS_ON =
"x10_all_lights_on"
88 SRV_ALL_LINK_GROUP =
"group"
89 SRV_ALL_LINK_MODE =
"mode"
90 SRV_LOAD_DB_RELOAD =
"reload"
91 SRV_CONTROLLER =
"controller"
92 SRV_RESPONDER =
"responder"
93 SRV_HOUSECODE =
"housecode"
94 SRV_SCENE_ON =
"scene_on"
95 SRV_SCENE_OFF =
"scene_off"
96 SRV_ADD_DEFAULT_LINKS =
"add_default_links"
98 SIGNAL_LOAD_ALDB =
"load_aldb"
99 SIGNAL_PRINT_ALDB =
"print_aldb"
100 SIGNAL_SAVE_DEVICES =
"save_devices"
101 SIGNAL_ADD_ENTITIES =
"insteon_add_entities"
102 SIGNAL_ADD_DEFAULT_LINKS =
"add_default_links"
103 SIGNAL_ADD_DEVICE_OVERRIDE =
"add_device_override"
104 SIGNAL_REMOVE_HA_DEVICE =
"insteon_remove_ha_device"
105 SIGNAL_REMOVE_INSTEON_DEVICE =
"insteon_remove_insteon_device"
106 SIGNAL_REMOVE_DEVICE_OVERRIDE =
"insteon_remove_device_override"
107 SIGNAL_REMOVE_ENTITY =
"insteon_remove_entity"
108 SIGNAL_ADD_X10_DEVICE =
"insteon_add_x10_device"
109 SIGNAL_REMOVE_X10_DEVICE =
"insteon_remove_x10_device"
110 SIGNAL_ADD_DEFAULT_LINKS =
"add_default_links"
131 EVENT_GROUP_ON =
"insteon.button_on"
132 EVENT_GROUP_OFF =
"insteon.button_off"
133 EVENT_GROUP_ON_FAST =
"insteon.button_on_fast"
134 EVENT_GROUP_OFF_FAST =
"insteon.button_off_fast"
135 EVENT_CONF_BUTTON =
"button"
137 STATE_NAME_LABEL_MAP = {
138 DIMMABLE_LIGHT_MAIN:
"Main",
139 ON_OFF_SWITCH_A:
"Button A",
140 ON_OFF_SWITCH_B:
"Button B",
141 ON_OFF_SWITCH_C:
"Button C",
142 ON_OFF_SWITCH_D:
"Button D",
143 ON_OFF_SWITCH_E:
"Button E",
144 ON_OFF_SWITCH_F:
"Button F",
145 ON_OFF_SWITCH_G:
"Button G",
146 ON_OFF_SWITCH_H:
"Button H",
147 ON_OFF_SWITCH_MAIN:
"Main",
149 DIMMABLE_LIGHT:
"Light",
150 DIMMABLE_OUTLET:
"Outlet",
151 MOTION_SENSOR:
"Motion",
152 LIGHT_SENSOR:
"Light",
153 LOW_BATTERY:
"Battery",
154 LEAK_SENSOR_WET:
"Wet",
156 SMOKE_SENSOR:
"Smoke",
157 CO_SENSOR:
"Carbon Monoxide",
160 SENSOR_MALFUNCTION:
"Malfunction",
161 HEARTBEAT:
"Heartbeat",
162 OPEN_CLOSE_SENSOR:
"Sensor",
163 ON_OFF_SWITCH:
"Light",
164 ON_OFF_OUTLET_TOP:
"Top",
165 ON_OFF_OUTLET_BOTTOM:
"Bottom",
172 DEVICE_ID =
"device_id"
173 DEVICE_ADDRESS =
"device_address"
174 ALDB_RECORD =
"record"
175 PROPERTY_NAME =
"name"
176 PROPERTY_VALUE =
"value"
177 HA_DEVICE_NOT_FOUND =
"ha_device_not_found"
178 INSTEON_DEVICE_NOT_FOUND =
"insteon_device_not_found"
179 MULTIPLE =
"multiple"
181 INSTEON_ADDR_REGEX = re.compile(
r"([A-Fa-f0-9]{2}\.?[A-Fa-f0-9]{2}\.?[A-Fa-f0-9]{2})$")