mirror of
https://github.com/home-assistant/core.git
synced 2026-05-08 17:49:37 +01:00
Add base entity to Zinvolt (#164051)
This commit is contained in:
committed by
GitHub
parent
195e55097b
commit
8dcaed62b5
@@ -0,0 +1,23 @@
|
||||
"""Base entity for Zinvolt integration."""
|
||||
|
||||
from homeassistant.helpers.device_registry import DeviceInfo
|
||||
from homeassistant.helpers.update_coordinator import CoordinatorEntity
|
||||
|
||||
from .const import DOMAIN
|
||||
from .coordinator import ZinvoltDeviceCoordinator
|
||||
|
||||
|
||||
class ZinvoltEntity(CoordinatorEntity[ZinvoltDeviceCoordinator]):
|
||||
"""Base entity for Zinvolt integration."""
|
||||
|
||||
_attr_has_entity_name = True
|
||||
|
||||
def __init__(self, coordinator: ZinvoltDeviceCoordinator) -> None:
|
||||
"""Initialize the entity."""
|
||||
super().__init__(coordinator)
|
||||
self._attr_device_info = DeviceInfo(
|
||||
identifiers={(DOMAIN, coordinator.data.serial_number)},
|
||||
manufacturer="Zinvolt",
|
||||
name=coordinator.data.name,
|
||||
serial_number=coordinator.data.serial_number,
|
||||
)
|
||||
@@ -12,12 +12,10 @@ from homeassistant.components.sensor import (
|
||||
)
|
||||
from homeassistant.const import PERCENTAGE, EntityCategory
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.device_registry import DeviceInfo
|
||||
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
|
||||
from homeassistant.helpers.update_coordinator import CoordinatorEntity
|
||||
|
||||
from .const import DOMAIN
|
||||
from .coordinator import ZinvoltConfigEntry, ZinvoltDeviceCoordinator
|
||||
from .entity import ZinvoltEntity
|
||||
|
||||
|
||||
@dataclass(kw_only=True, frozen=True)
|
||||
@@ -52,12 +50,9 @@ async def async_setup_entry(
|
||||
)
|
||||
|
||||
|
||||
class ZinvoltBatteryStateSensor(
|
||||
CoordinatorEntity[ZinvoltDeviceCoordinator], SensorEntity
|
||||
):
|
||||
class ZinvoltBatteryStateSensor(ZinvoltEntity, SensorEntity):
|
||||
"""Zinvolt battery state sensor."""
|
||||
|
||||
_attr_has_entity_name = True
|
||||
entity_description: ZinvoltBatteryStateDescription
|
||||
|
||||
def __init__(
|
||||
@@ -69,12 +64,6 @@ class ZinvoltBatteryStateSensor(
|
||||
super().__init__(coordinator)
|
||||
self.entity_description = description
|
||||
self._attr_unique_id = f"{coordinator.data.serial_number}.{description.key}"
|
||||
self._attr_device_info = DeviceInfo(
|
||||
identifiers={(DOMAIN, coordinator.data.serial_number)},
|
||||
manufacturer="Zinvolt",
|
||||
name=coordinator.data.name,
|
||||
serial_number=coordinator.data.serial_number,
|
||||
)
|
||||
|
||||
@property
|
||||
def native_value(self) -> float:
|
||||
|
||||
Reference in New Issue
Block a user