Use DeviceInfo in unifi (#58620)

Co-authored-by: epenet <epenet@users.noreply.github.com>
This commit is contained in:
epenet 2021-10-28 18:26:21 +02:00 committed by GitHub
parent 1c7fbb7540
commit 6391376d6f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 22 additions and 20 deletions

View file

@ -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

View file

@ -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",
} )

View file

@ -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,
} )