Use DeviceInfo in unifi (#58620)
Co-authored-by: epenet <epenet@users.noreply.github.com>
This commit is contained in:
parent
1c7fbb7540
commit
6391376d6f
3 changed files with 22 additions and 20 deletions
|
@ -18,10 +18,12 @@ from aiounifi.events import (
|
||||||
from homeassistant.components.device_tracker import DOMAIN
|
from homeassistant.components.device_tracker import DOMAIN
|
||||||
from homeassistant.components.device_tracker.config_entry import ScannerEntity
|
from homeassistant.components.device_tracker.config_entry import ScannerEntity
|
||||||
from homeassistant.components.device_tracker.const import SOURCE_TYPE_ROUTER
|
from homeassistant.components.device_tracker.const import SOURCE_TYPE_ROUTER
|
||||||
|
from homeassistant.const import ATTR_NAME
|
||||||
from homeassistant.core import callback
|
from homeassistant.core import callback
|
||||||
from homeassistant.helpers import device_registry as dr
|
from homeassistant.helpers import device_registry as dr
|
||||||
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC
|
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC
|
||||||
from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
||||||
|
from homeassistant.helpers.entity import DeviceInfo
|
||||||
import homeassistant.util.dt as dt_util
|
import homeassistant.util.dt as dt_util
|
||||||
|
|
||||||
from .const import ATTR_MANUFACTURER, DOMAIN as UNIFI_DOMAIN
|
from .const import ATTR_MANUFACTURER, DOMAIN as UNIFI_DOMAIN
|
||||||
|
@ -405,17 +407,17 @@ class UniFiDeviceTracker(UniFiBase, ScannerEntity):
|
||||||
return not self.device.disabled and self.controller.available
|
return not self.device.disabled and self.controller.available
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def device_info(self):
|
def device_info(self) -> DeviceInfo:
|
||||||
"""Return a device description for device registry."""
|
"""Return a device description for device registry."""
|
||||||
info = {
|
info = DeviceInfo(
|
||||||
"connections": {(CONNECTION_NETWORK_MAC, self.device.mac)},
|
connections={(CONNECTION_NETWORK_MAC, self.device.mac)},
|
||||||
"manufacturer": ATTR_MANUFACTURER,
|
manufacturer=ATTR_MANUFACTURER,
|
||||||
"model": self.device.model,
|
model=self.device.model,
|
||||||
"sw_version": self.device.version,
|
sw_version=self.device.version,
|
||||||
}
|
)
|
||||||
|
|
||||||
if self.device.name:
|
if self.device.name:
|
||||||
info["name"] = self.device.name
|
info[ATTR_NAME] = self.device.name
|
||||||
|
|
||||||
return info
|
return info
|
||||||
|
|
||||||
|
|
|
@ -369,10 +369,10 @@ class UniFiDPIRestrictionSwitch(UniFiBase, SwitchEntity):
|
||||||
@property
|
@property
|
||||||
def device_info(self) -> DeviceInfo:
|
def device_info(self) -> DeviceInfo:
|
||||||
"""Return a service description for device registry."""
|
"""Return a service description for device registry."""
|
||||||
return {
|
return DeviceInfo(
|
||||||
"identifiers": {(DOMAIN, f"unifi_controller_{self._item.site_id}")},
|
entry_type="service",
|
||||||
"name": "UniFi Controller",
|
identifiers={(DOMAIN, f"unifi_controller_{self._item.site_id}")},
|
||||||
"manufacturer": ATTR_MANUFACTURER,
|
manufacturer=ATTR_MANUFACTURER,
|
||||||
"model": "UniFi Controller",
|
model="UniFi Controller",
|
||||||
"entry_type": "service",
|
name="UniFi Controller",
|
||||||
}
|
)
|
||||||
|
|
|
@ -47,8 +47,8 @@ class UniFiClient(UniFiBase):
|
||||||
@property
|
@property
|
||||||
def device_info(self) -> DeviceInfo:
|
def device_info(self) -> DeviceInfo:
|
||||||
"""Return a client description for device registry."""
|
"""Return a client description for device registry."""
|
||||||
return {
|
return DeviceInfo(
|
||||||
"connections": {(CONNECTION_NETWORK_MAC, self.client.mac)},
|
connections={(CONNECTION_NETWORK_MAC, self.client.mac)},
|
||||||
"default_name": self.name,
|
default_manufacturer=self.client.oui,
|
||||||
"default_manufacturer": self.client.oui,
|
default_name=self.name,
|
||||||
}
|
)
|
||||||
|
|
Loading…
Add table
Reference in a new issue