From b0603313ff76de63a8c05c53bc50be73603106b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre=20St=C3=A5hl?= Date: Mon, 12 Oct 2020 09:22:07 +0200 Subject: [PATCH] Fixed some bugs --- custom_components/localtuya/common.py | 4 +++- custom_components/localtuya/pytuya/__init__.py | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/custom_components/localtuya/common.py b/custom_components/localtuya/common.py index 5c8886f..d2f52d3 100644 --- a/custom_components/localtuya/common.py +++ b/custom_components/localtuya/common.py @@ -195,7 +195,9 @@ class TuyaDevice(pytuya.TuyaListener): @callback def disconnected(self, exc): """Device disconnected.""" - _LOGGER.debug("Disconnected from %s: %s", self.id, exc) + _LOGGER.debug( + "Disconnected from %s: %s", self._config_entry[CONF_DEVICE_ID], exc + ) signal = f"localtuya_{self._config_entry[CONF_DEVICE_ID]}" async_dispatcher_send(self._hass, signal, None) diff --git a/custom_components/localtuya/pytuya/__init__.py b/custom_components/localtuya/pytuya/__init__.py index 3b866e4..0abc507 100644 --- a/custom_components/localtuya/pytuya/__init__.py +++ b/custom_components/localtuya/pytuya/__init__.py @@ -191,7 +191,10 @@ class MessageDispatcher: for key in self.listeners: sem = self.listeners[key] self.listeners[key] = None - sem.release() + + # TODO: Received data and semahore should be stored separately + if isinstance(sem, asyncio.Semaphore): + sem.release() async def wait_for(self, seqno, timeout=5): """Wait for response to a sequence number to be received and return it."""