WebSocketFactory
WebSocketFactory = Callable[[str, dict[str, str]], Awaitable[WebSocketLike]]Opens the project event socket.
Called with the ws(s):// URL and the handshake headers (which carry Authorization), it
returns a connected socket exposing async send(text), async recv() -> str | bytes and
async close() — a websockets connection satisfies that as is.