mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-11-14 05:20:21 +00:00
Compare commits
2 Commits
copilot/su
...
fail-grace
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8e026bd945 | ||
|
|
3d74d2bb7c |
@@ -98,6 +98,7 @@ class WSClient:
|
||||
|
||||
async def start_listener(self) -> None:
|
||||
"""Start listening to the websocket."""
|
||||
_LOGGER.debug("Starting WebSocket listener")
|
||||
if not self.connected:
|
||||
raise HomeAssistantWSConnectionError("Not connected when start listening")
|
||||
|
||||
@@ -202,6 +203,7 @@ class HomeAssistantWebSocket(CoreSysAttributes):
|
||||
return self._client
|
||||
|
||||
await self.sys_homeassistant.api.ensure_access_token()
|
||||
_LOGGER.debug("Connecting via WebSocket to Home Assistant Core")
|
||||
client = await WSClient.connect_with_auth(
|
||||
self.sys_websession,
|
||||
self.sys_loop,
|
||||
@@ -266,7 +268,8 @@ class HomeAssistantWebSocket(CoreSysAttributes):
|
||||
try:
|
||||
await self._client.async_send_command(message)
|
||||
except HomeAssistantWSConnectionError:
|
||||
await self._client.close()
|
||||
if self._client:
|
||||
await self._client.close()
|
||||
self._client = None
|
||||
|
||||
async def async_send_command(self, message: dict[str, Any]) -> dict[str, Any]:
|
||||
@@ -277,7 +280,8 @@ class HomeAssistantWebSocket(CoreSysAttributes):
|
||||
try:
|
||||
return await self._client.async_send_command(message)
|
||||
except HomeAssistantWSConnectionError:
|
||||
await self._client.close()
|
||||
if self._client:
|
||||
await self._client.close()
|
||||
self._client = None
|
||||
raise
|
||||
|
||||
|
||||
Reference in New Issue
Block a user