python-homely 0.1.3__py3-none-any.whl → 0.1.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homely/websocket.py +7 -1
- {python_homely-0.1.3.dist-info → python_homely-0.1.4.dist-info}/METADATA +1 -1
- {python_homely-0.1.3.dist-info → python_homely-0.1.4.dist-info}/RECORD +6 -6
- {python_homely-0.1.3.dist-info → python_homely-0.1.4.dist-info}/WHEEL +0 -0
- {python_homely-0.1.3.dist-info → python_homely-0.1.4.dist-info}/licenses/LICENSE +0 -0
- {python_homely-0.1.3.dist-info → python_homely-0.1.4.dist-info}/top_level.txt +0 -0
homely/websocket.py
CHANGED
|
@@ -98,6 +98,7 @@ class HomelyWebSocket:
|
|
|
98
98
|
self.on_data_update = on_data_update
|
|
99
99
|
self.socket: Any | None = None
|
|
100
100
|
self._is_closing = False
|
|
101
|
+
self._cleaning_up_socket = False
|
|
101
102
|
self._reconnect_task: asyncio.Task[None] | None = None
|
|
102
103
|
self._reconnect_interval = self._reconnect_interval_for_attempt(1)
|
|
103
104
|
self._reconnect_warn_every = 12
|
|
@@ -248,6 +249,8 @@ class HomelyWebSocket:
|
|
|
248
249
|
if self._is_closing:
|
|
249
250
|
self._set_status("Disconnected", "manual disconnect")
|
|
250
251
|
return
|
|
252
|
+
if self._cleaning_up_socket:
|
|
253
|
+
return
|
|
251
254
|
self._set_status("Disconnected", reason)
|
|
252
255
|
if not self._is_closing:
|
|
253
256
|
self._start_reconnect_loop("disconnect event")
|
|
@@ -341,10 +344,13 @@ class HomelyWebSocket:
|
|
|
341
344
|
return True
|
|
342
345
|
|
|
343
346
|
if self.socket is not None:
|
|
347
|
+
self._cleaning_up_socket = True
|
|
344
348
|
try:
|
|
345
349
|
await asyncio.wait_for(self.socket.disconnect(), timeout=2)
|
|
346
350
|
except Exception:
|
|
347
351
|
pass
|
|
352
|
+
finally:
|
|
353
|
+
self._cleaning_up_socket = False
|
|
348
354
|
self.socket = None
|
|
349
355
|
|
|
350
356
|
self._set_status("Connecting")
|
|
@@ -397,7 +403,7 @@ class HomelyWebSocket:
|
|
|
397
403
|
await asyncio.wait_for(
|
|
398
404
|
self.socket.connect(
|
|
399
405
|
url,
|
|
400
|
-
transports=["websocket"
|
|
406
|
+
transports=["websocket"],
|
|
401
407
|
headers={"Authorization": bearer_token},
|
|
402
408
|
),
|
|
403
409
|
timeout=10,
|
|
@@ -3,9 +3,9 @@ homely/client.py,sha256=iqM1ChFEVez5PJcvWk8BlkkVx4bekaQacBa-rAvSxpo,18276
|
|
|
3
3
|
homely/exceptions.py,sha256=w6y5MC8yjPe5QtI-YEKUsbAPF1D0ARWx6ZkRsLTjrgQ,1040
|
|
4
4
|
homely/models.py,sha256=8chNpjo1SF4TGww7XPWFUK3kXILH3bSmUnjNteyfsys,1842
|
|
5
5
|
homely/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
6
|
-
homely/websocket.py,sha256=
|
|
7
|
-
python_homely-0.1.
|
|
8
|
-
python_homely-0.1.
|
|
9
|
-
python_homely-0.1.
|
|
10
|
-
python_homely-0.1.
|
|
11
|
-
python_homely-0.1.
|
|
6
|
+
homely/websocket.py,sha256=1Kt1wOvJi0gnOZJQ9psgtketYzqcBvE1X1eIMJHASE4,19212
|
|
7
|
+
python_homely-0.1.4.dist-info/licenses/LICENSE,sha256=nNVHKvQjryAonWsz5TbhzLd6M2kZaoNUvhxz92MgeAA,1079
|
|
8
|
+
python_homely-0.1.4.dist-info/METADATA,sha256=Y9qoAyRG7TdGyHRbxK9uuSP9Sqtp-N6aT3to9Cs2o2E,5239
|
|
9
|
+
python_homely-0.1.4.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
|
|
10
|
+
python_homely-0.1.4.dist-info/top_level.txt,sha256=auE-j6ghVMdT_jAw04jiXthgbuLpi-jYBU0fCkKvREQ,7
|
|
11
|
+
python_homely-0.1.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|