ユーザームからのユーザーの表示

このトピックでは、People システムを使用してユーザーを表示するためのコード フローについて説明します。 以下は、タイトルが People に関連するサービスからデータを取得する方法を示すコール フロー シナリオの例です。

Xbox Live のあらゆるサービスは、そのサービスが保有するデータのみを返し、ユーザーへの XUID 参照のみを返します。 次に例をいくつか示します。

  • People サービスは、ユーザーの People リストに存在する XUID と、それらの各 XUID に関する一部のごく基本的な情報 (お気に入りの状態など) のみを保有し、また返します。
  • プレゼンス サービスは、XUID のオンライン状態情報に関するデータを保有します。
  • ランキング サービスは、XUID のリストのランキング情報を保有します。

エクスペリエンス内のユーザーのリストをレンダリングするには、複数のサービスを呼び出す必要があります。 これは、プロフィール サービス以外のサービスから表示名とゲーマータグ情報が返されることがないためです。

サービス API の一般的な呼び出しパターンでは、1 回目のラウンド トリップで、リストの最適なフィルター処理または並べ替えを実行できるサービスから XUID のリストを最初に取得します。次に、各 XUID に必要な追加のメタデータを取得するために必要な他のサービスに対して同時にラウンド トリップ呼び出しを行います。 画像の場合、画像の URL から画像を取得するために、3 回目のラウンド トリップ呼び出しが必要な場合があります。

ユーザーの People リストに関するデータの取得に必要なラウンド トリップ回数を減らすために、People モニカーが関連サービスに導入されつつあります。 この機能により、呼び出し元は、ユーザーの People のリストを People サービスから取得すること、また、戻り値のスコープを設定するためにその XUID のセットを使用することをプライマリ サービスに対して抽象的に表明することができます。

このトピックの先頭に戻る。

ゲームに参加中のユーザーのリスト

タイトルが保持しているもの

ゲームに参加している他のユーザーのランダムな XUID のリスト。

目的:

他の各ユーザーについて最小限の情報を表示する。

表示するフィールド [保有するサービス]:

GameDisplayName [Profile]

呼び出しフロー:

XUID のリストを使用して Profile を呼び出す。

このトピックの先頭に戻る。

現在のユーザーの People に含まれるオンライン ユーザーのリスト

タイトルが保持しているもの

現在のユーザーの XUID。

目的:

現在のユーザーの People リストに含まれているオンライン ユーザーのリッチ リストを表示する。

表示するフィールド [保有するサービス]:

  • お気に入りインジケーター [People]
  • 表示用画像 [プロフィール]
  • GameDisplayName [Profile]
  • 基本的なオンライン状態 (緑の円) [プレゼンス]

呼び出しフロー:

  1. People モニカーを渡して Presence を呼び出し、ユーザーの People に含まれる各ユーザーの XUID とオンライン状態を取得する。
  2. 並行して:
    1. XUID のリスト全体を渡して Profile を呼び出し、各ユーザーの表示名と画像 URL を取得する。 各画像 URL の画像を取得する。
    2. XUID のリストを渡して People を呼び出し、ユーザーのお気に入りがいるかどうか調べる。

このトピックの先頭に戻る。

ランダムなユーザーを含むグローバル ランキング

タイトルが保持しているもの

ランキングの ID/名前。

目的:

ランキング上の各ユーザーの基本情報を表示する。

表示するフィールド [保有するサービス]:

  • お気に入りインジケーター [People]
  • GameDisplayName [Profile]
  • ランク [ランキング]
  • スコア [ランキング]

呼び出しフロー:

  1. Leaderboards を呼び出して特定のランキングの XUID、ランク、スコアを取得する。
  2. 並行して:
    • XUID のリストを渡して Profile を呼び出し、各ユーザーの表示名と画像 URL を取得する。
    • XUID のリストを渡して People を呼び出し、ユーザーのお気に入りがいるかどうか調べる。

このトピックの先頭に戻る。

ユーザーの People のランキング

タイトルが保持しているもの:

  • ランキングの ID/名前
  • 現在のユーザーの XUID

目的:

ランキング上の各ユーザーの基本情報を表示する。

表示するフィールド [保有するサービス]:

  • お気に入りインジケーター [People]
  • GameDisplayName [Profile]
  • ランク [ランキング]
  • スコア [ランキング]

呼び出しフロー:

  1. People モニカーを渡して Leaderboards を呼び出し、ユーザーの People リストに限定した特定のランキングの XUID、ランク、スコアを取得する。
  2. 並行して:
    • XUID のリストを渡して Profile を呼び出し、各ユーザーの表示名と画像 URL を取得する。
    • XUID のリストを渡して People を呼び出し、ユーザーのお気に入りがいるかどうか調べる。

このトピックの先頭に戻る。