From 674d186d6b1cd957df6672a1a5c87cad3a8ba58a Mon Sep 17 00:00:00 2001 From: starkillerOG Date: Wed, 20 Nov 2024 09:02:15 +0100 Subject: [PATCH] Fix chimes beeing set unavailable by other channels --- reolink_aio/api.py | 2 +- reolink_aio/baichuan/baichuan.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/reolink_aio/api.py b/reolink_aio/api.py index 998fb1a..c3d48b7 100644 --- a/reolink_aio/api.py +++ b/reolink_aio/api.py @@ -3773,7 +3773,7 @@ def map_channel_json_response(self, json_data, channel: int, chime_id: int = -1) chime.connect_state = dev["netState"] for dev_id, chime in self._chime_list.items(): - if dev_id not in id_list: + if chime.channel == channel and dev_id not in id_list: chime.connect_state = -1 elif data["cmd"] == "GetDingDongCfg": diff --git a/reolink_aio/baichuan/baichuan.py b/reolink_aio/baichuan/baichuan.py index 85d7ddd..067e825 100644 --- a/reolink_aio/baichuan/baichuan.py +++ b/reolink_aio/baichuan/baichuan.py @@ -603,7 +603,7 @@ async def get_DingDongList(self, channel: int, **_kwargs) -> None: chime_list = [] for chime in root.findall(".//dingdongDeviceInfo"): - data = self._get_keys_from_xml(chime, {"id": ("deviceId", int), "name": ("deviceName", str), "netstate": ("netState", int)}) + data = self._get_keys_from_xml(chime, {"id": ("deviceId", int), "name": ("deviceName", str), "netstate": ("netState", int), "netState": ("netState", int)}) chime_list.append(data) json_data = [{"cmd": "GetDingDongList", "code": 0, "value": {"DingDongList": {"pairedlist": chime_list}}}] self.http_api.map_channel_json_response(json_data, channel)