From 0f0edba926537e316d71163e6a514e772e580a42 Mon Sep 17 00:00:00 2001 From: Kenneth Date: Mon, 29 Jul 2024 13:27:40 +0100 Subject: [PATCH] fix: treat ws as disconnected if send_text fails --- websocket_connection_manager.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/websocket_connection_manager.py b/websocket_connection_manager.py index 779fdac..64d7b2c 100644 --- a/websocket_connection_manager.py +++ b/websocket_connection_manager.py @@ -13,7 +13,13 @@ async def connect(self, ws: WebSocket): def disconnect(self, ws: WebSocket): self.__active_connections.remove(ws) + async def send_text(self, ws: WebSocket, msg: str): + try: + await ws.send_text(msg) + except: + self.__active_connections.remove(ws) + async def broadcast(self, msg: str): await asyncio.gather( - *[conn.send_text(msg) for conn in self.__active_connections] + *[self.send_text(conn, msg) for conn in self.__active_connections] )