Home Assistant Unofficial Reference 2024.12.1
entity.py
Go to the documentation of this file.
1 """Component providing basic support for Foscam IP cameras."""
2 
3 from __future__ import annotations
4 
5 from homeassistant.const import ATTR_HW_VERSION, ATTR_MODEL, ATTR_SW_VERSION
6 from homeassistant.helpers.device_registry import DeviceInfo
7 from homeassistant.helpers.update_coordinator import CoordinatorEntity
8 
9 from .const import DOMAIN
10 from .coordinator import FoscamCoordinator
11 
12 
13 class FoscamEntity(CoordinatorEntity[FoscamCoordinator]):
14  """Base entity for Foscam camera."""
15 
16  def __init__(
17  self,
18  coordinator: FoscamCoordinator,
19  entry_id: str,
20  ) -> None:
21  """Initialize the base Foscam entity."""
22  super().__init__(coordinator)
23 
24  self._attr_device_info_attr_device_info = DeviceInfo(
25  identifiers={(DOMAIN, entry_id)},
26  manufacturer="Foscam",
27  )
28  if dev_info := coordinator.data.get("dev_info"):
29  self._attr_device_info_attr_device_info[ATTR_MODEL] = dev_info["productName"]
30  self._attr_device_info_attr_device_info[ATTR_SW_VERSION] = dev_info["firmwareVer"]
31  self._attr_device_info_attr_device_info[ATTR_HW_VERSION] = dev_info["hardwareVer"]
None __init__(self, FoscamCoordinator coordinator, str entry_id)
Definition: entity.py:20