匯出資料
本文說明如何從 PlayFab 匯出玩家和事件資料。匯出玩家帳戶資料
當您提出匯出玩家資料的要求時,該要求會傳送給佇列處理代理程式 (與刪除玩家類似)。 ExportMasterPlayerData API 會匯出與指定PlayFabId 相關聯的所有資料,包括您所有遊戲中的資料,例如:
- 統計資料
- 自訂資料
- 物品欄
- *購買 *
- 玩家建立的物品/UGC
- 交易歷程記錄
- 虛擬貨幣餘額
- 角色
- 群組成員資格
- 發行者資料
- 認證資料
- 帳戶連結
- 好友清單
- PlayStream 事件歷程記錄。
JobReceiptId,您應該將其儲存在記錄中以供日後參考。匯出可能需要一些時間才能供下載。
匯出完成後,系統會將包含匯出下載連結的電子郵件傳送至為遊戲設定的通知電子郵件地址。
工作完成也會觸發 player_data_exported PlayStream 事件。該事件包含 JobReceiptId 屬性,以及提供匯出資料存取權的 ExportDownloadUrl 屬性。使用搭配 Azure Functions 的自動化規則或 Webhook,您可以註冊在您選擇的端點上接收這些事件,並視需要處理。
下列範例示範如何搭配 C# SDK 使用 Admin API。如果您想使用不同的 SDK,請從 PlayFab SDK 清單中選取一個。
URL 在匯出完成後最多 30 天內可供使用。超過此時間後,檔案將被刪除,您將需要發起新的匯出要求。
匯出資料的格式
匯出的資料會封裝在 ZIP 封存中,其名稱包含JobReceiptId 和匯出時間。封存中包含多個依目錄結構組織的檔案。
匯出事件資料
PlayFab 提供數種類型的事件資料:自訂資料、實體物件和實體檔案。匯出自訂資料
自訂資料是指一大類功能,可讓您將任意資料與玩家建立關聯。PlayFab 提供從遊戲邏輯與資料互動的方法,但不會以其他方式解譯或理解這些資料。舊版玩家資料
使用 ExportMasterPlayerData API 時 (如「匯出 PlayFab 資料」一節所述),所有玩家資料屬性都可以在 ZIP 封存根目錄的 master_player_export.json 檔案中找到:- 「發行者」資料位於 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>/*每個實體都有一個子目錄,並以 title_player_account 實體識別碼作為目錄名稱。
