データのエクスポート
この記事では、PlayFab からプレイヤーとイベント データをエクスポートする方法について説明します。プレイヤー アカウント データのエクスポート
プレイヤーのデータをエクスポートするリクエストを行うと、リクエストは キュー処理エージェント に送信されます (プレイヤーの削除と同様)。 ExportMasterPlayerData API は、指定されたPlayFabId に関連するすべてのデータをエクスポートします。これには、次のような、すべてのタイトルにわたるデータが含まれます:
- 統計
- カスタム データ
- インベントリ
- 購入
- プレイヤー作成アイテム/UGC
- トランザクション履歴
- 仮想通貨残高
- キャラクター
- グループ メンバーシップ
- パブリッシャー データ
- 資格情報データ
- アカウント リンケージ
- フレンド リスト
- PlayStream イベント履歴
JobReceiptId を返します。今後の参照のためにこれを記録に保存してください。エクスポートがダウンロード可能になるまでには時間がかかる場合があります。
エクスポートの完了時に、エクスポートのダウンロード リンクを含むメールが、タイトル用に構成された通知メール アドレスに送信されます。
タスクの完了は player_data_exported PlayStream イベント もトリガーします。イベントには、プロパティとして JobReceiptId と、エクスポートされたデータへのアクセスを提供する ExportDownloadUrl プロパティが含まれます。Azure Functions を用いたオートメーション ルール または Webhook のいずれかを使用して、選択したエンドポイントでこれらのイベントを受信するよう登録し、必要に応じて処理できます。
以下の例は、C# SDK で Admin API を使用する方法を示しています。別の SDK を使用したい場合は、PlayFab SDKs のリストから選択してください。
URL は、エクスポートの完了後、最大 30 日間利用できます。この時間を経過すると、ファイルは削除され、新しい エクスポート リクエストを開始する必要があります。
エクスポートされたデータの形式
エクスポートされたデータは、JobReceiptId とエクスポート時刻を含む名前の ZIP アーカイブにパッケージ化されます。アーカイブには、ディレクトリ構造に整理された複数のファイルが含まれます。
イベント データのエクスポート
PlayFab には、いくつかのタイプのイベント データ—カスタム データ、エンティティ オブジェクト、およびエンティティ ファイルがあります。カスタム データのエクスポート
カスタム データは、プレイヤーに任意のデータを関連付けることを可能にする幅広いカテゴリの機能を指します。PlayFab はゲーム ロジックからデータを操作する方法を提供しますが、それ以外の方法でデータを解釈したり理解したりすることはありません。レガシー プレイヤー データ
ExportMasterPlayerData API を使用する場合 (PlayFab データのエクスポート セクションを参照)、すべてのプレイヤー データ プロパティは、ZIP アーカイブのルートにある master_player_export.json ファイル内に含まれます:- 「Publisher」データは JSONPath: $.PublisherData にあります。
- タイトル別データは JSONPath: $.Titles[*].CustomData にあります。
エンティティ オブジェクトのエクスポート
ExportMasterPlayerData API を使用する場合、すべてのエンティティ オブジェクトは、ZIP アーカイブのルートにある master_player_export.json ファイル内で見つけることができます: master_player_account エンティティ オブジェクトは JSONPath: $.CustomObjects にあります。 title_player_account エンティティ オブジェクトは JSONPath: $.Titles[*].CustomObjects にあります。 キャラクター エンティティ オブジェクトは JSONPath: $.Titles[].Characters[].CustomObjects にあります。 エンティティ オブジェクトは、GetObjects API 経由でも取得できます。どのエンティティのオブジェクトを探しているか既にわかっている場合は、オブジェクトをすぐに返す専用の API を使用する方が簡単です。ただし、欠点は、プレイヤーの master_player_account エンティティ、各 title_player_account エンティティ、および各キャラクター エンティティごとに、API を別々に呼び出す必要があることです。エンティティ ファイルのエクスポート
ExportMasterPlayerData API を使用する場合、プレイヤーに関連付けられたすべてのエンティティ ファイルは、そのまま ZIP アーカイブの /CustomFiles/ ディレクトリに追加されます。具体的には: プレイヤーの master_player_account エンティティのファイルは /CustomFiles/MasterPlayerFiles/* にあります。 title_player_account については、ファイルは /CustomFiles/TitlePlayerFiles/<TitlePlayerAccountId>/* にあります。エンティティごとに 1 つのサブディレクトリが存在し、ディレクトリ名は title_player_account エンティティ ID です。
