|
|
@@ -37,6 +37,7 @@ class GoldairTuyaDevice(object):
|
|
|
|
|
|
self._name = name
|
|
|
self._api_protocol_version_index = None
|
|
|
+ self._api_protocol_working = False
|
|
|
self._api = pytuya.Device(dev_id, address, local_key, "device")
|
|
|
self._refresh_task = None
|
|
|
self._rotate_api_protocol_version()
|
|
|
@@ -198,13 +199,15 @@ class GoldairTuyaDevice(object):
|
|
|
for i in range(self._CONNECTION_ATTEMPTS):
|
|
|
try:
|
|
|
func()
|
|
|
+ self._api_protocol_working = True
|
|
|
break
|
|
|
except Exception as e:
|
|
|
_LOGGER.debug(f"Retrying after exception {e}")
|
|
|
if i + 1 == self._CONNECTION_ATTEMPTS:
|
|
|
self._reset_cached_state()
|
|
|
+ self._api_protocol_working = False
|
|
|
_LOGGER.error(error_message)
|
|
|
- else:
|
|
|
+ elif self._api_protocol_working is False:
|
|
|
self._rotate_api_protocol_version()
|
|
|
|
|
|
def _get_cached_state(self):
|