2.3 KiB
2.3 KiB
WebSocket
コンポーネント機能:バックエンドとのWebSocket接続を確立し、テキストおよびBase64エンコードされた音声・動画データの送受信をサポート。さまざまなイベントコールバックを提供します。
タイプ:通常コンポーネント
親コンポーネント:bricks.VBox
初期化パラメータ
| パラメータ名 | 型 | 説明 |
|---|---|---|
| ws_url | string | WebSocketサーバーの接続アドレス(例:ws://example.com/socket) |
| with_session | boolean | 現在のセッション情報を付与するかどうか。trueの場合、bricks.app.get_session()からセッションを取得し、WebSocketコンストラクタに渡す(注:ソースコード中の綴り誤りsessopnは正しくはsessionである) |
例:
new bricks.WebSocket({ ws_url: "ws://localhost:8080/ws", with_session: true });
主なイベント
| イベント名 | 発生タイミング |
|---|---|
| onopen | WebSocket接続が正常に確立されたときに発生 |
| onmessage | サーバーからメッセージを受信したときに発生(元のメッセージ) |
| onerror | WebSocketでエラーが発生したときに発生 |
| onclose | WebSocket接続が閉じられたときに発生 |
| ontext | text型のメッセージを受信したときに発生(on_messageで解析後に発行) |
| onbase64audio | base64audio型のメッセージを受信したときに発生 |
| onbase64video | base64video型のメッセージを受信したときに発生 |
その他のカスタムタイプは、
ontypedata方式で動的に発行可能。フォーマットはon + type。
イベントデータの説明
onmessageにより解析され発行されるすべてのイベントデータは、JSON形式のe.dataから得られます。構造は以下の通りです:
コンポーネントは{ "type": "text", "data": "Hello" }typeフィールドに基づいて対応するイベント(例:ontext)を自動的に発行し、dataをイベントハンドラの引数として渡します。