Use DeviceInfo object for Nobo hub (#95753)

This commit is contained in:
Joost Lekkerkerker 2023-07-03 14:01:58 +02:00 committed by GitHub
parent 3bd8955e0e
commit 4ee7ea3cba
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 21 deletions

View file

@ -18,10 +18,7 @@ from homeassistant.components.climate import (
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_IDENTIFIERS,
ATTR_NAME,
ATTR_SUGGESTED_AREA,
ATTR_VIA_DEVICE,
PRECISION_TENTHS,
UnitOfTemperature,
)
@ -95,12 +92,12 @@ class NoboZone(ClimateEntity):
self._attr_hvac_mode = HVACMode.AUTO
self._attr_hvac_modes = [HVACMode.HEAT, HVACMode.AUTO]
self._override_type = override_type
self._attr_device_info: DeviceInfo = {
ATTR_IDENTIFIERS: {(DOMAIN, f"{hub.hub_serial}:{zone_id}")},
ATTR_NAME: hub.zones[zone_id][ATTR_NAME],
ATTR_VIA_DEVICE: (DOMAIN, hub.hub_info[ATTR_SERIAL]),
ATTR_SUGGESTED_AREA: hub.zones[zone_id][ATTR_NAME],
}
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, f"{hub.hub_serial}:{zone_id}")},
name=hub.zones[zone_id][ATTR_NAME],
via_device=(DOMAIN, hub.hub_info[ATTR_SERIAL]),
suggested_area=hub.zones[zone_id][ATTR_NAME],
)
self._read_state()
async def async_added_to_hass(self) -> None:

View file

@ -10,12 +10,8 @@ from homeassistant.components.sensor import (
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_IDENTIFIERS,
ATTR_MANUFACTURER,
ATTR_MODEL,
ATTR_NAME,
ATTR_SUGGESTED_AREA,
ATTR_VIA_DEVICE,
UnitOfTemperature,
)
from homeassistant.core import HomeAssistant, callback
@ -60,16 +56,18 @@ class NoboTemperatureSensor(SensorEntity):
self._attr_unique_id = component[ATTR_SERIAL]
self._attr_name = "Temperature"
self._attr_has_entity_name = True
self._attr_device_info: DeviceInfo = {
ATTR_IDENTIFIERS: {(DOMAIN, component[ATTR_SERIAL])},
ATTR_NAME: component[ATTR_NAME],
ATTR_MANUFACTURER: NOBO_MANUFACTURER,
ATTR_MODEL: component[ATTR_MODEL].name,
ATTR_VIA_DEVICE: (DOMAIN, hub.hub_info[ATTR_SERIAL]),
}
zone_id = component[ATTR_ZONE_ID]
suggested_area = None
if zone_id != "-1":
self._attr_device_info[ATTR_SUGGESTED_AREA] = hub.zones[zone_id][ATTR_NAME]
suggested_area = hub.zones[zone_id][ATTR_NAME]
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, component[ATTR_SERIAL])},
name=component[ATTR_NAME],
manufacturer=NOBO_MANUFACTURER,
model=component[ATTR_MODEL].name,
via_device=(DOMAIN, hub.hub_info[ATTR_SERIAL]),
suggested_area=suggested_area,
)
self._read_state()
async def async_added_to_hass(self) -> None: