WebSocket接続について
Rheel Chat APIは、Socket.IOを使用したリアルタイム双方向通信をサポートしています。 これにより、メッセージの即時受信や各種イベント通知をリアルタイムで実現できます。接続エンドポイント
認証
WebSocket接続には、セッショントークンによる認証が必要です。接続パラメータ
接続の実装
チャンネルへの自動参加
WebSocket接続が確立されると、ユーザーが所属している全チャンネルに自動的に参加します。接続後、ユーザーが所属している全チャンネルのメッセージやイベントをリアルタイムで受信できます。
イベントの受信
WebSocket接続を通じて、以下のイベントをリアルタイムで受信できます。メッセージイベント
リアクションイベント
既読イベント
添付ファイルイベント
実装例
以下は、チャンネルに参加してメッセージを送受信する完全な実装例です。再接続戦略
Socket.IOはデフォルトで自動再接続をサポートしています。ベストプラクティス
接続管理
接続管理
- アプリケーション起動時に接続を確立
- バックグラウンド移行時は切断を検討
- フォアグラウンド復帰時に再接続
- 再接続後は自動的に全チャンネルに再参加されます
メモリ管理
メモリ管理
- イベントリスナーは適切にクリーンアップ
- コンポーネント破棄時にリスナーを削除
- 大量のメッセージ履歴は適切にページング
- 不要になったら
socket.disconnect()を呼ぶ
エラーハンドリング
エラーハンドリング
- すべてのイベントでエラーハンドリングを実装
- トークン期限切れに対応
- ネットワークエラーを適切に処理
connect_errorとerrorイベントを監視
パフォーマンス
パフォーマンス
- 不要なイベントリスナーは登録しない
- メッセージ受信時のUI更新を最適化
- 大量のイベント受信時はバッチ処理を検討
トラブルシューティング
接続できない
接続できない
症状:
connect_errorイベントが発生する確認事項:- トークンが正しく設定されているか
- トークンの有効期限が切れていないか
- エンドポイントURLが正しいか
- ネットワーク接続が正常か
メッセージを受信できない
メッセージを受信できない
症状:
messages:createdイベントが発火しない確認事項:- WebSocket接続が正常に確立されているか(
connectイベントを受信したか) - ユーザーがチャンネルに所属しているか(REST APIで確認)
- 正しいチャンネルでメッセージが送信されているか
再接続が頻繁に発生する
再接続が頻繁に発生する
症状: 接続が不安定対策:
transportsの順序を調整(['websocket', 'polling'])- タイムアウト値を調整
- ネットワーク環境を確認
次のステップ
メッセージAPI
REST APIでメッセージを送信する
チャンネルAPI
チャンネルの作成と管理

