コンテンツにスキップ

WebSocket

messaging-websocket は、build-answer.json から生成される answer 所有のメッセージングプロバイダーです。クライアントが Greentic とライブ WebSocket セッションを維持し、名前付きチャットプラットフォームではなく JSON frame を交換する場合に役立ちます。

現在サポートしている機能:

  • 認証なし、bearer-token auth、query-token auth による接続検証
  • JSON オブジェクトを含む受信 text frame を正規化イベントへマッピング
  • メッセージ payload から送信 text frame を構築
  • opencloseerror の lifecycle event を正規化

binary frame は現在のプロバイダー実装では保留されています。

  1. プロバイダー pack を追加する

    gtc wizardmessaging-websocket を選択するか、メッセージングプロバイダーカタログから pack を bundle に追加します。

  2. 接続ポリシーを設定する

    インストール済み pack に対して生成された setup answers を使います。典型的な設定には tenant/team metadata と任意の認証が含まれます。

  3. setup を実行する

    Terminal window
    gtc setup ./my-bundle
  4. runtime を起動する

    Terminal window
    gtc start ./my-bundle

受信 frame は JSON オブジェクトを含む text frame である必要があります。プロバイダーはそれを次のようなイベントにマッピングします:

{
"provider": "messaging-websocket",
"direction": "inbound",
"kind": "websocket.frame",
"session_id": "session-1",
"payload": {
"message": "hello"
},
"metadata": {
"tenant_id": "demo",
"team_id": "default"
}
}

lifecycle event は websocket.openwebsocket.closewebsocket.error などの kind 値で正規化されます。

送信メッセージには session_id とオブジェクト payload が必要です。これらは text frame に変換されます:

{
"session_id": "session-1",
"opcode": "text",
"data": "{\"message\":\"hello\"}"
}
方向プロトコルとポート目的
受信Greentic への WSS 443本番環境のブラウザーまたはサービス WebSocket クライアント
受信、ローカル開発ローカル runtime/tester ポートの WSTLS/トンネル終端前のローカルテスト
送信host/runtime integration が使う場合の設定済み endpoint への WS または WSSプロバイダーが構築する送信 frame

ローカル tester を使います:

Terminal window
./scripts/test_ws.sh

tester ページには受信 frame マッピング、送信 frame 生成、lifecycle event 正規化の個別ボタンがあり、明確な pass/fail ステータスを表示します。