1 """Base entity class for Flo entities."""
3 from __future__
import annotations
8 from .const
import DOMAIN
as FLO_DOMAIN
9 from .coordinator
import FloDeviceDataUpdateCoordinator
13 """A base class for Flo entities."""
15 _attr_force_update =
False
16 _attr_has_entity_name =
True
17 _attr_should_poll =
False
22 device: FloDeviceDataUpdateCoordinator,
25 """Init Flo entity."""
28 self._device: FloDeviceDataUpdateCoordinator = device
32 """Return a device description for device registry."""
34 connections={(CONNECTION_NETWORK_MAC, self._device.mac_address)},
35 identifiers={(FLO_DOMAIN, self._device.id)},
36 serial_number=self._device.serial_number,
37 manufacturer=self._device.manufacturer,
38 model=self._device.model,
39 name=self._device.device_name.capitalize(),
40 sw_version=self._device.firmware_version,
45 """Return True if device is available."""
46 return self._device.available
49 """Update Flo entity."""
50 await self._device.async_request_refresh()
53 """When entity is added to hass."""
def async_added_to_hass(self)
None __init__(self, str entity_type, FloDeviceDataUpdateCoordinator device, **kwargs)
DeviceInfo device_info(self)
None async_write_ha_state(self)
None async_on_remove(self, CALLBACK_TYPE func)
None async_add_listener(HomeAssistant hass, Callable[[], None] listener)