Migrate DirecTV to has entity name (#98159)
* Migrate DirecTV to has entity name * Migrate DirecTV to has entity name
This commit is contained in:
parent
2e1a5ddf2b
commit
914baaa2ba
3 changed files with 8 additions and 14 deletions
|
@ -1,8 +1,6 @@
|
||||||
"""Base DirecTV Entity."""
|
"""Base DirecTV Entity."""
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
from typing import cast
|
|
||||||
|
|
||||||
from directv import DIRECTV
|
from directv import DIRECTV
|
||||||
|
|
||||||
from homeassistant.helpers.device_registry import DeviceInfo
|
from homeassistant.helpers.device_registry import DeviceInfo
|
||||||
|
@ -14,23 +12,19 @@ from .const import DOMAIN
|
||||||
class DIRECTVEntity(Entity):
|
class DIRECTVEntity(Entity):
|
||||||
"""Defines a base DirecTV entity."""
|
"""Defines a base DirecTV entity."""
|
||||||
|
|
||||||
def __init__(self, *, dtv: DIRECTV, address: str = "0") -> None:
|
_attr_has_entity_name = True
|
||||||
|
_attr_name = None
|
||||||
|
|
||||||
|
def __init__(self, *, dtv: DIRECTV, name: str, address: str = "0") -> None:
|
||||||
"""Initialize the DirecTV entity."""
|
"""Initialize the DirecTV entity."""
|
||||||
self._address = address
|
self._address = address
|
||||||
self._device_id = address if address != "0" else dtv.device.info.receiver_id
|
self._device_id = address if address != "0" else dtv.device.info.receiver_id
|
||||||
self._is_client = address != "0"
|
self._is_client = address != "0"
|
||||||
self.dtv = dtv
|
self.dtv = dtv
|
||||||
|
self._attr_device_info = DeviceInfo(
|
||||||
@property
|
|
||||||
def device_info(self) -> DeviceInfo:
|
|
||||||
"""Return device information about this DirecTV receiver."""
|
|
||||||
return DeviceInfo(
|
|
||||||
identifiers={(DOMAIN, self._device_id)},
|
identifiers={(DOMAIN, self._device_id)},
|
||||||
manufacturer=self.dtv.device.info.brand,
|
manufacturer=self.dtv.device.info.brand,
|
||||||
# Instead of setting the device name to the entity name, directv
|
name=name,
|
||||||
# should be updated to set has_entity_name = True, and set the entity
|
|
||||||
# name to None
|
|
||||||
name=cast(str | None, self.name),
|
|
||||||
sw_version=self.dtv.device.info.version,
|
sw_version=self.dtv.device.info.version,
|
||||||
via_device=(DOMAIN, self.dtv.device.info.receiver_id),
|
via_device=(DOMAIN, self.dtv.device.info.receiver_id),
|
||||||
)
|
)
|
||||||
|
|
|
@ -80,11 +80,11 @@ class DIRECTVMediaPlayer(DIRECTVEntity, MediaPlayerEntity):
|
||||||
"""Initialize DirecTV media player."""
|
"""Initialize DirecTV media player."""
|
||||||
super().__init__(
|
super().__init__(
|
||||||
dtv=dtv,
|
dtv=dtv,
|
||||||
|
name=name,
|
||||||
address=address,
|
address=address,
|
||||||
)
|
)
|
||||||
|
|
||||||
self._attr_unique_id = self._device_id
|
self._attr_unique_id = self._device_id
|
||||||
self._attr_name = name
|
|
||||||
self._attr_device_class = MediaPlayerDeviceClass.RECEIVER
|
self._attr_device_class = MediaPlayerDeviceClass.RECEIVER
|
||||||
self._attr_available = False
|
self._attr_available = False
|
||||||
|
|
||||||
|
|
|
@ -49,11 +49,11 @@ class DIRECTVRemote(DIRECTVEntity, RemoteEntity):
|
||||||
"""Initialize DirecTV remote."""
|
"""Initialize DirecTV remote."""
|
||||||
super().__init__(
|
super().__init__(
|
||||||
dtv=dtv,
|
dtv=dtv,
|
||||||
|
name=name,
|
||||||
address=address,
|
address=address,
|
||||||
)
|
)
|
||||||
|
|
||||||
self._attr_unique_id = self._device_id
|
self._attr_unique_id = self._device_id
|
||||||
self._attr_name = name
|
|
||||||
self._attr_available = False
|
self._attr_available = False
|
||||||
self._attr_is_on = True
|
self._attr_is_on = True
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue