From ccfd70f4c24b579c72123ca76ab50164f8f122b7 Mon Sep 17 00:00:00 2001 From: coletdjnz Date: Mon, 20 Nov 2023 08:04:04 +0000 Subject: [rh:websockets] Migrate websockets to networking framework (#7720) * Adds a basic WebSocket framework * Introduces new minimum `websockets` version of 12.0 * Deprecates `WebSocketsWrapper` Fixes https://github.com/yt-dlp/yt-dlp/issues/8439 Authored by: coletdjnz --- yt_dlp/networking/websocket.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 yt_dlp/networking/websocket.py (limited to 'yt_dlp/networking/websocket.py') diff --git a/yt_dlp/networking/websocket.py b/yt_dlp/networking/websocket.py new file mode 100644 index 000000000..09fcf78ac --- /dev/null +++ b/yt_dlp/networking/websocket.py @@ -0,0 +1,23 @@ +from __future__ import annotations + +import abc + +from .common import Response, RequestHandler + + +class WebSocketResponse(Response): + + def send(self, message: bytes | str): + """ + Send a message to the server. + + @param message: The message to send. A string (str) is sent as a text frame, bytes is sent as a binary frame. + """ + raise NotImplementedError + + def recv(self): + raise NotImplementedError + + +class WebSocketRequestHandler(RequestHandler, abc.ABC): + pass -- cgit v1.2.3