1 """Support for Vallox ventilation unit binary sensors."""
3 from __future__
import annotations
5 from dataclasses
import dataclass
9 BinarySensorEntityDescription,
16 from .const
import DOMAIN
17 from .coordinator
import ValloxDataUpdateCoordinator
18 from .entity
import ValloxEntity
22 """Representation of a Vallox binary sensor."""
24 entity_description: ValloxBinarySensorEntityDescription
25 _attr_entity_category = EntityCategory.DIAGNOSTIC
30 coordinator: ValloxDataUpdateCoordinator,
31 description: ValloxBinarySensorEntityDescription,
33 """Initialize the Vallox binary sensor."""
42 """Return true if the binary sensor is on."""
43 return self.coordinator.data.get(self.
entity_descriptionentity_description.metric_key) == 1
46 @dataclass(frozen=True, kw_only=True)
48 """Describes Vallox binary sensor entity."""
53 BINARY_SENSOR_ENTITIES: tuple[ValloxBinarySensorEntityDescription, ...] = (
56 translation_key=
"post_heater",
57 metric_key=
"A_CYC_IO_HEATER",
65 async_add_entities: AddEntitiesCallback,
67 """Set up the sensors."""
69 data = hass.data[DOMAIN][entry.entry_id]
73 for description
in BINARY_SENSOR_ENTITIES
None __init__(self, str name, ValloxDataUpdateCoordinator coordinator, ValloxBinarySensorEntityDescription description)
None async_setup_entry(HomeAssistant hass, ConfigEntry entry, AddEntitiesCallback async_add_entities)