core/homeassistant/components/poolsense/entity.py

31 lines
1.0 KiB
Python
Raw Normal View History

"""Base entity for poolsense integration."""
2024-05-16 14:42:40 +00:00
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity import EntityDescription
from homeassistant.helpers.update_coordinator import CoordinatorEntity
2024-05-16 14:42:40 +00:00
from .const import ATTRIBUTION, DOMAIN
2023-09-27 08:14:51 +00:00
from .coordinator import PoolSenseDataUpdateCoordinator
2023-09-27 08:14:51 +00:00
class PoolSenseEntity(CoordinatorEntity[PoolSenseDataUpdateCoordinator]):
"""Implements a common class elements representing the PoolSense component."""
_attr_attribution = ATTRIBUTION
2024-05-16 14:42:40 +00:00
_attr_has_entity_name = True
2023-09-27 08:14:51 +00:00
def __init__(
self,
coordinator: PoolSenseDataUpdateCoordinator,
email: str,
description: EntityDescription,
) -> None:
"""Initialize poolsense sensor."""
super().__init__(coordinator)
self.entity_description = description
self._attr_unique_id = f"{email}-{description.key}"
2024-05-16 14:42:40 +00:00
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, email)},
model="PoolSense",
)