Implement model_id in HomeWizard (#122130)

* Add model_id and use hardcoded model names for HomeWizard

* Update names
pull/122163/head
Duco Sebel 2024-07-19 08:22:06 +02:00 committed by GitHub
parent 243c16d194
commit 474e8b7a43
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 459 additions and 446 deletions

View File

@ -2,13 +2,23 @@
from __future__ import annotations
from homeassistant.const import ATTR_CONNECTIONS, ATTR_IDENTIFIERS
from homeassistant.const import ATTR_CONNECTIONS, ATTR_IDENTIFIERS, ATTR_MODEL
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC, DeviceInfo
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN
from .coordinator import HWEnergyDeviceUpdateCoordinator
TYPE_MODEL_MAP = {
"HWE-P1": "Wi-Fi P1 Meter",
"HWE-SKT": "Wi-Fi Energy Socket",
"HWE-WTR": "Wi-Fi Water Meter",
"HWE-KWH1": "Wi-Fi kWh Meter",
"HWE-KWH3": "Wi-Fi kWh Meter",
"SDM230-wifi": "Wi-Fi kWh Meter",
"SDM630-wifi": "Wi-Fi kWh Meter",
}
class HomeWizardEntity(CoordinatorEntity[HWEnergyDeviceUpdateCoordinator]):
"""Defines a HomeWizard entity."""
@ -21,9 +31,12 @@ class HomeWizardEntity(CoordinatorEntity[HWEnergyDeviceUpdateCoordinator]):
self._attr_device_info = DeviceInfo(
manufacturer="HomeWizard",
sw_version=coordinator.data.device.firmware_version,
model=coordinator.data.device.product_type,
model_id=coordinator.data.device.product_type,
)
if product_type := coordinator.data.device.product_type:
self._attr_device_info[ATTR_MODEL] = TYPE_MODEL_MAP.get(product_type)
if (serial_number := coordinator.data.device.serial) is not None:
self._attr_device_info[ATTR_CONNECTIONS] = {
(CONNECTION_NETWORK_MAC, serial_number)

View File

@ -71,8 +71,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-P1',
'model_id': None,
'model': 'Wi-Fi P1 Meter',
'model_id': 'HWE-P1',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,

View File

@ -80,8 +80,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -172,8 +172,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,

File diff suppressed because it is too large Load Diff

View File

@ -70,8 +70,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-KWH1',
'model_id': None,
'model': 'Wi-Fi kWh Meter',
'model_id': 'HWE-KWH1',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -152,8 +152,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-KWH3',
'model_id': None,
'model': 'Wi-Fi kWh Meter',
'model_id': 'HWE-KWH3',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -235,8 +235,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -317,8 +317,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -399,8 +399,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -482,8 +482,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -564,8 +564,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -646,8 +646,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-SKT',
'model_id': None,
'model': 'Wi-Fi Energy Socket',
'model_id': 'HWE-SKT',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -728,8 +728,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'HWE-WTR',
'model_id': None,
'model': 'Wi-Fi Water Meter',
'model_id': 'HWE-WTR',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -810,8 +810,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'SDM230-wifi',
'model_id': None,
'model': 'Wi-Fi kWh Meter',
'model_id': 'SDM230-wifi',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,
@ -892,8 +892,8 @@
'labels': set({
}),
'manufacturer': 'HomeWizard',
'model': 'SDM630-wifi',
'model_id': None,
'model': 'Wi-Fi kWh Meter',
'model_id': 'SDM630-wifi',
'name': 'Device',
'name_by_user': None,
'primary_config_entry': <ANY>,