1 """Support for Acmeda Roller Blind Batteries."""
3 from __future__
import annotations
11 from .
import AcmedaConfigEntry
12 from .const
import ACMEDA_HUB_UPDATE
13 from .entity
import AcmedaEntity
14 from .helpers
import async_add_acmeda_entities
19 config_entry: AcmedaConfigEntry,
20 async_add_entities: AddEntitiesCallback,
22 """Set up the Acmeda Rollers from a config entry."""
23 hub = config_entry.runtime_data
25 current: set[int] = set()
28 def async_add_acmeda_sensors() -> None:
30 hass, AcmedaBattery, config_entry, current, async_add_entities
33 hub.cleanup_callbacks.append(
36 ACMEDA_HUB_UPDATE.format(config_entry.entry_id),
37 async_add_acmeda_sensors,
43 """Representation of an Acmeda cover sensor."""
45 _attr_device_class = SensorDeviceClass.BATTERY
46 _attr_native_unit_of_measurement = PERCENTAGE
50 """Return the state of the device."""
51 return self.
rollerroller.battery
float|int|None native_value(self)
None async_add_acmeda_entities(HomeAssistant hass, type entity_class, AcmedaConfigEntry config_entry, set[int] current, AddEntitiesCallback async_add_entities)
None async_setup_entry(HomeAssistant hass, AcmedaConfigEntry config_entry, AddEntitiesCallback async_add_entities)
Callable[[], None] async_dispatcher_connect(HomeAssistant hass, str signal, Callable[..., Any] target)