bricks/docs/ja/websocket.md
2025-11-19 12:30:39 +08:00

45 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# WebSocket
コンポーネント機能バックエンドとのWebSocket接続を確立し、テキストおよびBase64エンコードされた音声・動画データの送受信をサポート。さまざまなイベントコールバックを提供します。
タイプ:通常コンポーネント
親コンポーネントbricks.VBox
## 初期化パラメータ
| パラメータ名 | 型 | 説明 |
|----------------|--------|------|
| ws_url | string | WebSocketサーバーの接続アドレス`ws://example.com/socket` |
| with_session | boolean | 現在のセッション情報を付与するかどうか。`true`の場合、`bricks.app.get_session()`からセッションを取得し、WebSocketコンストラクタに渡すソースコード中の綴り誤り`sessopn`は正しくは`session`である) |
> 例:
> ```js
> 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`から得られます。構造は以下の通りです:
```json
{
"type": "text",
"data": "Hello"
}
```
コンポーネントは`type`フィールドに基づいて対応するイベント(例:`ontext`)を自動的に発行し、`data`をイベントハンドラの引数として渡します。