Skip to main content
ここで説明する REST および SignalR API はクライアント SDK より複雑です。これらの SDK が要件を満たさない場合を除き、代わりに Lobby C++ SDK または Matchmaking C++ SDK の使用をご検討ください。
Lobby およびマッチメイキング サービス のリアルタイム メッセージ機能は SignalR サービス を通じて動作し、SignalR Hub を公開します。この SignalR Hub は、ゲーム クライアントが サブスクライブしたリソース に関するメッセージを受信するために使用できます。

SignalR Hub への接続

リアルタイム メッセージを受信する最初の手順は、SignalR クライアント を作成することです。クライアントは、次の API を使用して HubConnection をインスタンス化 することで SignalR Hub への接続を作成できます。SignalR Negotiate REST API。この API は、SignalR のドキュメント で説明されている Negotiate API を実装しています。
SignalR Hub への接続時に MessagePack (MsgPack) エンコード を使用することを強く推奨します。将来的にはサポートされる唯一のエンコードとして強制される予定です。
クライアントは HubConnection を構築する際に KeepAliveInterval5 秒 に設定する 必要があります。バックエンド サービスは、10 秒 以内にキープアライブ ping を受信しなかった接続をタイムアウトして閉じます。SignalR の既定の KeepAliveInterval である 15 秒では遅すぎ、切断の原因となります。 csharp var connection = new HubConnectionBuilder() .WithUrl(hubUrl, options => { /* auth headers */ }) .WithKeepAliveInterval(TimeSpan.FromSeconds(5)) .Build(); SignalR クライアント構成の詳細については、SignalR 構成のドキュメント を参照してください。
  1. SignalR クライアントの実装では、URL からこのパスの /negotiate 部分を省略する必要があります (たとえば、HubConnection は ...playfabapi.com/pubsub で終わる URL に対して作成します)。 1. この API の呼び出しに必要な認証ヘッダーは、このメソッド で示されているように HttpConnectionOptions を通じて SignalR クライアントに渡すことができます。

メッセージを受信するクライアント メソッドの実装

メッセージを受信するために呼び出される クライアント メソッドの実装に関する SignalR クライアントのドキュメントを参照してください。クライアントは、以下の Client methods に記載されているすべてのメソッドを実装する必要があります。

サーバー メソッドを呼び出してセッションを開始・終了する

セッションを管理するために、サーバー メソッドの呼び出しに関する SignalR クライアントのドキュメントを参照してください。たとえば、ハブに接続した後は、StartOrRecoverSession を呼び出して、リソースをサブスクライブ するために使用できる connection handle を取得する必要があります。同様に、セッションが終了したら EndSession を呼び出します。

リソースへのサブスクライブ

StartOrRecoverSession でセッションを開始した後、返された connection handle を使用して リソースをサブスクライブ し、メッセージの受信を開始できます。

API

クライアント メソッド

サーバー メソッド

共有セッション メソッド

関連項目

最終更新日 2026年8月25日