mirror of
https://github.com/XiaoMi/ha_xiaomi_home.git
synced 2025-09-13 09:43:31 +08:00
feat: subscribe the proxy gateway child device up messages even though the device is offline (#1393)
Some checks failed
Some checks failed
* feat: subscribe the proxy gateway child device up messages even though the device is offline (#1313) * feat: do not subscribe proxy gateway child device online/offline state message
This commit is contained in:
@ -1374,10 +1374,13 @@ class MIoTClient:
|
|||||||
"""Update cloud devices.
|
"""Update cloud devices.
|
||||||
NOTICE: This function will operate the cloud_list
|
NOTICE: This function will operate the cloud_list
|
||||||
"""
|
"""
|
||||||
# MIoT cloud service may not publish the online state updating message
|
# MIoT cloud may not publish the online state updating message
|
||||||
# for the BLE device. Assume that all BLE devices are online.
|
# for the BLE device. Assume that all BLE devices are online.
|
||||||
|
# MIoT cloud does not publish the online state updating message for the
|
||||||
|
# child device under the proxy gateway (eg, VRF air conditioner
|
||||||
|
# controller). Assume that all proxy gateway child devices are online.
|
||||||
for did, info in cloud_list.items():
|
for did, info in cloud_list.items():
|
||||||
if did.startswith('blt.'):
|
if did.startswith('blt.') or did.startswith('proxy.'):
|
||||||
info['online'] = True
|
info['online'] = True
|
||||||
for did, info in self._device_list_cache.items():
|
for did, info in self._device_list_cache.items():
|
||||||
if filter_dids and did not in filter_dids:
|
if filter_dids and did not in filter_dids:
|
||||||
|
@ -998,9 +998,11 @@ class MipsCloudClient(_MipsClient):
|
|||||||
did, MIoTDeviceState.ONLINE if msg['event'] == 'online'
|
did, MIoTDeviceState.ONLINE if msg['event'] == 'online'
|
||||||
else MIoTDeviceState.OFFLINE, ctx)
|
else MIoTDeviceState.OFFLINE, ctx)
|
||||||
|
|
||||||
if did.startswith('blt.'):
|
if did.startswith('blt.') or did.startswith('proxy.'):
|
||||||
# MIoT cloud may not publish BLE device online/offline state message.
|
# MIoT cloud may not publish BLE device or proxy gateway child device
|
||||||
# Do not subscribe BLE device online/offline state.
|
# online/offline state message.
|
||||||
|
# Do not subscribe BLE device or proxy gateway child device
|
||||||
|
# online/offline state.
|
||||||
return True
|
return True
|
||||||
return self.__reg_broadcast_external(
|
return self.__reg_broadcast_external(
|
||||||
topic=topic, handler=on_state_msg, handler_ctx=handler_ctx)
|
topic=topic, handler=on_state_msg, handler_ctx=handler_ctx)
|
||||||
|
Reference in New Issue
Block a user