Skip to content

Commit

Permalink
https://api.playfab.com/releaseNotes/#181114
Browse files Browse the repository at this point in the history
  • Loading branch information
PlayFabJenkinsBot committed Nov 14, 2018
2 parents d75d25f + 199cb1e commit 51c9ada
Show file tree
Hide file tree
Showing 84 changed files with 1,242 additions and 480 deletions.
4 changes: 2 additions & 2 deletions 4.18/ExampleProject/Plugins/PlayFab/PlayFab.uplugin
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
"FriendlyName": "PlayFab Marketplace Plugin",
"Version": 0,
"EngineVersion": "4.18",
"VersionName": "1.6.181105",
"VersionName": "1.7.181114",
"CreatedBy": "PlayFab and Phoenix Labs",
"CreatedByURL": "https://playfab.com/",
"DocsURL": "https://api.playfab.com/",
"SupportURL": "https://community.playfab.com/index.html",
"Category": "PlayFab",
"Description": "PlayFab Marketplace plugin for Unreal Engine 4.18 Current API version: 1.6.181105",
"Description": "PlayFab Marketplace plugin for Unreal Engine 4.18 Current API version: 1.7.181114",
"MarketplaceURL": "com.epicgames.launcher://ue/marketplace/content/217fdf581b784571af03d3fb6580368f",
"Modules": [
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -893,15 +893,19 @@ enum class EAzureRegion : uint8
UENUM(BlueprintType)
enum class EAzureVmSize : uint8
{
pfenum_Standard_A1 UMETA(DisplayName = "Standard_A1"),
pfenum_Standard_A2 UMETA(DisplayName = "Standard_A2"),
pfenum_Standard_A3 UMETA(DisplayName = "Standard_A3"),
pfenum_Standard_A4 UMETA(DisplayName = "Standard_A4"),
pfenum_Standard_D1_v2 UMETA(DisplayName = "Standard_D1_v2"),
pfenum_Standard_D2_v2 UMETA(DisplayName = "Standard_D2_v2"),
pfenum_Standard_D3_v2 UMETA(DisplayName = "Standard_D3_v2"),
pfenum_Standard_D4_v2 UMETA(DisplayName = "Standard_D4_v2"),
pfenum_Standard_D5_v2 UMETA(DisplayName = "Standard_D5_v2"),
pfenum_Standard_A1_v2 UMETA(DisplayName = "Standard_A1_v2"),
pfenum_Standard_A2_v2 UMETA(DisplayName = "Standard_A2_v2"),
pfenum_Standard_A4_v2 UMETA(DisplayName = "Standard_A4_v2"),
pfenum_Standard_A8_v2 UMETA(DisplayName = "Standard_A8_v2"),
pfenum_Standard_A1 UMETA(DisplayName = "Standard_A1"),
pfenum_Standard_A2 UMETA(DisplayName = "Standard_A2"),
pfenum_Standard_A3 UMETA(DisplayName = "Standard_A3"),
pfenum_Standard_A4 UMETA(DisplayName = "Standard_A4"),
};

/** ContainerFlavor */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -244,6 +244,19 @@ class PLAYFAB_API UPlayFabMultiplayerAPI : public UOnlineBlueprintCallProxyBase
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer ", meta = (BlueprintInternalUseOnly = "true"))
void HelperGetTitleEnabledForMultiplayerServersStatus(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessListArchivedMultiplayerServers, FMultiplayerListMultiplayerServersResponse, result, UObject*, customData);

/** Lists archived multiplayer server sessions for a build. */
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer ", meta = (BlueprintInternalUseOnly = "true"))
static UPlayFabMultiplayerAPI* ListArchivedMultiplayerServers(FMultiplayerListMultiplayerServersRequest request,
FDelegateOnSuccessListArchivedMultiplayerServers onSuccess,
FDelegateOnFailurePlayFabError onFailure, UObject* customData);

// Implements FOnPlayFabMultiplayerRequestCompleted
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer ", meta = (BlueprintInternalUseOnly = "true"))
void HelperListArchivedMultiplayerServers(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessListAssetSummaries, FMultiplayerListAssetSummariesResponse, result, UObject*, customData);

Expand Down Expand Up @@ -447,6 +460,7 @@ class PLAYFAB_API UPlayFabMultiplayerAPI : public UOnlineBlueprintCallProxyBase
FDelegateOnSuccessGetMultiplayerServerDetails OnSuccessGetMultiplayerServerDetails;
FDelegateOnSuccessGetRemoteLoginEndpoint OnSuccessGetRemoteLoginEndpoint;
FDelegateOnSuccessGetTitleEnabledForMultiplayerServersStatus OnSuccessGetTitleEnabledForMultiplayerServersStatus;
FDelegateOnSuccessListArchivedMultiplayerServers OnSuccessListArchivedMultiplayerServers;
FDelegateOnSuccessListAssetSummaries OnSuccessListAssetSummaries;
FDelegateOnSuccessListBuildSummaries OnSuccessListBuildSummaries;
FDelegateOnSuccessListCertificateSummaries OnSuccessListCertificateSummaries;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,10 @@ class PLAYFAB_API UPlayFabMultiplayerModelDecoder : public UBlueprintFunctionLib
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
static FMultiplayerGetTitleEnabledForMultiplayerServersStatusResponse decodeGetTitleEnabledForMultiplayerServersStatusResponseResponse(UPlayFabJsonObject* response);

/** Decode the ListMultiplayerServersResponse response object*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
static FMultiplayerListMultiplayerServersResponse decodeListMultiplayerServersResponseResponse(UPlayFabJsonObject* response);

/** Decode the ListAssetSummariesResponse response object*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
static FMultiplayerListAssetSummariesResponse decodeListAssetSummariesResponseResponse(UPlayFabJsonObject* response);
Expand All @@ -112,10 +116,6 @@ class PLAYFAB_API UPlayFabMultiplayerModelDecoder : public UBlueprintFunctionLib
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
static FMultiplayerListContainerImageTagsResponse decodeListContainerImageTagsResponseResponse(UPlayFabJsonObject* response);

/** Decode the ListMultiplayerServersResponse response object*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
static FMultiplayerListMultiplayerServersResponse decodeListMultiplayerServersResponseResponse(UPlayFabJsonObject* response);

/** Decode the ListQosServersResponse response object*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
static FMultiplayerListQosServersResponse decodeListQosServersResponseResponse(UPlayFabJsonObject* response);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -531,6 +531,41 @@ struct PLAYFAB_API FMultiplayerGetTitleEnabledForMultiplayerServersStatusRespons
ETitleMultiplayerServerEnabledStatus Status;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerListMultiplayerServersRequest
{
GENERATED_USTRUCT_BODY()
public:
/** The guid string build ID of the multiplayer servers to list. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
FString BuildId;
/** The page size for the request. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
int32 PageSize = 0;
/** The region the multiplayer servers to list. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
EAzureRegion Region;
/** The skip token for the paged request. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
FString SkipToken;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerListMultiplayerServersResponse
{
GENERATED_USTRUCT_BODY()
public:
/** The list of multiplayer server summary details. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
TArray<UPlayFabJsonObject*> MultiplayerServerSummaries;
/** The page size on the response. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
int32 PageSize = 0;
/** The skip token for the paged response. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
FString SkipToken;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerListAssetSummariesRequest
{
Expand Down Expand Up @@ -667,41 +702,6 @@ struct PLAYFAB_API FMultiplayerListContainerImageTagsResponse
FString Tags;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerListMultiplayerServersRequest
{
GENERATED_USTRUCT_BODY()
public:
/** The guid string build ID of the multiplayer servers to list. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
FString BuildId;
/** The page size for the request. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
int32 PageSize = 0;
/** The region the multiplayer servers to list. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
EAzureRegion Region;
/** The skip token for the paged request. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
FString SkipToken;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerListMultiplayerServersResponse
{
GENERATED_USTRUCT_BODY()
public:
/** The list of multiplayer server summary details. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
TArray<UPlayFabJsonObject*> MultiplayerServerSummaries;
/** The page size on the response. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
int32 PageSize = 0;
/** The skip token for the paged response. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | MultiplayerServer Models")
FString SkipToken;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerListQosServersRequest
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -883,6 +883,65 @@ void UPlayFabMultiplayerAPI::HelperGetTitleEnabledForMultiplayerServersStatus(FP
this->RemoveFromRoot();
}

/** Lists archived multiplayer server sessions for a build. */
UPlayFabMultiplayerAPI* UPlayFabMultiplayerAPI::ListArchivedMultiplayerServers(FMultiplayerListMultiplayerServersRequest request,
FDelegateOnSuccessListArchivedMultiplayerServers onSuccess,
FDelegateOnFailurePlayFabError onFailure,
UObject* customData)
{
// Objects containing request data
UPlayFabMultiplayerAPI* manager = NewObject<UPlayFabMultiplayerAPI>();
if (manager->IsSafeForRootSet()) manager->AddToRoot();
UPlayFabJsonObject* OutRestJsonObj = NewObject<UPlayFabJsonObject>();
manager->mCustomData = customData;

// Assign delegates
manager->OnSuccessListArchivedMultiplayerServers = onSuccess;
manager->OnFailure = onFailure;
manager->OnPlayFabResponse.AddDynamic(manager, &UPlayFabMultiplayerAPI::HelperListArchivedMultiplayerServers);

// Setup the request
manager->PlayFabRequestURL = "/MultiplayerServer/ListArchivedMultiplayerServers";
manager->useEntityToken = true;

// Serialize all the request properties to json
if (request.BuildId.IsEmpty() || request.BuildId == "") {
OutRestJsonObj->SetFieldNull(TEXT("BuildId"));
} else {
OutRestJsonObj->SetStringField(TEXT("BuildId"), request.BuildId);
}
OutRestJsonObj->SetNumberField(TEXT("PageSize"), request.PageSize);
FString temp_Region;
if (GetEnumValueToString<EAzureRegion>(TEXT("EAzureRegion"), request.Region, temp_Region))
OutRestJsonObj->SetStringField(TEXT("Region"), temp_Region);
if (request.SkipToken.IsEmpty() || request.SkipToken == "") {
OutRestJsonObj->SetFieldNull(TEXT("SkipToken"));
} else {
OutRestJsonObj->SetStringField(TEXT("SkipToken"), request.SkipToken);
}

// Add Request to manager
manager->SetRequestObject(OutRestJsonObj);

return manager;
}

// Implements FOnPlayFabMultiplayerRequestCompleted
void UPlayFabMultiplayerAPI::HelperListArchivedMultiplayerServers(FPlayFabBaseModel response, UObject* customData, bool successful)
{
FPlayFabError error = response.responseError;
if (error.hasError && OnFailure.IsBound())
{
OnFailure.Execute(error, customData);
}
else if (!error.hasError && OnSuccessListArchivedMultiplayerServers.IsBound())
{
FMultiplayerListMultiplayerServersResponse result = UPlayFabMultiplayerModelDecoder::decodeListMultiplayerServersResponseResponse(response.responseData);
OnSuccessListArchivedMultiplayerServers.Execute(result, mCustomData);
}
this->RemoveFromRoot();
}

/** Lists multiplayer server game assets for a title. */
UPlayFabMultiplayerAPI* UPlayFabMultiplayerAPI::ListAssetSummaries(FMultiplayerListAssetSummariesRequest request,
FDelegateOnSuccessListAssetSummaries onSuccess,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,19 @@ FMultiplayerGetTitleEnabledForMultiplayerServersStatusResponse UPlayFabMultiplay
return tempStruct;
}

FMultiplayerListMultiplayerServersResponse UPlayFabMultiplayerModelDecoder::decodeListMultiplayerServersResponseResponse(UPlayFabJsonObject* response)
{
// Temp ustruct
FMultiplayerListMultiplayerServersResponse tempStruct;
UPlayFabJsonObject* dataObj = !(response->HasField("data")) ? nullptr : response->GetObjectField("data");

tempStruct.MultiplayerServerSummaries = !(dataObj->HasField("MultiplayerServerSummaries")) ? TArray<UPlayFabJsonObject*>() : dataObj->GetObjectArrayField("MultiplayerServerSummaries");
tempStruct.PageSize = !(dataObj->HasField("PageSize")) ? 0 : int(dataObj->GetNumberField("PageSize"));
tempStruct.SkipToken = !(dataObj->HasField("SkipToken")) ? TEXT("") : dataObj->GetStringField("SkipToken");

return tempStruct;
}

FMultiplayerListAssetSummariesResponse UPlayFabMultiplayerModelDecoder::decodeListAssetSummariesResponseResponse(UPlayFabJsonObject* response)
{
// Temp ustruct
Expand Down Expand Up @@ -265,19 +278,6 @@ FMultiplayerListContainerImageTagsResponse UPlayFabMultiplayerModelDecoder::deco
return tempStruct;
}

FMultiplayerListMultiplayerServersResponse UPlayFabMultiplayerModelDecoder::decodeListMultiplayerServersResponseResponse(UPlayFabJsonObject* response)
{
// Temp ustruct
FMultiplayerListMultiplayerServersResponse tempStruct;
UPlayFabJsonObject* dataObj = !(response->HasField("data")) ? nullptr : response->GetObjectField("data");

tempStruct.MultiplayerServerSummaries = !(dataObj->HasField("MultiplayerServerSummaries")) ? TArray<UPlayFabJsonObject*>() : dataObj->GetObjectArrayField("MultiplayerServerSummaries");
tempStruct.PageSize = !(dataObj->HasField("PageSize")) ? 0 : int(dataObj->GetNumberField("PageSize"));
tempStruct.SkipToken = !(dataObj->HasField("SkipToken")) ? TEXT("") : dataObj->GetStringField("SkipToken");

return tempStruct;
}

FMultiplayerListQosServersResponse UPlayFabMultiplayerModelDecoder::decodeListQosServersResponseResponse(UPlayFabJsonObject* response)
{
// Temp ustruct
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -428,10 +428,11 @@ FString UPlayFabUtilities::getErrorText(int32 code)
case 1396: returnText = "InvalidFacebookInstantGamesSignature"; break;
case 1397: returnText = "FacebookInstantGamesAuthNotConfiguredForTitle"; break;
case 1398: returnText = "EntityProfileConstraintValidationFailed"; break;
case 1399: returnText = "PlayInsightsIngestionKeyPending"; break;
case 1400: returnText = "PlayInsightsIngestionKeyNotFound"; break;
case 1399: returnText = "TelemetryIngestionKeyPending"; break;
case 1400: returnText = "TelemetryIngestionKeyNotFound"; break;
case 1401: returnText = "StatisticTagRequired"; break;
case 1402: returnText = "StatisticTagInvalid"; break;
case 1403: returnText = "DataIntegrityError"; break;
case 2001: returnText = "MatchmakingEntityInvalid"; break;
case 2002: returnText = "MatchmakingPlayerAttributesInvalid"; break;
case 2003: returnText = "MatchmakingCreateRequestMissing"; break;
Expand Down Expand Up @@ -469,6 +470,7 @@ FString UPlayFabUtilities::getErrorText(int32 code)
case 2035: returnText = "MatchmakingNotEnabled"; break;
case 2036: returnText = "MatchmakingGetStatisticsIdentityInvalid"; break;
case 2037: returnText = "MatchmakingStatisticsIdMissing"; break;
case 2038: returnText = "CannotEnableMultiplayerServersForTitle"; break;
}

// Return the text
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@

namespace PlayFabCommon
{
const FString PlayFabCommonSettings::sdkVersion = "1.6.181105";
const FString PlayFabCommonSettings::buildIdentifier = "jbuild_unrealmarketplaceplugin__sdk-slave2016-3_1";
const FString PlayFabCommonSettings::versionString = "UE4MKPL-1.6.181105";
const FString PlayFabCommonSettings::sdkVersion = "1.7.181114";
const FString PlayFabCommonSettings::buildIdentifier = "jbuild_unrealmarketplaceplugin__sdk-slave2016-2_1";
const FString PlayFabCommonSettings::versionString = "UE4MKPL-1.7.181114";
const FString PlayFabCommonSettings::verticalName = "";

FString PlayFabCommonSettings::serverURL;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -414,6 +414,33 @@ void UPlayFabMultiplayerAPI::OnGetTitleEnabledForMultiplayerServersStatusResult(
}
}

bool UPlayFabMultiplayerAPI::ListArchivedMultiplayerServers(
MultiplayerModels::FListMultiplayerServersRequest& request,
const FListArchivedMultiplayerServersDelegate& SuccessDelegate,
const FPlayFabErrorDelegate& ErrorDelegate)
{
if (PlayFabSettings::GetEntityToken().Len() == 0) {
UE_LOG(LogPlayFabCpp, Error, TEXT("You must call GetEntityToken API Method before calling this function."));
}
auto HttpRequest = PlayFabRequestHandler::SendRequest(PlayFabSettings::GetUrl(TEXT("/MultiplayerServer/ListArchivedMultiplayerServers")), request.toJSONString(), TEXT("X-EntityToken"), PlayFabSettings::GetEntityToken());
HttpRequest->OnProcessRequestComplete().BindRaw(this, &UPlayFabMultiplayerAPI::OnListArchivedMultiplayerServersResult, SuccessDelegate, ErrorDelegate);
return HttpRequest->ProcessRequest();
}

void UPlayFabMultiplayerAPI::OnListArchivedMultiplayerServersResult(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FListArchivedMultiplayerServersDelegate SuccessDelegate, FPlayFabErrorDelegate ErrorDelegate)
{
MultiplayerModels::FListMultiplayerServersResponse outResult;
FPlayFabCppError errorResult;
if (PlayFabRequestHandler::DecodeRequest(HttpRequest, HttpResponse, bSucceeded, outResult, errorResult))
{
SuccessDelegate.ExecuteIfBound(outResult);
}
else
{
ErrorDelegate.ExecuteIfBound(errorResult);
}
}

bool UPlayFabMultiplayerAPI::ListAssetSummaries(
MultiplayerModels::FListAssetSummariesRequest& request,
const FListAssetSummariesDelegate& SuccessDelegate,
Expand Down
Loading

0 comments on commit 51c9ada

Please sign in to comment.