pybotters.WebSocketApp¶
- class pybotters.WebSocketApp(session: aiohttp.ClientSession, url: str, *, send_str: str | list[str] | None = None, send_bytes: bytes | list[bytes] | None = None, send_json: dict | list[dict] | None = None, hdlr_str: WsStrHandler | list[WsStrHandler] | None = None, hdlr_bytes: WsBytesHandler | list[WsBytesHandler] | None = None, hdlr_json: WsJsonHandler | list[WsJsonHandler] | None = None, backoff: tuple[float, float, float, float] = (1.92, 60.0, 1.618, 5.0), **kwargs: Any)¶
WebSocket Application.
自動再接続、自動認証、自動 PING/PONG を備えた WebSocket アプリケーションです。
Usage example: WebSocketQueue
Methods
__init__(session, url, *[, send_str, ...])WebSocket Application.
heartbeat([timeout])Ensure WebSocket connection is open with Ping-Pong.
wait()Wait WebSocketApp.
Attributes
Current WebSocket connection.
WebSocket URL.
- property current_ws: ClientWebSocketResponse | None¶
Current WebSocket connection.
現在の WebSocket コネクションです。 現在のコネクションが存在する場合は ClientWebSocketResponse を返します。 コネクションが存在しない場合は None を返します。
- async heartbeat(timeout: float = 10.0) None¶
Ensure WebSocket connection is open with Ping-Pong.
WebSocket の Ping-Pong で接続の疎通を確認します。 ユーザーコード内で WebSocket のデータを利用する前にこのコルーチンを待機することで、 WebSocket の接続性を保証するのに役に立ちます。
一定時間 Pong が返ってこない場合は再接続を試みます。 このメソッドは疎通が確認されるまで待機します。
- パラメータ:
timeout -- WebSocket Ping-Pong ハートビート (デフォルト 10.0 秒)