1 """Support for control of ElkM1 binary sensors."""
3 from __future__
import annotations
7 from elkm1_lib.const
import ZoneLogicalStatus, ZoneType
8 from elkm1_lib.elements
import Element
9 from elkm1_lib.zones
import Zone
15 from .
import ElkM1ConfigEntry
16 from .entity
import ElkAttachedEntity, ElkEntity
21 config_entry: ElkM1ConfigEntry,
22 async_add_entities: AddEntitiesCallback,
24 """Create the Elk-M1 sensor platform."""
25 elk_data = config_entry.runtime_data
27 auto_configure = elk_data.auto_configure
29 entities: list[ElkEntity] = []
30 for element
in elk.zones:
32 if element.definition
in {ZoneType.TEMPERATURE, ZoneType.ANALOG_ZONE}:
36 if not element.configured:
38 elif not elk_data.config[
"zone"][
"included"][element.index]:
47 """Representation of ElkM1 binary sensor."""
50 _attr_entity_registry_enabled_default =
False
55 self.
_element_element.logical_status != ZoneLogicalStatus.NORMAL
None _element_changed(self, Element _, Any changeset)
None async_setup_entry(HomeAssistant hass, ElkM1ConfigEntry config_entry, AddEntitiesCallback async_add_entities)