From 6378171918b7754ba4748b784361160adbcb53dc Mon Sep 17 00:00:00 2001 From: Playfab Jenkins Bot Date: Mon, 13 Mar 2017 20:31:37 +0000 Subject: [PATCH] https://api.playfab.com/releaseNotes/#170313 --- .../java/com/playfab/PlayFabClientAPI.java | 18 +- .../java/com/playfab/PlayFabClientModels.java | 266 ++++++++++++------ .../main/java/com/playfab/PlayFabErrors.java | 12 +- .../java/com/playfab/PlayFabSettings.java | 6 +- .../src/com/playfab/PlayFabClientAPI.java | 18 +- .../src/com/playfab/PlayFabClientModels.java | 266 ++++++++++++------ .../src/com/playfab/PlayFabErrors.java | 12 +- .../src/com/playfab/PlayFabSettings.java | 6 +- .../src/com/playfab/PlayFabAdminModels.java | 20 +- .../src/com/playfab/PlayFabClientAPI.java | 18 +- .../src/com/playfab/PlayFabClientModels.java | 266 ++++++++++++------ PlayFabSDK/src/com/playfab/PlayFabErrors.java | 12 +- .../src/com/playfab/PlayFabServerModels.java | 216 +++++++++++++- .../src/com/playfab/PlayFabSettings.java | 6 +- .../src/com/playfab/PlayFabAdminModels.java | 20 +- .../src/com/playfab/PlayFabErrors.java | 12 +- .../src/com/playfab/PlayFabServerModels.java | 216 +++++++++++++- .../src/com/playfab/PlayFabSettings.java | 6 +- 18 files changed, 1084 insertions(+), 312 deletions(-) diff --git a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientAPI.java b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientAPI.java index 55b5a80c..3759ce0b 100644 --- a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientAPI.java +++ b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientAPI.java @@ -6900,7 +6900,7 @@ private static PlayFabResult privateValidateAmazonI } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") public static FutureTask> AcceptTradeAsync(final AcceptTradeRequest request) { @@ -6912,7 +6912,7 @@ public PlayFabResult call() throws Exception { } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") public static PlayFabResult AcceptTrade(final AcceptTradeRequest request) { @@ -6930,7 +6930,7 @@ public PlayFabResult call() throws Exception { } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") private static PlayFabResult privateAcceptTradeAsync(final AcceptTradeRequest request) throws Exception { @@ -6958,7 +6958,7 @@ private static PlayFabResult privateAcceptTradeAsync(final } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") public static FutureTask> CancelTradeAsync(final CancelTradeRequest request) { @@ -6970,7 +6970,7 @@ public PlayFabResult call() throws Exception { } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") public static PlayFabResult CancelTrade(final CancelTradeRequest request) { @@ -6988,7 +6988,7 @@ public PlayFabResult call() throws Exception { } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") private static PlayFabResult privateCancelTradeAsync(final CancelTradeRequest request) throws Exception { @@ -7132,7 +7132,7 @@ private static PlayFabResult privateGetTradeStatusAsync( } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") public static FutureTask> OpenTradeAsync(final OpenTradeRequest request) { @@ -7144,7 +7144,7 @@ public PlayFabResult call() throws Exception { } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") public static PlayFabResult OpenTrade(final OpenTradeRequest request) { @@ -7162,7 +7162,7 @@ public PlayFabResult call() throws Exception { } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") private static PlayFabResult privateOpenTradeAsync(final OpenTradeRequest request) throws Exception { diff --git a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientModels.java b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientModels.java index 81cd1369..94df3f06 100644 --- a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientModels.java +++ b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabClientModels.java @@ -29,7 +29,7 @@ public static class AcceptTradeResponse { } - public static class AdCampaignAttribution { + public static class AdCampaignAttributionModel { /** * Attribution network name */ @@ -1442,6 +1442,10 @@ public static class GetFriendLeaderboardAroundPlayerRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1490,6 +1494,10 @@ public static class GetFriendLeaderboardRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1562,6 +1570,10 @@ public static class GetLeaderboardAroundPlayerRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1622,6 +1634,10 @@ public static class GetLeaderboardRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -2448,6 +2464,26 @@ public static class LinkCustomIDResult { } + public static class LinkedPlatformAccountModel { + /** + * Authentication platform + */ + public LoginIdentityProvider Platform; + /** + * Unique account identifier of the user on the platform + */ + public String PlatformUserId; + /** + * Linked account username of the user on the platform, if available + */ + public String Username; + /** + * Linked account email of the user on the platform, if available + */ + public String Email; + + } + public static class LinkFacebookAccountRequest { /** * Unique identifier from Facebook for the user. @@ -2617,6 +2653,30 @@ public static class ListUsersCharactersResult { } + public static class LocationModel { + /** + * The two-character continent code for this location + */ + public ContinentCode ContinentCode; + /** + * The two-character ISO 3166-1 country code for the country associated with the location + */ + public CountryCode CountryCode; + /** + * City name. + */ + public String City; + /** + * Latitude coordinate of the geographic location. + */ + public Double Latitude; + /** + * Longitude coordinate of the geographic location. + */ + public Double Longitude; + + } + public static enum LoginIdentityProvider { Unknown, PlayFab, @@ -3171,153 +3231,145 @@ public static class PlayerLeaderboardEntry { */ public Integer Position; /** - * The profile of the user, if requested. Note that this profile may have sensitive fields scrubbed. + * The profile of the user, if requested. */ - public PlayerProfile Profile; + public PlayerProfileModel Profile; } - public static class PlayerLinkedAccount { + public static class PlayerProfileModel { /** - * Authentication platform + * Publisher this player belongs to */ - public LoginIdentityProvider Platform; + public String PublisherId; /** - * Platform user identifier + * Title ID this profile applies to */ - public String PlatformUserId; + public String TitleId; /** - * Linked account's username + * PlayFab Player ID */ - public String Username; + public String PlayerId; /** - * Linked account's email + * Player record created */ - public String Email; - - } - - public static class PlayerLocation { + public Date Created; /** - * The two-character continent code for this location + * Player account origination */ - public ContinentCode ContinentCode; + public LoginIdentityProvider Origination; /** - * The two-character ISO 3166-1 country code for the country associated with the location + * Last login */ - public CountryCode CountryCode; + public Date LastLogin; /** - * City of the player's geographic location. + * If the player is currently banned, the UTC Date when the ban expires */ - public String City; + public Date BannedUntil; /** - * Latitude coordinate of the player's geographic location. + * List of geographic locations where the player has logged-in */ - public Double Latitude; + public ArrayList Locations; /** - * Longitude coordinate of the player's geographic location. + * Player Display Name */ - public Double Longitude; - - } - - public static class PlayerProfile { + public String DisplayName; /** - * PlayFab Player ID + * Image URL of the player's avatar */ - public String PlayerId; + public String AvatarUrl; /** - * Title ID this profile applies to + * List of player's tags for segmentation */ - public String TitleId; + public ArrayList Tags; /** - * Player Display Name + * List of configured end points registered for sending the player push notifications */ - public String DisplayName; + public ArrayList PushNotificationRegistrations; /** - * Publisher this player belongs to + * List of third party accounts linked to this player */ - public String PublisherId; + public ArrayList LinkedAccounts; /** - * Player account origination + * List of advertising campaigns the player has been attributed to */ - public LoginIdentityProvider Origination; + public ArrayList AdCampaignAttributions; /** - * Player record created + * A sum of player's total purchases across all real-money currencies, converted to US Dollars equivalent */ - public Date Created; + public Long TotalValueToDateInUSD; /** - * Last login + * List of player's total lifetime real-money purchases by currency */ - public Date LastLogin; + public ArrayList ValuesToDate; /** - * Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. + * List of player's virtual currency balances */ - public Date BannedUntil; + public ArrayList VirtualCurrencyBalances; /** - * Image URL of the player's avatar. + * List of leaderboard statistic values for the player */ - public String AvatarUrl; + public ArrayList Statistics; + + } + + public static class PlayerProfileViewConstraints { /** - * Dictionary of player's statistics using only the latest version's value + * Whether to show the display name. Defaults to false */ - public Map Statistics; + public Boolean ShowDisplayName; /** - * A sum of player's total purchases in USD across all currencies. + * Whether to show the created date. Defaults to false */ - public Long TotalValueToDateInUSD; + public Boolean ShowCreated; /** - * Dictionary of player's total purchases by currency. + * Whether to show origination. Defaults to false */ - public Map ValuesToDate; + public Boolean ShowOrigination; /** - * List of player's tags for segmentation. + * Whether to show the last login time. Defaults to false */ - public ArrayList Tags; + public Boolean ShowLastLogin; /** - * Dictionary of player's locations by type. + * Whether to show the banned until time. Defaults to false */ - public Map Locations; + public Boolean ShowBannedUntil; /** - * Dictionary of player's virtual currency balances + * Whether to show statistics, the most recent version of each stat. Defaults to false */ - public Map VirtualCurrencyBalances; + public Boolean ShowStatistics; /** - * Array of ad campaigns player has been attributed to + * Whether to show campaign attributions. Defaults to false */ - public ArrayList AdCampaignAttributions; + public Boolean ShowCampaignAttributions; /** - * Array of configured push notification end points + * Whether to show push notification registrations. Defaults to false */ - public ArrayList PushNotificationRegistrations; + public Boolean ShowPushNotificationRegistrations; /** - * Array of third party accounts linked to this player + * Whether to show the linked accounts. Defaults to false */ - public ArrayList LinkedAccounts; + public Boolean ShowLinkedAccounts; /** - * Array of player statistics + * Whether to show the total value to date in usd. Defaults to false */ - public ArrayList PlayerStatistics; - - } - - public static class PlayerStatistic { + public Boolean ShowTotalValueToDateInUsd; /** - * Statistic ID + * Whether to show the values to date. Defaults to false */ - public String Id; + public Boolean ShowValuesToDate; /** - * Statistic version (0 if not a versioned statistic) + * Whether to show tags. Defaults to false */ - public Integer StatisticVersion; + public Boolean ShowTags; /** - * Current statistic value + * Whether to show player's locations. Defaults to false */ - public Integer StatisticValue; + public Boolean ShowLocations; /** - * Statistic name + * Whether to show player's avatar URL. Defaults to false */ - public String Name; + public Boolean ShowAvatarUrl; } @@ -3390,7 +3442,7 @@ public static enum PushNotificationPlatform { GoogleCloudMessaging } - public static class PushNotificationRegistration { + public static class PushNotificationRegistrationModel { /** * Push notification platform */ @@ -3792,6 +3844,22 @@ public static class StartPurchaseResult { } + public static class StatisticModel { + /** + * Statistic name + */ + public String Name; + /** + * Statistic version (0 if not a versioned statistic) + */ + public Integer Version; + /** + * Statistic value + */ + public Integer Value; + + } + public static class StatisticNameVersion { /** * unique name of the statistic @@ -3911,6 +3979,14 @@ public static class SubtractUserVirtualCurrencyRequest { } + public static class TagModel { + /** + * Full value of the tag, including namespace + */ + public String TagValue; + + } + public static enum TitleActivationStatus { None, ActivatedTitleKey, @@ -4705,6 +4781,34 @@ public static class ValidateWindowsReceiptResult { } + public static class ValueToDateModel { + /** + * ISO 4217 code of the currency used in the purchases + */ + public String Currency; + /** + * Total value of the purchases in a whole number of 1/100 monetary units. For example 999 indicates nine dollars and ninety-nine cents when Currency is 'USD') + */ + public Long TotalValue; + /** + * Total value of the purchases in a string representation of decimal monetary units (e.g. '9.99' indicates nine dollars and ninety-nine cents when Currency is 'USD')) + */ + public String TotalValueAsDecimal; + + } + + public static class VirtualCurrencyBalanceModel { + /** + * Name of the virtual currency + */ + public String Currency; + /** + * Balance of the virtual currency + */ + public Integer TotalValue; + + } + public static class VirtualCurrencyRechargeTime { /** * Time remaining (in seconds) before the next recharge increment of the virtual currency. diff --git a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabErrors.java b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabErrors.java index 6519c6ff..f4b2c6aa 100644 --- a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabErrors.java +++ b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabErrors.java @@ -276,7 +276,17 @@ public static enum PlayFabErrorCode { UserNotFriend(1272), InvalidSignature(1273), InvalidPublicKey(1274), - GoogleOAuthNoIdTokenIncludedInResponse(1275); + GoogleOAuthNoIdTokenIncludedInResponse(1275), + StatisticUpdateInProgress(1276), + LeaderboardVersionNotAvailable(1277), + StatisticAlreadyHasPrizeTable(1279), + PrizeTableHasOverlappingRanks(1280), + PrizeTableHasMissingRanks(1281), + PrizeTableRankStartsAtZero(1282), + InvalidStatistic(1283), + ExpressionParseFailure(1284), + ExpressionInvokeFailure(1285), + ExpressionTooLong(1286); public int id; diff --git a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabSettings.java b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabSettings.java index 7161cc84..563938d5 100644 --- a/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabSettings.java +++ b/AndroidStudioExample/app/src/main/java/com/playfab/PlayFabSettings.java @@ -4,9 +4,9 @@ import com.playfab.PlayFabErrors.ErrorCallback; public class PlayFabSettings { - public static String SdkVersion = "0.45.170223"; - public static String BuildIdentifier = "jbuild_javasdk_0"; - public static String SdkVersionString = "JavaSDK-0.45.170223"; + public static String SdkVersion = "0.46.170313"; + public static String BuildIdentifier = "jbuild_javasdk_1"; + public static String SdkVersionString = "JavaSDK-0.46.170313"; public static String TitleId = null; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) public static ErrorCallback GlobalErrorHandler; diff --git a/PlayFabClientSDK/src/com/playfab/PlayFabClientAPI.java b/PlayFabClientSDK/src/com/playfab/PlayFabClientAPI.java index 5da1a4e3..79f5d9d3 100644 --- a/PlayFabClientSDK/src/com/playfab/PlayFabClientAPI.java +++ b/PlayFabClientSDK/src/com/playfab/PlayFabClientAPI.java @@ -6899,7 +6899,7 @@ private static PlayFabResult privateValidateAmazonI } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") public static FutureTask> AcceptTradeAsync(final AcceptTradeRequest request) { @@ -6911,7 +6911,7 @@ public PlayFabResult call() throws Exception { } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") public static PlayFabResult AcceptTrade(final AcceptTradeRequest request) { @@ -6929,7 +6929,7 @@ public PlayFabResult call() throws Exception { } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") private static PlayFabResult privateAcceptTradeAsync(final AcceptTradeRequest request) throws Exception { @@ -6957,7 +6957,7 @@ private static PlayFabResult privateAcceptTradeAsync(final } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") public static FutureTask> CancelTradeAsync(final CancelTradeRequest request) { @@ -6969,7 +6969,7 @@ public PlayFabResult call() throws Exception { } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") public static PlayFabResult CancelTrade(final CancelTradeRequest request) { @@ -6987,7 +6987,7 @@ public PlayFabResult call() throws Exception { } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") private static PlayFabResult privateCancelTradeAsync(final CancelTradeRequest request) throws Exception { @@ -7131,7 +7131,7 @@ private static PlayFabResult privateGetTradeStatusAsync( } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") public static FutureTask> OpenTradeAsync(final OpenTradeRequest request) { @@ -7143,7 +7143,7 @@ public PlayFabResult call() throws Exception { } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") public static PlayFabResult OpenTrade(final OpenTradeRequest request) { @@ -7161,7 +7161,7 @@ public PlayFabResult call() throws Exception { } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") private static PlayFabResult privateOpenTradeAsync(final OpenTradeRequest request) throws Exception { diff --git a/PlayFabClientSDK/src/com/playfab/PlayFabClientModels.java b/PlayFabClientSDK/src/com/playfab/PlayFabClientModels.java index 81cd1369..94df3f06 100644 --- a/PlayFabClientSDK/src/com/playfab/PlayFabClientModels.java +++ b/PlayFabClientSDK/src/com/playfab/PlayFabClientModels.java @@ -29,7 +29,7 @@ public static class AcceptTradeResponse { } - public static class AdCampaignAttribution { + public static class AdCampaignAttributionModel { /** * Attribution network name */ @@ -1442,6 +1442,10 @@ public static class GetFriendLeaderboardAroundPlayerRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1490,6 +1494,10 @@ public static class GetFriendLeaderboardRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1562,6 +1570,10 @@ public static class GetLeaderboardAroundPlayerRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1622,6 +1634,10 @@ public static class GetLeaderboardRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -2448,6 +2464,26 @@ public static class LinkCustomIDResult { } + public static class LinkedPlatformAccountModel { + /** + * Authentication platform + */ + public LoginIdentityProvider Platform; + /** + * Unique account identifier of the user on the platform + */ + public String PlatformUserId; + /** + * Linked account username of the user on the platform, if available + */ + public String Username; + /** + * Linked account email of the user on the platform, if available + */ + public String Email; + + } + public static class LinkFacebookAccountRequest { /** * Unique identifier from Facebook for the user. @@ -2617,6 +2653,30 @@ public static class ListUsersCharactersResult { } + public static class LocationModel { + /** + * The two-character continent code for this location + */ + public ContinentCode ContinentCode; + /** + * The two-character ISO 3166-1 country code for the country associated with the location + */ + public CountryCode CountryCode; + /** + * City name. + */ + public String City; + /** + * Latitude coordinate of the geographic location. + */ + public Double Latitude; + /** + * Longitude coordinate of the geographic location. + */ + public Double Longitude; + + } + public static enum LoginIdentityProvider { Unknown, PlayFab, @@ -3171,153 +3231,145 @@ public static class PlayerLeaderboardEntry { */ public Integer Position; /** - * The profile of the user, if requested. Note that this profile may have sensitive fields scrubbed. + * The profile of the user, if requested. */ - public PlayerProfile Profile; + public PlayerProfileModel Profile; } - public static class PlayerLinkedAccount { + public static class PlayerProfileModel { /** - * Authentication platform + * Publisher this player belongs to */ - public LoginIdentityProvider Platform; + public String PublisherId; /** - * Platform user identifier + * Title ID this profile applies to */ - public String PlatformUserId; + public String TitleId; /** - * Linked account's username + * PlayFab Player ID */ - public String Username; + public String PlayerId; /** - * Linked account's email + * Player record created */ - public String Email; - - } - - public static class PlayerLocation { + public Date Created; /** - * The two-character continent code for this location + * Player account origination */ - public ContinentCode ContinentCode; + public LoginIdentityProvider Origination; /** - * The two-character ISO 3166-1 country code for the country associated with the location + * Last login */ - public CountryCode CountryCode; + public Date LastLogin; /** - * City of the player's geographic location. + * If the player is currently banned, the UTC Date when the ban expires */ - public String City; + public Date BannedUntil; /** - * Latitude coordinate of the player's geographic location. + * List of geographic locations where the player has logged-in */ - public Double Latitude; + public ArrayList Locations; /** - * Longitude coordinate of the player's geographic location. + * Player Display Name */ - public Double Longitude; - - } - - public static class PlayerProfile { + public String DisplayName; /** - * PlayFab Player ID + * Image URL of the player's avatar */ - public String PlayerId; + public String AvatarUrl; /** - * Title ID this profile applies to + * List of player's tags for segmentation */ - public String TitleId; + public ArrayList Tags; /** - * Player Display Name + * List of configured end points registered for sending the player push notifications */ - public String DisplayName; + public ArrayList PushNotificationRegistrations; /** - * Publisher this player belongs to + * List of third party accounts linked to this player */ - public String PublisherId; + public ArrayList LinkedAccounts; /** - * Player account origination + * List of advertising campaigns the player has been attributed to */ - public LoginIdentityProvider Origination; + public ArrayList AdCampaignAttributions; /** - * Player record created + * A sum of player's total purchases across all real-money currencies, converted to US Dollars equivalent */ - public Date Created; + public Long TotalValueToDateInUSD; /** - * Last login + * List of player's total lifetime real-money purchases by currency */ - public Date LastLogin; + public ArrayList ValuesToDate; /** - * Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. + * List of player's virtual currency balances */ - public Date BannedUntil; + public ArrayList VirtualCurrencyBalances; /** - * Image URL of the player's avatar. + * List of leaderboard statistic values for the player */ - public String AvatarUrl; + public ArrayList Statistics; + + } + + public static class PlayerProfileViewConstraints { /** - * Dictionary of player's statistics using only the latest version's value + * Whether to show the display name. Defaults to false */ - public Map Statistics; + public Boolean ShowDisplayName; /** - * A sum of player's total purchases in USD across all currencies. + * Whether to show the created date. Defaults to false */ - public Long TotalValueToDateInUSD; + public Boolean ShowCreated; /** - * Dictionary of player's total purchases by currency. + * Whether to show origination. Defaults to false */ - public Map ValuesToDate; + public Boolean ShowOrigination; /** - * List of player's tags for segmentation. + * Whether to show the last login time. Defaults to false */ - public ArrayList Tags; + public Boolean ShowLastLogin; /** - * Dictionary of player's locations by type. + * Whether to show the banned until time. Defaults to false */ - public Map Locations; + public Boolean ShowBannedUntil; /** - * Dictionary of player's virtual currency balances + * Whether to show statistics, the most recent version of each stat. Defaults to false */ - public Map VirtualCurrencyBalances; + public Boolean ShowStatistics; /** - * Array of ad campaigns player has been attributed to + * Whether to show campaign attributions. Defaults to false */ - public ArrayList AdCampaignAttributions; + public Boolean ShowCampaignAttributions; /** - * Array of configured push notification end points + * Whether to show push notification registrations. Defaults to false */ - public ArrayList PushNotificationRegistrations; + public Boolean ShowPushNotificationRegistrations; /** - * Array of third party accounts linked to this player + * Whether to show the linked accounts. Defaults to false */ - public ArrayList LinkedAccounts; + public Boolean ShowLinkedAccounts; /** - * Array of player statistics + * Whether to show the total value to date in usd. Defaults to false */ - public ArrayList PlayerStatistics; - - } - - public static class PlayerStatistic { + public Boolean ShowTotalValueToDateInUsd; /** - * Statistic ID + * Whether to show the values to date. Defaults to false */ - public String Id; + public Boolean ShowValuesToDate; /** - * Statistic version (0 if not a versioned statistic) + * Whether to show tags. Defaults to false */ - public Integer StatisticVersion; + public Boolean ShowTags; /** - * Current statistic value + * Whether to show player's locations. Defaults to false */ - public Integer StatisticValue; + public Boolean ShowLocations; /** - * Statistic name + * Whether to show player's avatar URL. Defaults to false */ - public String Name; + public Boolean ShowAvatarUrl; } @@ -3390,7 +3442,7 @@ public static enum PushNotificationPlatform { GoogleCloudMessaging } - public static class PushNotificationRegistration { + public static class PushNotificationRegistrationModel { /** * Push notification platform */ @@ -3792,6 +3844,22 @@ public static class StartPurchaseResult { } + public static class StatisticModel { + /** + * Statistic name + */ + public String Name; + /** + * Statistic version (0 if not a versioned statistic) + */ + public Integer Version; + /** + * Statistic value + */ + public Integer Value; + + } + public static class StatisticNameVersion { /** * unique name of the statistic @@ -3911,6 +3979,14 @@ public static class SubtractUserVirtualCurrencyRequest { } + public static class TagModel { + /** + * Full value of the tag, including namespace + */ + public String TagValue; + + } + public static enum TitleActivationStatus { None, ActivatedTitleKey, @@ -4705,6 +4781,34 @@ public static class ValidateWindowsReceiptResult { } + public static class ValueToDateModel { + /** + * ISO 4217 code of the currency used in the purchases + */ + public String Currency; + /** + * Total value of the purchases in a whole number of 1/100 monetary units. For example 999 indicates nine dollars and ninety-nine cents when Currency is 'USD') + */ + public Long TotalValue; + /** + * Total value of the purchases in a string representation of decimal monetary units (e.g. '9.99' indicates nine dollars and ninety-nine cents when Currency is 'USD')) + */ + public String TotalValueAsDecimal; + + } + + public static class VirtualCurrencyBalanceModel { + /** + * Name of the virtual currency + */ + public String Currency; + /** + * Balance of the virtual currency + */ + public Integer TotalValue; + + } + public static class VirtualCurrencyRechargeTime { /** * Time remaining (in seconds) before the next recharge increment of the virtual currency. diff --git a/PlayFabClientSDK/src/com/playfab/PlayFabErrors.java b/PlayFabClientSDK/src/com/playfab/PlayFabErrors.java index 6519c6ff..f4b2c6aa 100644 --- a/PlayFabClientSDK/src/com/playfab/PlayFabErrors.java +++ b/PlayFabClientSDK/src/com/playfab/PlayFabErrors.java @@ -276,7 +276,17 @@ public static enum PlayFabErrorCode { UserNotFriend(1272), InvalidSignature(1273), InvalidPublicKey(1274), - GoogleOAuthNoIdTokenIncludedInResponse(1275); + GoogleOAuthNoIdTokenIncludedInResponse(1275), + StatisticUpdateInProgress(1276), + LeaderboardVersionNotAvailable(1277), + StatisticAlreadyHasPrizeTable(1279), + PrizeTableHasOverlappingRanks(1280), + PrizeTableHasMissingRanks(1281), + PrizeTableRankStartsAtZero(1282), + InvalidStatistic(1283), + ExpressionParseFailure(1284), + ExpressionInvokeFailure(1285), + ExpressionTooLong(1286); public int id; diff --git a/PlayFabClientSDK/src/com/playfab/PlayFabSettings.java b/PlayFabClientSDK/src/com/playfab/PlayFabSettings.java index 8653227e..cdcfb464 100644 --- a/PlayFabClientSDK/src/com/playfab/PlayFabSettings.java +++ b/PlayFabClientSDK/src/com/playfab/PlayFabSettings.java @@ -3,9 +3,9 @@ import com.playfab.PlayFabErrors.ErrorCallback; public class PlayFabSettings { - public static String SdkVersion = "0.45.170223"; - public static String BuildIdentifier = "jbuild_javasdk_0"; - public static String SdkVersionString = "JavaSDK-0.45.170223"; + public static String SdkVersion = "0.46.170313"; + public static String BuildIdentifier = "jbuild_javasdk_1"; + public static String SdkVersionString = "JavaSDK-0.46.170313"; public static String TitleId = null; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) public static ErrorCallback GlobalErrorHandler; diff --git a/PlayFabSDK/src/com/playfab/PlayFabAdminModels.java b/PlayFabSDK/src/com/playfab/PlayFabAdminModels.java index e65faf11..3769f011 100644 --- a/PlayFabSDK/src/com/playfab/PlayFabAdminModels.java +++ b/PlayFabSDK/src/com/playfab/PlayFabAdminModels.java @@ -1115,7 +1115,8 @@ public static class DeleteUsersResult { } public static enum EffectType { - Allow + Allow, + Deny } public static class EmptyResult { @@ -2321,7 +2322,7 @@ public static class PermissionStatement { */ public String Action; /** - * The effect this statement will have. The only supported effect is 'Allow'. + * The effect this statement will have. It could be either Allow or Deny */ public EffectType Effect; /** @@ -2525,9 +2526,14 @@ public static class PlayerStatisticVersion { */ public Date DeactivationTime; /** - * status of the process of saving player statistic values of the previous version to a downloadable archive + * @deprecated Please use Status instead. */ + @Deprecated public StatisticVersionArchivalStatus ArchivalStatus; + /** + * status of the statistic version + */ + public StatisticVersionStatus Status; /** * URL for the downloadable archive of player statistic values, if available */ @@ -2993,6 +2999,14 @@ public static enum StatisticVersionArchivalStatus { Complete } + public static enum StatisticVersionStatus { + Active, + SnapshotPending, + Snapshot, + ArchivalPending, + Archived + } + /** * A store entry that list a catalog item at a particular price */ diff --git a/PlayFabSDK/src/com/playfab/PlayFabClientAPI.java b/PlayFabSDK/src/com/playfab/PlayFabClientAPI.java index 5da1a4e3..79f5d9d3 100644 --- a/PlayFabSDK/src/com/playfab/PlayFabClientAPI.java +++ b/PlayFabSDK/src/com/playfab/PlayFabClientAPI.java @@ -6899,7 +6899,7 @@ private static PlayFabResult privateValidateAmazonI } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") public static FutureTask> AcceptTradeAsync(final AcceptTradeRequest request) { @@ -6911,7 +6911,7 @@ public PlayFabResult call() throws Exception { } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") public static PlayFabResult AcceptTrade(final AcceptTradeRequest request) { @@ -6929,7 +6929,7 @@ public PlayFabResult call() throws Exception { } /** - * Accepts an open trade. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. + * Accepts an open trade (one that has not yet been accepted or cancelled), if the locally signed-in player is in the allowed player list for the trade, or it is open to all players. If the call is successful, the offered and accepted items will be swapped between the two players' inventories. */ @SuppressWarnings("unchecked") private static PlayFabResult privateAcceptTradeAsync(final AcceptTradeRequest request) throws Exception { @@ -6957,7 +6957,7 @@ private static PlayFabResult privateAcceptTradeAsync(final } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") public static FutureTask> CancelTradeAsync(final CancelTradeRequest request) { @@ -6969,7 +6969,7 @@ public PlayFabResult call() throws Exception { } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") public static PlayFabResult CancelTrade(final CancelTradeRequest request) { @@ -6987,7 +6987,7 @@ public PlayFabResult call() throws Exception { } /** - * Cancels an open trade. + * Cancels an open trade (one that has not yet been accepted or cancelled). Note that only the player who created the trade can cancel it via this API call, to prevent griefing of the trade system (cancelling trades in order to prevent other players from accepting them, for trades that can be claimed by more than one player). */ @SuppressWarnings("unchecked") private static PlayFabResult privateCancelTradeAsync(final CancelTradeRequest request) throws Exception { @@ -7131,7 +7131,7 @@ private static PlayFabResult privateGetTradeStatusAsync( } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") public static FutureTask> OpenTradeAsync(final OpenTradeRequest request) { @@ -7143,7 +7143,7 @@ public PlayFabResult call() throws Exception { } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") public static PlayFabResult OpenTrade(final OpenTradeRequest request) { @@ -7161,7 +7161,7 @@ public PlayFabResult call() throws Exception { } /** - * Opens a new outstanding trade. + * Opens a new outstanding trade. Note that a given item instance may only be in one open trade at a time. */ @SuppressWarnings("unchecked") private static PlayFabResult privateOpenTradeAsync(final OpenTradeRequest request) throws Exception { diff --git a/PlayFabSDK/src/com/playfab/PlayFabClientModels.java b/PlayFabSDK/src/com/playfab/PlayFabClientModels.java index 81cd1369..94df3f06 100644 --- a/PlayFabSDK/src/com/playfab/PlayFabClientModels.java +++ b/PlayFabSDK/src/com/playfab/PlayFabClientModels.java @@ -29,7 +29,7 @@ public static class AcceptTradeResponse { } - public static class AdCampaignAttribution { + public static class AdCampaignAttributionModel { /** * Attribution network name */ @@ -1442,6 +1442,10 @@ public static class GetFriendLeaderboardAroundPlayerRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1490,6 +1494,10 @@ public static class GetFriendLeaderboardRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1562,6 +1570,10 @@ public static class GetLeaderboardAroundPlayerRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -1622,6 +1634,10 @@ public static class GetLeaderboardRequest { * If true, uses the specified version. If false, gets the most recent version. */ public Boolean UseSpecificVersion; + /** + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. + */ + public PlayerProfileViewConstraints ProfileConstraints; } @@ -2448,6 +2464,26 @@ public static class LinkCustomIDResult { } + public static class LinkedPlatformAccountModel { + /** + * Authentication platform + */ + public LoginIdentityProvider Platform; + /** + * Unique account identifier of the user on the platform + */ + public String PlatformUserId; + /** + * Linked account username of the user on the platform, if available + */ + public String Username; + /** + * Linked account email of the user on the platform, if available + */ + public String Email; + + } + public static class LinkFacebookAccountRequest { /** * Unique identifier from Facebook for the user. @@ -2617,6 +2653,30 @@ public static class ListUsersCharactersResult { } + public static class LocationModel { + /** + * The two-character continent code for this location + */ + public ContinentCode ContinentCode; + /** + * The two-character ISO 3166-1 country code for the country associated with the location + */ + public CountryCode CountryCode; + /** + * City name. + */ + public String City; + /** + * Latitude coordinate of the geographic location. + */ + public Double Latitude; + /** + * Longitude coordinate of the geographic location. + */ + public Double Longitude; + + } + public static enum LoginIdentityProvider { Unknown, PlayFab, @@ -3171,153 +3231,145 @@ public static class PlayerLeaderboardEntry { */ public Integer Position; /** - * The profile of the user, if requested. Note that this profile may have sensitive fields scrubbed. + * The profile of the user, if requested. */ - public PlayerProfile Profile; + public PlayerProfileModel Profile; } - public static class PlayerLinkedAccount { + public static class PlayerProfileModel { /** - * Authentication platform + * Publisher this player belongs to */ - public LoginIdentityProvider Platform; + public String PublisherId; /** - * Platform user identifier + * Title ID this profile applies to */ - public String PlatformUserId; + public String TitleId; /** - * Linked account's username + * PlayFab Player ID */ - public String Username; + public String PlayerId; /** - * Linked account's email + * Player record created */ - public String Email; - - } - - public static class PlayerLocation { + public Date Created; /** - * The two-character continent code for this location + * Player account origination */ - public ContinentCode ContinentCode; + public LoginIdentityProvider Origination; /** - * The two-character ISO 3166-1 country code for the country associated with the location + * Last login */ - public CountryCode CountryCode; + public Date LastLogin; /** - * City of the player's geographic location. + * If the player is currently banned, the UTC Date when the ban expires */ - public String City; + public Date BannedUntil; /** - * Latitude coordinate of the player's geographic location. + * List of geographic locations where the player has logged-in */ - public Double Latitude; + public ArrayList Locations; /** - * Longitude coordinate of the player's geographic location. + * Player Display Name */ - public Double Longitude; - - } - - public static class PlayerProfile { + public String DisplayName; /** - * PlayFab Player ID + * Image URL of the player's avatar */ - public String PlayerId; + public String AvatarUrl; /** - * Title ID this profile applies to + * List of player's tags for segmentation */ - public String TitleId; + public ArrayList Tags; /** - * Player Display Name + * List of configured end points registered for sending the player push notifications */ - public String DisplayName; + public ArrayList PushNotificationRegistrations; /** - * Publisher this player belongs to + * List of third party accounts linked to this player */ - public String PublisherId; + public ArrayList LinkedAccounts; /** - * Player account origination + * List of advertising campaigns the player has been attributed to */ - public LoginIdentityProvider Origination; + public ArrayList AdCampaignAttributions; /** - * Player record created + * A sum of player's total purchases across all real-money currencies, converted to US Dollars equivalent */ - public Date Created; + public Long TotalValueToDateInUSD; /** - * Last login + * List of player's total lifetime real-money purchases by currency */ - public Date LastLogin; + public ArrayList ValuesToDate; /** - * Banned until UTC Date. If permanent ban this is set for 20 years after the original ban date. + * List of player's virtual currency balances */ - public Date BannedUntil; + public ArrayList VirtualCurrencyBalances; /** - * Image URL of the player's avatar. + * List of leaderboard statistic values for the player */ - public String AvatarUrl; + public ArrayList Statistics; + + } + + public static class PlayerProfileViewConstraints { /** - * Dictionary of player's statistics using only the latest version's value + * Whether to show the display name. Defaults to false */ - public Map Statistics; + public Boolean ShowDisplayName; /** - * A sum of player's total purchases in USD across all currencies. + * Whether to show the created date. Defaults to false */ - public Long TotalValueToDateInUSD; + public Boolean ShowCreated; /** - * Dictionary of player's total purchases by currency. + * Whether to show origination. Defaults to false */ - public Map ValuesToDate; + public Boolean ShowOrigination; /** - * List of player's tags for segmentation. + * Whether to show the last login time. Defaults to false */ - public ArrayList Tags; + public Boolean ShowLastLogin; /** - * Dictionary of player's locations by type. + * Whether to show the banned until time. Defaults to false */ - public Map Locations; + public Boolean ShowBannedUntil; /** - * Dictionary of player's virtual currency balances + * Whether to show statistics, the most recent version of each stat. Defaults to false */ - public Map VirtualCurrencyBalances; + public Boolean ShowStatistics; /** - * Array of ad campaigns player has been attributed to + * Whether to show campaign attributions. Defaults to false */ - public ArrayList AdCampaignAttributions; + public Boolean ShowCampaignAttributions; /** - * Array of configured push notification end points + * Whether to show push notification registrations. Defaults to false */ - public ArrayList PushNotificationRegistrations; + public Boolean ShowPushNotificationRegistrations; /** - * Array of third party accounts linked to this player + * Whether to show the linked accounts. Defaults to false */ - public ArrayList LinkedAccounts; + public Boolean ShowLinkedAccounts; /** - * Array of player statistics + * Whether to show the total value to date in usd. Defaults to false */ - public ArrayList PlayerStatistics; - - } - - public static class PlayerStatistic { + public Boolean ShowTotalValueToDateInUsd; /** - * Statistic ID + * Whether to show the values to date. Defaults to false */ - public String Id; + public Boolean ShowValuesToDate; /** - * Statistic version (0 if not a versioned statistic) + * Whether to show tags. Defaults to false */ - public Integer StatisticVersion; + public Boolean ShowTags; /** - * Current statistic value + * Whether to show player's locations. Defaults to false */ - public Integer StatisticValue; + public Boolean ShowLocations; /** - * Statistic name + * Whether to show player's avatar URL. Defaults to false */ - public String Name; + public Boolean ShowAvatarUrl; } @@ -3390,7 +3442,7 @@ public static enum PushNotificationPlatform { GoogleCloudMessaging } - public static class PushNotificationRegistration { + public static class PushNotificationRegistrationModel { /** * Push notification platform */ @@ -3792,6 +3844,22 @@ public static class StartPurchaseResult { } + public static class StatisticModel { + /** + * Statistic name + */ + public String Name; + /** + * Statistic version (0 if not a versioned statistic) + */ + public Integer Version; + /** + * Statistic value + */ + public Integer Value; + + } + public static class StatisticNameVersion { /** * unique name of the statistic @@ -3911,6 +3979,14 @@ public static class SubtractUserVirtualCurrencyRequest { } + public static class TagModel { + /** + * Full value of the tag, including namespace + */ + public String TagValue; + + } + public static enum TitleActivationStatus { None, ActivatedTitleKey, @@ -4705,6 +4781,34 @@ public static class ValidateWindowsReceiptResult { } + public static class ValueToDateModel { + /** + * ISO 4217 code of the currency used in the purchases + */ + public String Currency; + /** + * Total value of the purchases in a whole number of 1/100 monetary units. For example 999 indicates nine dollars and ninety-nine cents when Currency is 'USD') + */ + public Long TotalValue; + /** + * Total value of the purchases in a string representation of decimal monetary units (e.g. '9.99' indicates nine dollars and ninety-nine cents when Currency is 'USD')) + */ + public String TotalValueAsDecimal; + + } + + public static class VirtualCurrencyBalanceModel { + /** + * Name of the virtual currency + */ + public String Currency; + /** + * Balance of the virtual currency + */ + public Integer TotalValue; + + } + public static class VirtualCurrencyRechargeTime { /** * Time remaining (in seconds) before the next recharge increment of the virtual currency. diff --git a/PlayFabSDK/src/com/playfab/PlayFabErrors.java b/PlayFabSDK/src/com/playfab/PlayFabErrors.java index 6519c6ff..f4b2c6aa 100644 --- a/PlayFabSDK/src/com/playfab/PlayFabErrors.java +++ b/PlayFabSDK/src/com/playfab/PlayFabErrors.java @@ -276,7 +276,17 @@ public static enum PlayFabErrorCode { UserNotFriend(1272), InvalidSignature(1273), InvalidPublicKey(1274), - GoogleOAuthNoIdTokenIncludedInResponse(1275); + GoogleOAuthNoIdTokenIncludedInResponse(1275), + StatisticUpdateInProgress(1276), + LeaderboardVersionNotAvailable(1277), + StatisticAlreadyHasPrizeTable(1279), + PrizeTableHasOverlappingRanks(1280), + PrizeTableHasMissingRanks(1281), + PrizeTableRankStartsAtZero(1282), + InvalidStatistic(1283), + ExpressionParseFailure(1284), + ExpressionInvokeFailure(1285), + ExpressionTooLong(1286); public int id; diff --git a/PlayFabSDK/src/com/playfab/PlayFabServerModels.java b/PlayFabSDK/src/com/playfab/PlayFabServerModels.java index 720172ca..c025e227 100644 --- a/PlayFabSDK/src/com/playfab/PlayFabServerModels.java +++ b/PlayFabSDK/src/com/playfab/PlayFabServerModels.java @@ -73,6 +73,22 @@ public static class AdCampaignAttribution { } + public static class AdCampaignAttributionModel { + /** + * Attribution network name + */ + public String Platform; + /** + * Attribution campaign identifier + */ + public String CampaignId; + /** + * UTC time stamp of attribution + */ + public Date AttributedAt; + + } + public static class AddCharacterVirtualCurrencyRequest { /** * PlayFab unique identifier of the user whose virtual currency balance is to be incremented. @@ -1431,7 +1447,7 @@ public static class GetFriendLeaderboardRequest { */ public Boolean UseSpecificVersion; /** - * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. */ public PlayerProfileViewConstraints ProfileConstraints; @@ -1507,7 +1523,7 @@ public static class GetLeaderboardAroundUserRequest { */ public Integer MaxResultsCount; /** - * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. */ public PlayerProfileViewConstraints ProfileConstraints; /** @@ -1575,7 +1591,7 @@ public static class GetLeaderboardRequest { */ public Integer MaxResultsCount; /** - * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. */ public PlayerProfileViewConstraints ProfileConstraints; /** @@ -2396,6 +2412,26 @@ public int compareTo(ItemInstance other) { } } + public static class LinkedPlatformAccountModel { + /** + * Authentication platform + */ + public LoginIdentityProvider Platform; + /** + * Unique account identifier of the user on the platform + */ + public String PlatformUserId; + /** + * Linked account username of the user on the platform, if available + */ + public String Username; + /** + * Linked account email of the user on the platform, if available + */ + public String Email; + + } + public static class ListUsersCharactersRequest { /** * Unique PlayFab assigned ID of the user on whom the operation will be performed. @@ -2412,6 +2448,30 @@ public static class ListUsersCharactersResult { } + public static class LocationModel { + /** + * The two-character continent code for this location + */ + public ContinentCode ContinentCode; + /** + * The two-character ISO 3166-1 country code for the country associated with the location + */ + public CountryCode CountryCode; + /** + * City name. + */ + public String City; + /** + * Latitude coordinate of the geographic location. + */ + public Double Latitude; + /** + * Longitude coordinate of the geographic location. + */ + public Double Longitude; + + } + public static enum LoginIdentityProvider { Unknown, PlayFab, @@ -2620,9 +2680,9 @@ public static class PlayerLeaderboardEntry { */ public Integer Position; /** - * The profile of the user, if requested. Note that this profile may have sensitive fields scrubbed. + * The profile of the user, if requested. */ - public PlayerProfile Profile; + public PlayerProfileModel Profile; } @@ -2750,6 +2810,82 @@ public static class PlayerProfile { } + public static class PlayerProfileModel { + /** + * Publisher this player belongs to + */ + public String PublisherId; + /** + * Title ID this profile applies to + */ + public String TitleId; + /** + * PlayFab Player ID + */ + public String PlayerId; + /** + * Player record created + */ + public Date Created; + /** + * Player account origination + */ + public LoginIdentityProvider Origination; + /** + * Last login + */ + public Date LastLogin; + /** + * If the player is currently banned, the UTC Date when the ban expires + */ + public Date BannedUntil; + /** + * List of geographic locations where the player has logged-in + */ + public ArrayList Locations; + /** + * Player Display Name + */ + public String DisplayName; + /** + * Image URL of the player's avatar + */ + public String AvatarUrl; + /** + * List of player's tags for segmentation + */ + public ArrayList Tags; + /** + * List of configured end points registered for sending the player push notifications + */ + public ArrayList PushNotificationRegistrations; + /** + * List of third party accounts linked to this player + */ + public ArrayList LinkedAccounts; + /** + * List of advertising campaigns the player has been attributed to + */ + public ArrayList AdCampaignAttributions; + /** + * A sum of player's total purchases across all real-money currencies, converted to US Dollars equivalent + */ + public Long TotalValueToDateInUSD; + /** + * List of player's total lifetime real-money purchases by currency + */ + public ArrayList ValuesToDate; + /** + * List of player's virtual currency balances + */ + public ArrayList VirtualCurrencyBalances; + /** + * List of leaderboard statistic values for the player + */ + public ArrayList Statistics; + + } + public static class PlayerProfileViewConstraints { /** * Whether to show the display name. Defaults to false @@ -2778,7 +2914,7 @@ public static class PlayerProfileViewConstraints { /** * Whether to show campaign attributions. Defaults to false */ - public Boolean ShowCampaignAtributions; + public Boolean ShowCampaignAttributions; /** * Whether to show push notification registrations. Defaults to false */ @@ -2799,10 +2935,6 @@ public static class PlayerProfileViewConstraints { * Whether to show tags. Defaults to false */ public Boolean ShowTags; - /** - * Whether to show the virtual currency balances. Defaults to false - */ - public Boolean ShowVirtualCurrencyBalances; /** * Whether to show player's locations. Defaults to false */ @@ -2879,6 +3011,18 @@ public static class PushNotificationRegistration { } + public static class PushNotificationRegistrationModel { + /** + * Push notification platform + */ + public PushNotificationPlatform Platform; + /** + * Notification configured endpoint + */ + public String NotificationEndpointARN; + + } + public static class RandomResultTableListing { /** * Catalog version this table is associated with @@ -3310,6 +3454,22 @@ public static class SharedGroupDataRecord { } + public static class StatisticModel { + /** + * Statistic name + */ + public String Name; + /** + * Statistic version (0 if not a versioned statistic) + */ + public Integer Version; + /** + * Statistic value + */ + public Integer Value; + + } + public static class StatisticNameVersion { /** * unique name of the statistic @@ -3402,6 +3562,14 @@ public static class SubtractUserVirtualCurrencyRequest { } + public static class TagModel { + /** + * Full value of the tag, including namespace + */ + public String TagValue; + + } + public static enum TaskInstanceStatus { Succeeded, Starting, @@ -4011,6 +4179,34 @@ public static class UserXboxInfo { } + public static class ValueToDateModel { + /** + * ISO 4217 code of the currency used in the purchases + */ + public String Currency; + /** + * Total value of the purchases in a whole number of 1/100 monetary units. For example 999 indicates nine dollars and ninety-nine cents when Currency is 'USD') + */ + public Long TotalValue; + /** + * Total value of the purchases in a string representation of decimal monetary units (e.g. '9.99' indicates nine dollars and ninety-nine cents when Currency is 'USD')) + */ + public String TotalValueAsDecimal; + + } + + public static class VirtualCurrencyBalanceModel { + /** + * Name of the virtual currency + */ + public String Currency; + /** + * Balance of the virtual currency + */ + public Integer TotalValue; + + } + public static class VirtualCurrencyRechargeTime { /** * Time remaining (in seconds) before the next recharge increment of the virtual currency. diff --git a/PlayFabSDK/src/com/playfab/PlayFabSettings.java b/PlayFabSDK/src/com/playfab/PlayFabSettings.java index aa855e16..dfd74c9b 100644 --- a/PlayFabSDK/src/com/playfab/PlayFabSettings.java +++ b/PlayFabSDK/src/com/playfab/PlayFabSettings.java @@ -3,9 +3,9 @@ import com.playfab.PlayFabErrors.ErrorCallback; public class PlayFabSettings { - public static String SdkVersion = "0.45.170223"; - public static String BuildIdentifier = "jbuild_javasdk_0"; - public static String SdkVersionString = "JavaSDK-0.45.170223"; + public static String SdkVersion = "0.46.170313"; + public static String BuildIdentifier = "jbuild_javasdk_1"; + public static String SdkVersionString = "JavaSDK-0.46.170313"; public static String TitleId = null; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) public static ErrorCallback GlobalErrorHandler; diff --git a/PlayFabServerSDK/src/com/playfab/PlayFabAdminModels.java b/PlayFabServerSDK/src/com/playfab/PlayFabAdminModels.java index e65faf11..3769f011 100644 --- a/PlayFabServerSDK/src/com/playfab/PlayFabAdminModels.java +++ b/PlayFabServerSDK/src/com/playfab/PlayFabAdminModels.java @@ -1115,7 +1115,8 @@ public static class DeleteUsersResult { } public static enum EffectType { - Allow + Allow, + Deny } public static class EmptyResult { @@ -2321,7 +2322,7 @@ public static class PermissionStatement { */ public String Action; /** - * The effect this statement will have. The only supported effect is 'Allow'. + * The effect this statement will have. It could be either Allow or Deny */ public EffectType Effect; /** @@ -2525,9 +2526,14 @@ public static class PlayerStatisticVersion { */ public Date DeactivationTime; /** - * status of the process of saving player statistic values of the previous version to a downloadable archive + * @deprecated Please use Status instead. */ + @Deprecated public StatisticVersionArchivalStatus ArchivalStatus; + /** + * status of the statistic version + */ + public StatisticVersionStatus Status; /** * URL for the downloadable archive of player statistic values, if available */ @@ -2993,6 +2999,14 @@ public static enum StatisticVersionArchivalStatus { Complete } + public static enum StatisticVersionStatus { + Active, + SnapshotPending, + Snapshot, + ArchivalPending, + Archived + } + /** * A store entry that list a catalog item at a particular price */ diff --git a/PlayFabServerSDK/src/com/playfab/PlayFabErrors.java b/PlayFabServerSDK/src/com/playfab/PlayFabErrors.java index 6519c6ff..f4b2c6aa 100644 --- a/PlayFabServerSDK/src/com/playfab/PlayFabErrors.java +++ b/PlayFabServerSDK/src/com/playfab/PlayFabErrors.java @@ -276,7 +276,17 @@ public static enum PlayFabErrorCode { UserNotFriend(1272), InvalidSignature(1273), InvalidPublicKey(1274), - GoogleOAuthNoIdTokenIncludedInResponse(1275); + GoogleOAuthNoIdTokenIncludedInResponse(1275), + StatisticUpdateInProgress(1276), + LeaderboardVersionNotAvailable(1277), + StatisticAlreadyHasPrizeTable(1279), + PrizeTableHasOverlappingRanks(1280), + PrizeTableHasMissingRanks(1281), + PrizeTableRankStartsAtZero(1282), + InvalidStatistic(1283), + ExpressionParseFailure(1284), + ExpressionInvokeFailure(1285), + ExpressionTooLong(1286); public int id; diff --git a/PlayFabServerSDK/src/com/playfab/PlayFabServerModels.java b/PlayFabServerSDK/src/com/playfab/PlayFabServerModels.java index 720172ca..c025e227 100644 --- a/PlayFabServerSDK/src/com/playfab/PlayFabServerModels.java +++ b/PlayFabServerSDK/src/com/playfab/PlayFabServerModels.java @@ -73,6 +73,22 @@ public static class AdCampaignAttribution { } + public static class AdCampaignAttributionModel { + /** + * Attribution network name + */ + public String Platform; + /** + * Attribution campaign identifier + */ + public String CampaignId; + /** + * UTC time stamp of attribution + */ + public Date AttributedAt; + + } + public static class AddCharacterVirtualCurrencyRequest { /** * PlayFab unique identifier of the user whose virtual currency balance is to be incremented. @@ -1431,7 +1447,7 @@ public static class GetFriendLeaderboardRequest { */ public Boolean UseSpecificVersion; /** - * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. */ public PlayerProfileViewConstraints ProfileConstraints; @@ -1507,7 +1523,7 @@ public static class GetLeaderboardAroundUserRequest { */ public Integer MaxResultsCount; /** - * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. */ public PlayerProfileViewConstraints ProfileConstraints; /** @@ -1575,7 +1591,7 @@ public static class GetLeaderboardRequest { */ public Integer MaxResultsCount; /** - * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. + * If non-null, this determines which properties of the profile to return. If null, playfab will only include display names. On client, only ShowDisplayName, ShowStatistics, ShowAvatarUrl are allowed. */ public PlayerProfileViewConstraints ProfileConstraints; /** @@ -2396,6 +2412,26 @@ public int compareTo(ItemInstance other) { } } + public static class LinkedPlatformAccountModel { + /** + * Authentication platform + */ + public LoginIdentityProvider Platform; + /** + * Unique account identifier of the user on the platform + */ + public String PlatformUserId; + /** + * Linked account username of the user on the platform, if available + */ + public String Username; + /** + * Linked account email of the user on the platform, if available + */ + public String Email; + + } + public static class ListUsersCharactersRequest { /** * Unique PlayFab assigned ID of the user on whom the operation will be performed. @@ -2412,6 +2448,30 @@ public static class ListUsersCharactersResult { } + public static class LocationModel { + /** + * The two-character continent code for this location + */ + public ContinentCode ContinentCode; + /** + * The two-character ISO 3166-1 country code for the country associated with the location + */ + public CountryCode CountryCode; + /** + * City name. + */ + public String City; + /** + * Latitude coordinate of the geographic location. + */ + public Double Latitude; + /** + * Longitude coordinate of the geographic location. + */ + public Double Longitude; + + } + public static enum LoginIdentityProvider { Unknown, PlayFab, @@ -2620,9 +2680,9 @@ public static class PlayerLeaderboardEntry { */ public Integer Position; /** - * The profile of the user, if requested. Note that this profile may have sensitive fields scrubbed. + * The profile of the user, if requested. */ - public PlayerProfile Profile; + public PlayerProfileModel Profile; } @@ -2750,6 +2810,82 @@ public static class PlayerProfile { } + public static class PlayerProfileModel { + /** + * Publisher this player belongs to + */ + public String PublisherId; + /** + * Title ID this profile applies to + */ + public String TitleId; + /** + * PlayFab Player ID + */ + public String PlayerId; + /** + * Player record created + */ + public Date Created; + /** + * Player account origination + */ + public LoginIdentityProvider Origination; + /** + * Last login + */ + public Date LastLogin; + /** + * If the player is currently banned, the UTC Date when the ban expires + */ + public Date BannedUntil; + /** + * List of geographic locations where the player has logged-in + */ + public ArrayList Locations; + /** + * Player Display Name + */ + public String DisplayName; + /** + * Image URL of the player's avatar + */ + public String AvatarUrl; + /** + * List of player's tags for segmentation + */ + public ArrayList Tags; + /** + * List of configured end points registered for sending the player push notifications + */ + public ArrayList PushNotificationRegistrations; + /** + * List of third party accounts linked to this player + */ + public ArrayList LinkedAccounts; + /** + * List of advertising campaigns the player has been attributed to + */ + public ArrayList AdCampaignAttributions; + /** + * A sum of player's total purchases across all real-money currencies, converted to US Dollars equivalent + */ + public Long TotalValueToDateInUSD; + /** + * List of player's total lifetime real-money purchases by currency + */ + public ArrayList ValuesToDate; + /** + * List of player's virtual currency balances + */ + public ArrayList VirtualCurrencyBalances; + /** + * List of leaderboard statistic values for the player + */ + public ArrayList Statistics; + + } + public static class PlayerProfileViewConstraints { /** * Whether to show the display name. Defaults to false @@ -2778,7 +2914,7 @@ public static class PlayerProfileViewConstraints { /** * Whether to show campaign attributions. Defaults to false */ - public Boolean ShowCampaignAtributions; + public Boolean ShowCampaignAttributions; /** * Whether to show push notification registrations. Defaults to false */ @@ -2799,10 +2935,6 @@ public static class PlayerProfileViewConstraints { * Whether to show tags. Defaults to false */ public Boolean ShowTags; - /** - * Whether to show the virtual currency balances. Defaults to false - */ - public Boolean ShowVirtualCurrencyBalances; /** * Whether to show player's locations. Defaults to false */ @@ -2879,6 +3011,18 @@ public static class PushNotificationRegistration { } + public static class PushNotificationRegistrationModel { + /** + * Push notification platform + */ + public PushNotificationPlatform Platform; + /** + * Notification configured endpoint + */ + public String NotificationEndpointARN; + + } + public static class RandomResultTableListing { /** * Catalog version this table is associated with @@ -3310,6 +3454,22 @@ public static class SharedGroupDataRecord { } + public static class StatisticModel { + /** + * Statistic name + */ + public String Name; + /** + * Statistic version (0 if not a versioned statistic) + */ + public Integer Version; + /** + * Statistic value + */ + public Integer Value; + + } + public static class StatisticNameVersion { /** * unique name of the statistic @@ -3402,6 +3562,14 @@ public static class SubtractUserVirtualCurrencyRequest { } + public static class TagModel { + /** + * Full value of the tag, including namespace + */ + public String TagValue; + + } + public static enum TaskInstanceStatus { Succeeded, Starting, @@ -4011,6 +4179,34 @@ public static class UserXboxInfo { } + public static class ValueToDateModel { + /** + * ISO 4217 code of the currency used in the purchases + */ + public String Currency; + /** + * Total value of the purchases in a whole number of 1/100 monetary units. For example 999 indicates nine dollars and ninety-nine cents when Currency is 'USD') + */ + public Long TotalValue; + /** + * Total value of the purchases in a string representation of decimal monetary units (e.g. '9.99' indicates nine dollars and ninety-nine cents when Currency is 'USD')) + */ + public String TotalValueAsDecimal; + + } + + public static class VirtualCurrencyBalanceModel { + /** + * Name of the virtual currency + */ + public String Currency; + /** + * Balance of the virtual currency + */ + public Integer TotalValue; + + } + public static class VirtualCurrencyRechargeTime { /** * Time remaining (in seconds) before the next recharge increment of the virtual currency. diff --git a/PlayFabServerSDK/src/com/playfab/PlayFabSettings.java b/PlayFabServerSDK/src/com/playfab/PlayFabSettings.java index 3e5acbe3..b7e6da6f 100644 --- a/PlayFabServerSDK/src/com/playfab/PlayFabSettings.java +++ b/PlayFabServerSDK/src/com/playfab/PlayFabSettings.java @@ -3,9 +3,9 @@ import com.playfab.PlayFabErrors.ErrorCallback; public class PlayFabSettings { - public static String SdkVersion = "0.45.170223"; - public static String BuildIdentifier = "jbuild_javasdk_0"; - public static String SdkVersionString = "JavaSDK-0.45.170223"; + public static String SdkVersion = "0.46.170313"; + public static String BuildIdentifier = "jbuild_javasdk_1"; + public static String SdkVersionString = "JavaSDK-0.46.170313"; public static String TitleId = null; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) public static ErrorCallback GlobalErrorHandler;