diff --git a/juju/client/connection.py b/juju/client/connection.py index 88c31c2a..b66a6f00 100644 --- a/juju/client/connection.py +++ b/juju/client/connection.py @@ -17,6 +17,7 @@ import websockets from dateutil.parser import parse from typing_extensions import Self, TypeAlias, overload +from websockets.protocol import State from juju import errors, jasyncio, tag, utils from juju.client import client @@ -92,7 +93,7 @@ def status(self): and connection._receiver_task.cancelled() ) - if stopped or not connection._ws.open: + if stopped or connection._ws.state is not State.OPEN: return self.ERROR # everything is fine! @@ -357,7 +358,7 @@ async def close(self, to_reconnect: bool = False): tasks_need_to_be_gathered.append(self._debug_log_task) self._debug_log_task.cancel() - if self._ws and not self._ws.closed: + if self._ws and self._ws.state is not State.CLOSED: await self._ws.close() if not to_reconnect: