最終更新
役に立ちましたか?
room_chat サンプルは、Diarkis サーバーの Room Chat 機能を使用したインタラクティブな CLI サンプル・プログラムです。ユーザーは Room に参加し、リアルタイムでカスタムチャットメッセージの送受信や、サーバーへの同期コマンドでチャット履歴の取得を行うことができます。
room_chat サンプルでは以下の機能を確認することができます。
Room の参加
Room メンバーへのカスタムチャットメッセージ送信
チャット履歴の取得(同期コマンド)
Room からの退室
サンプルで使用するサーバーを起動するためのチュートリアルを実施して、ローカル環境で Diarkis サーバーを起動します。
サンプルの起動時には以下の3つのパラメータを指定してください。
serverAddr
Diarkis サーバのエンドポイントを指定してください
UID
接続するユーザーの ID を任意の文字列で指定してください
clientKey
クライアントキーを任意の文字列で指定してください
起動例:
Diarkis ランタイムおよび Diarkis Module を初期化し、Diarkis サーバーへ接続します。詳細については Diarkis モジュール利用の全体的な流れ を参照してください。
Room モジュールをセットアップします。
RandomJoin で Room に入室します。DiarkisRoomBase::RandomJoinRoom() は参加可能な Room が存在すればその Room に参加し、存在しなければ新たに Room を作成します。サーバーへリクエストを送信後、DiarkisRoomBase::IsJoin() で Room 入室完了を待機します。
Room 入室後、サンプルはインタラクティブなコマンドループに入ります。標準入力から以下のコマンドで操作できます。
/send/<メッセージ> — Room にチャットメッセージを送信する
/sync — サーバーから全チャット履歴を取得する。OnRoomChatLog コールバックで結果が表示される
/quit — Room を退室してプログラムを終了する
/help — 使用可能なコマンドを表示する
DiarkisRoomBase::SendLeaveRoom() で Room からの退室をリクエストします。DiarkisRoomBase::IsLeave() で退室完了を待機します。
終了処理
Diarkis モジュール利用の全体的な流れ を参照してください。
Windows 環境では、コンソールを UTF-8 エンコーディングに設定して日本語などマルチバイト文字のチャットメッセージを正しく処理します。
複数のクライアントを別々のターミナルウィンドウから同時に起動して、Room Chat の動作を確認できます。
/sync コマンドはサーバーからチャット履歴を取得します。結果は OnRoomChatLog コールバックで表示されます。
最終更新
役に立ちましたか?
役に立ちましたか?
room_chat.exe 192.168.1.123:7000 1111 AAAA// Room モジュールのセットアップ
diarkis->SetupRoom(false);
