1 """Binary sensor entities for LIFX integration."""
3 from __future__
import annotations
6 BinarySensorDeviceClass,
8 BinarySensorEntityDescription,
15 from .const
import DOMAIN, HEV_CYCLE_STATE
16 from .coordinator
import LIFXUpdateCoordinator
17 from .entity
import LIFXEntity
18 from .util
import lifx_features
22 translation_key=
"clean_cycle",
23 entity_category=EntityCategory.DIAGNOSTIC,
24 device_class=BinarySensorDeviceClass.RUNNING,
29 hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
31 """Set up LIFX from a config entry."""
32 coordinator: LIFXUpdateCoordinator = hass.data[DOMAIN][entry.entry_id]
41 """LIFX HEV cycle state binary sensor."""
45 coordinator: LIFXUpdateCoordinator,
46 description: BinarySensorEntityDescription,
48 """Initialise the sensor."""
51 self.
_attr_unique_id_attr_unique_id = f
"{coordinator.serial_number}_{description.key}"
56 """Handle updated data from the coordinator."""
62 """Handle coordinator updates."""
None _handle_coordinator_update(self)
None _async_update_attrs(self)
None __init__(self, LIFXUpdateCoordinator coordinator, BinarySensorEntityDescription description)
bool|None async_get_hev_cycle_state(self)
None async_setup_entry(HomeAssistant hass, ConfigEntry entry, AddEntitiesCallback async_add_entities)
dict[str, Any] lifx_features(Light bulb)