diff --git a/freqtrade/rpc/api_server/ws/proxy.py b/freqtrade/rpc/api_server/ws/proxy.py index 7b19834bc..24eb20585 100644 --- a/freqtrade/rpc/api_server/ws/proxy.py +++ b/freqtrade/rpc/api_server/ws/proxy.py @@ -1,7 +1,7 @@ from typing import Any from fastapi import WebSocket as FastAPIWebSocket -from websockets.client import WebSocketClientProtocol as WebSocket +from websockets.legacy.client import WebSocketClientProtocol as WebSocket from freqtrade.rpc.api_server.ws.types import WebSocketType diff --git a/freqtrade/rpc/api_server/ws/types.py b/freqtrade/rpc/api_server/ws/types.py index 8f7dad33b..0660bbd69 100644 --- a/freqtrade/rpc/api_server/ws/types.py +++ b/freqtrade/rpc/api_server/ws/types.py @@ -1,7 +1,7 @@ from typing import Any, TypeVar from fastapi import WebSocket as FastAPIWebSocket -from websockets.client import WebSocketClientProtocol as WebSocket +from websockets.legacy.client import WebSocketClientProtocol as WebSocket WebSocketType = TypeVar("WebSocketType", FastAPIWebSocket, WebSocket) diff --git a/freqtrade/rpc/external_message_consumer.py b/freqtrade/rpc/external_message_consumer.py index eb69c4876..ed6945458 100644 --- a/freqtrade/rpc/external_message_consumer.py +++ b/freqtrade/rpc/external_message_consumer.py @@ -193,7 +193,7 @@ class ExternalMessageConsumer: ws_url = f"{scheme}://{host}:{port}/api/v1/message/ws?token={token}" # This will raise InvalidURI if the url is bad - async with websockets.connect( + async with websockets.legacy.client.connect( ws_url, max_size=self.message_size_limit, ping_interval=None ) as ws: async with create_channel(ws, channel_id=name, send_throttle=0.5) as channel: @@ -213,8 +213,7 @@ class ExternalMessageConsumer: except ( socket.gaierror, ConnectionRefusedError, - websockets.exceptions.InvalidStatusCode, - websockets.exceptions.InvalidMessage, + websockets.exceptions.InvalidHandshake, ) as e: logger.error(f"Connection Refused - {e} retrying in {self.sleep_time}s") await asyncio.sleep(self.sleep_time)