mirror of https://github.com/Andre0512/hon.git
Use unique_id instead of mac address for #22
This commit is contained in:
parent
83c5e3479e
commit
d91b3edb40
|
@ -167,11 +167,11 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
|
||||||
coordinators = hass.data[DOMAIN]["coordinators"]
|
coordinators = hass.data[DOMAIN]["coordinators"]
|
||||||
appliances = []
|
appliances = []
|
||||||
for device in hon.appliances:
|
for device in hon.appliances:
|
||||||
if device.mac_address in coordinators:
|
if device.unique_id in coordinators:
|
||||||
coordinator = hass.data[DOMAIN]["coordinators"][device.mac_address]
|
coordinator = hass.data[DOMAIN]["coordinators"][device.unique_id]
|
||||||
else:
|
else:
|
||||||
coordinator = HonCoordinator(hass, device)
|
coordinator = HonCoordinator(hass, device)
|
||||||
hass.data[DOMAIN]["coordinators"][device.mac_address] = coordinator
|
hass.data[DOMAIN]["coordinators"][device.unique_id] = coordinator
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
if descriptions := BINARY_SENSORS.get(device.appliance_type):
|
if descriptions := BINARY_SENSORS.get(device.appliance_type):
|
||||||
|
|
|
@ -41,11 +41,11 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
|
||||||
coordinators = hass.data[DOMAIN]["coordinators"]
|
coordinators = hass.data[DOMAIN]["coordinators"]
|
||||||
appliances = []
|
appliances = []
|
||||||
for device in hon.appliances:
|
for device in hon.appliances:
|
||||||
if device.mac_address in coordinators:
|
if device.unique_id in coordinators:
|
||||||
coordinator = hass.data[DOMAIN]["coordinators"][device.mac_address]
|
coordinator = hass.data[DOMAIN]["coordinators"][device.unique_id]
|
||||||
else:
|
else:
|
||||||
coordinator = HonCoordinator(hass, device)
|
coordinator = HonCoordinator(hass, device)
|
||||||
hass.data[DOMAIN]["coordinators"][device.mac_address] = coordinator
|
hass.data[DOMAIN]["coordinators"][device.unique_id] = coordinator
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
if descriptions := BUTTONS.get(device.appliance_type):
|
if descriptions := BUTTONS.get(device.appliance_type):
|
||||||
|
|
|
@ -22,12 +22,12 @@ class HonEntity(CoordinatorEntity):
|
||||||
self._hass = hass
|
self._hass = hass
|
||||||
self._device = device
|
self._device = device
|
||||||
|
|
||||||
self._attr_unique_id = self._device.mac_address
|
self._attr_unique_id = self._device.unique_id
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def device_info(self):
|
def device_info(self):
|
||||||
return DeviceInfo(
|
return DeviceInfo(
|
||||||
identifiers={(DOMAIN, self._device.mac_address)},
|
identifiers={(DOMAIN, self._device.unique_id)},
|
||||||
manufacturer=self._device.get("brand", ""),
|
manufacturer=self._device.get("brand", ""),
|
||||||
name=self._device.nick_name
|
name=self._device.nick_name
|
||||||
if self._device.nick_name
|
if self._device.nick_name
|
||||||
|
@ -43,7 +43,7 @@ class HonCoordinator(DataUpdateCoordinator):
|
||||||
super().__init__(
|
super().__init__(
|
||||||
hass,
|
hass,
|
||||||
_LOGGER,
|
_LOGGER,
|
||||||
name=device.mac_address,
|
name=device.unique_id,
|
||||||
update_interval=timedelta(seconds=30),
|
update_interval=timedelta(seconds=30),
|
||||||
)
|
)
|
||||||
self._device = device
|
self._device = device
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
"documentation": "https://github.com/Andre0512/hon/",
|
"documentation": "https://github.com/Andre0512/hon/",
|
||||||
"iot_class": "cloud_polling",
|
"iot_class": "cloud_polling",
|
||||||
"issue_tracker": "https://github.com/Andre0512/hon/issues",
|
"issue_tracker": "https://github.com/Andre0512/hon/issues",
|
||||||
"requirements": ["pyhOn==0.8.0b2"],
|
"requirements": ["pyhOn==0.8.0b3"],
|
||||||
"version": "0.6.0-beta.1"
|
"version": "0.6.0-beta.2"
|
||||||
}
|
}
|
||||||
|
|
|
@ -128,11 +128,11 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
|
||||||
coordinators = hass.data[DOMAIN]["coordinators"]
|
coordinators = hass.data[DOMAIN]["coordinators"]
|
||||||
appliances = []
|
appliances = []
|
||||||
for device in hon.appliances:
|
for device in hon.appliances:
|
||||||
if device.mac_address in coordinators:
|
if device.unique_id in coordinators:
|
||||||
coordinator = hass.data[DOMAIN]["coordinators"][device.mac_address]
|
coordinator = hass.data[DOMAIN]["coordinators"][device.unique_id]
|
||||||
else:
|
else:
|
||||||
coordinator = HonCoordinator(hass, device)
|
coordinator = HonCoordinator(hass, device)
|
||||||
hass.data[DOMAIN]["coordinators"][device.mac_address] = coordinator
|
hass.data[DOMAIN]["coordinators"][device.unique_id] = coordinator
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
if descriptions := NUMBERS.get(device.appliance_type):
|
if descriptions := NUMBERS.get(device.appliance_type):
|
||||||
|
|
|
@ -92,11 +92,11 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
|
||||||
coordinators = hass.data[DOMAIN]["coordinators"]
|
coordinators = hass.data[DOMAIN]["coordinators"]
|
||||||
appliances = []
|
appliances = []
|
||||||
for device in hon.appliances:
|
for device in hon.appliances:
|
||||||
if device.mac_address in coordinators:
|
if device.unique_id in coordinators:
|
||||||
coordinator = hass.data[DOMAIN]["coordinators"][device.mac_address]
|
coordinator = hass.data[DOMAIN]["coordinators"][device.unique_id]
|
||||||
else:
|
else:
|
||||||
coordinator = HonCoordinator(hass, device)
|
coordinator = HonCoordinator(hass, device)
|
||||||
hass.data[DOMAIN]["coordinators"][device.mac_address] = coordinator
|
hass.data[DOMAIN]["coordinators"][device.unique_id] = coordinator
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
if descriptions := SELECTS.get(device.appliance_type):
|
if descriptions := SELECTS.get(device.appliance_type):
|
||||||
|
|
|
@ -245,11 +245,11 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
|
||||||
coordinators = hass.data[DOMAIN]["coordinators"]
|
coordinators = hass.data[DOMAIN]["coordinators"]
|
||||||
appliances = []
|
appliances = []
|
||||||
for device in hon.appliances:
|
for device in hon.appliances:
|
||||||
if device.mac_address in coordinators:
|
if device.unique_id in coordinators:
|
||||||
coordinator = hass.data[DOMAIN]["coordinators"][device.mac_address]
|
coordinator = hass.data[DOMAIN]["coordinators"][device.unique_id]
|
||||||
else:
|
else:
|
||||||
coordinator = HonCoordinator(hass, device)
|
coordinator = HonCoordinator(hass, device)
|
||||||
hass.data[DOMAIN]["coordinators"][device.mac_address] = coordinator
|
hass.data[DOMAIN]["coordinators"][device.unique_id] = coordinator
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
if descriptions := SENSORS.get(device.appliance_type):
|
if descriptions := SENSORS.get(device.appliance_type):
|
||||||
|
|
|
@ -97,11 +97,11 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
|
||||||
coordinators = hass.data[DOMAIN]["coordinators"]
|
coordinators = hass.data[DOMAIN]["coordinators"]
|
||||||
appliances = []
|
appliances = []
|
||||||
for device in hon.appliances:
|
for device in hon.appliances:
|
||||||
if device.mac_address in coordinators:
|
if device.unique_id in coordinators:
|
||||||
coordinator = hass.data[DOMAIN]["coordinators"][device.mac_address]
|
coordinator = hass.data[DOMAIN]["coordinators"][device.unique_id]
|
||||||
else:
|
else:
|
||||||
coordinator = HonCoordinator(hass, device)
|
coordinator = HonCoordinator(hass, device)
|
||||||
hass.data[DOMAIN]["coordinators"][device.mac_address] = coordinator
|
hass.data[DOMAIN]["coordinators"][device.unique_id] = coordinator
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
if descriptions := SWITCHES.get(device.appliance_type):
|
if descriptions := SWITCHES.get(device.appliance_type):
|
||||||
|
|
Loading…
Reference in New Issue