Home Assistant Unofficial Reference 2024.12.1
entity.py
Go to the documentation of this file.
1 """Base entity for Iskra devices."""
2 
3 from homeassistant.helpers.device_registry import DeviceInfo
4 from homeassistant.helpers.update_coordinator import CoordinatorEntity
5 
6 from .const import DOMAIN, MANUFACTURER
7 from .coordinator import IskraDataUpdateCoordinator
8 
9 
10 class IskraEntity(CoordinatorEntity[IskraDataUpdateCoordinator]):
11  """Representation a base Iskra device."""
12 
13  _attr_has_entity_name = True
14 
15  def __init__(self, coordinator: IskraDataUpdateCoordinator) -> None:
16  """Initialize the Iskra device."""
17  super().__init__(coordinator)
18  self.devicedevicedevice = coordinator.device
19  gateway = self.devicedevicedevice.parent_device
20 
21  if gateway is not None:
22  self._attr_device_info_attr_device_info = DeviceInfo(
23  identifiers={(DOMAIN, self.devicedevicedevice.serial)},
24  manufacturer=MANUFACTURER,
25  model=self.devicedevicedevice.model,
26  name=self.devicedevicedevice.model,
27  sw_version=self.devicedevicedevice.fw_version,
28  serial_number=self.devicedevicedevice.serial,
29  via_device=(DOMAIN, gateway.serial),
30  )
31  else:
32  self._attr_device_info_attr_device_info = DeviceInfo(
33  identifiers={(DOMAIN, self.devicedevicedevice.serial)},
34  manufacturer=MANUFACTURER,
35  model=self.devicedevicedevice.model,
36  sw_version=self.devicedevicedevice.fw_version,
37  serial_number=self.devicedevicedevice.serial,
38  )
None __init__(self, IskraDataUpdateCoordinator coordinator)
Definition: entity.py:15