mirror of
https://github.com/home-assistant/core.git
synced 2025-07-18 18:57:06 +00:00
Improve entity and device naming in Synology DSM (#69754)
This commit is contained in:
parent
eccc8bf79d
commit
ed8fe9963e
@ -249,13 +249,9 @@ class SynologyDSMBaseEntity(
|
||||
self._attr_unique_id: str = (
|
||||
f"{api.information.serial}_{description.api_key}:{description.key}"
|
||||
)
|
||||
|
||||
@property
|
||||
def device_info(self) -> DeviceInfo:
|
||||
"""Return the device information."""
|
||||
return DeviceInfo(
|
||||
self._attr_device_info = DeviceInfo(
|
||||
identifiers={(DOMAIN, self._api.information.serial)},
|
||||
name="Synology NAS",
|
||||
name=self._api.network.hostname,
|
||||
manufacturer="Synology",
|
||||
model=self._api.information.model,
|
||||
sw_version=self._api.information.version_string,
|
||||
@ -309,25 +305,22 @@ class SynologyDSMDeviceEntity(SynologyDSMBaseEntity):
|
||||
self._device_model = disk["model"].strip()
|
||||
self._device_firmware = disk["firm"]
|
||||
self._device_type = disk["diskType"]
|
||||
self._name = (
|
||||
f"{self._api.network.hostname} {self._device_name} {description.name}"
|
||||
|
||||
self._attr_name = (
|
||||
f"{self._api.network.hostname} ({self._device_name}) {description.name}"
|
||||
)
|
||||
self._attr_unique_id += f"_{self._device_id}"
|
||||
|
||||
@property
|
||||
def available(self) -> bool:
|
||||
"""Return True if entity is available."""
|
||||
return self._api.storage # type: ignore [no-any-return]
|
||||
|
||||
@property
|
||||
def device_info(self) -> DeviceInfo:
|
||||
"""Return the device information."""
|
||||
return DeviceInfo(
|
||||
self._attr_device_info = DeviceInfo(
|
||||
identifiers={(DOMAIN, f"{self._api.information.serial}_{self._device_id}")},
|
||||
name=f"Synology NAS ({self._device_name} - {self._device_type})",
|
||||
name=f"{self._api.network.hostname} ({self._device_name})",
|
||||
manufacturer=self._device_manufacturer,
|
||||
model=self._device_model,
|
||||
sw_version=self._device_firmware,
|
||||
via_device=(DOMAIN, self._api.information.serial),
|
||||
configuration_url=self._api.config_url,
|
||||
)
|
||||
|
||||
@property
|
||||
def available(self) -> bool:
|
||||
"""Return True if entity is available."""
|
||||
return self._api.storage # type: ignore [no-any-return]
|
||||
|
@ -83,6 +83,10 @@ class SynoDSMSurveillanceHomeModeToggle(SynologyDSMBaseEntity, SwitchEntity):
|
||||
super().__init__(api, coordinator, description)
|
||||
self._version = version
|
||||
|
||||
self._attr_name = (
|
||||
f"{self._api.network.hostname} Surveillance Station {description.name}"
|
||||
)
|
||||
|
||||
@property
|
||||
def is_on(self) -> bool:
|
||||
"""Return the state."""
|
||||
@ -125,7 +129,7 @@ class SynoDSMSurveillanceHomeModeToggle(SynologyDSMBaseEntity, SwitchEntity):
|
||||
f"{self._api.information.serial}_{SynoSurveillanceStation.INFO_API_KEY}",
|
||||
)
|
||||
},
|
||||
name="Surveillance Station",
|
||||
name=f"{self._api.network.hostname} Surveillance Station",
|
||||
manufacturer="Synology",
|
||||
model=self._api.information.model,
|
||||
sw_version=self._version,
|
||||
|
Loading…
x
Reference in New Issue
Block a user