Lesson 82 - Parsing Create Player Sessions
This commit is contained in:
@@ -33,7 +33,6 @@ void ADS_GameMode::BeginPlay()
|
|||||||
void ADS_GameMode::InitGame(const FString& MapName, const FString& Options, FString& ErrorMessage)
|
void ADS_GameMode::InitGame(const FString& MapName, const FString& Options, FString& ErrorMessage)
|
||||||
{
|
{
|
||||||
Super::InitGame(MapName, Options, ErrorMessage);
|
Super::InitGame(MapName, Options, ErrorMessage);
|
||||||
UE_LOGFMT(LogTemp, Error, "We got into InitGame of ADS_GameMode");
|
|
||||||
#if WITH_GAMELIFT
|
#if WITH_GAMELIFT
|
||||||
|
|
||||||
CachedCommandLine = FCommandLine::Get();
|
CachedCommandLine = FCommandLine::Get();
|
||||||
|
|||||||
@@ -37,8 +37,8 @@ void FDSGameSession::Dump() const
|
|||||||
UE_LOGFMT(LogDedicatedServers, Log, "GameSessionId: {GameSessionId}", *GameSessionId);
|
UE_LOGFMT(LogDedicatedServers, Log, "GameSessionId: {GameSessionId}", *GameSessionId);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " Name: {Name}", *Name);
|
UE_LOGFMT(LogDedicatedServers, Log, " Name: {Name}", *Name);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " FleetArn: {FleetArn}", *FleetArn);
|
UE_LOGFMT(LogDedicatedServers, Log, " FleetArn: {FleetArn}", *FleetArn);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " CreationTime: {CreationTime}", CreationTime); // need to write a conversion function
|
UE_LOGFMT(LogDedicatedServers, Log, " CreationTime: {CreationTime}", *CreationTime); // need to write a conversion function
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " TerminationTime: {TerminationTime}", TerminationTime); // need to write a conversion function
|
UE_LOGFMT(LogDedicatedServers, Log, " TerminationTime: {TerminationTime}", *TerminationTime); // need to write a conversion function
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " CurrentPlayerSessionCount: {CurrentPlayerSessionCount}", CurrentPlayerSessionCount);
|
UE_LOGFMT(LogDedicatedServers, Log, " CurrentPlayerSessionCount: {CurrentPlayerSessionCount}", CurrentPlayerSessionCount);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " MaximumPlayerSessionCount: {MaximumPlayerSessionCount}", MaximumPlayerSessionCount);
|
UE_LOGFMT(LogDedicatedServers, Log, " MaximumPlayerSessionCount: {MaximumPlayerSessionCount}", MaximumPlayerSessionCount);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " Status: {Status}", *Status);
|
UE_LOGFMT(LogDedicatedServers, Log, " Status: {Status}", *Status);
|
||||||
@@ -75,6 +75,6 @@ void FDSPlayerSession::Dump() const
|
|||||||
UE_LOGFMT(LogDedicatedServers, Log, " Port: {Port}", Port);
|
UE_LOGFMT(LogDedicatedServers, Log, " Port: {Port}", Port);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " Status: {Status}", *Status);
|
UE_LOGFMT(LogDedicatedServers, Log, " Status: {Status}", *Status);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " PlayerData: {PlayerData}", *PlayerData);
|
UE_LOGFMT(LogDedicatedServers, Log, " PlayerData: {PlayerData}", *PlayerData);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " CreationTime: {CreationTime}", CreationTime);
|
UE_LOGFMT(LogDedicatedServers, Log, " CreationTime: {CreationTime}", *CreationTime);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " TerminationTime: {TerminationTime}", TerminationTime);
|
UE_LOGFMT(LogDedicatedServers, Log, " TerminationTime: {TerminationTime}", *TerminationTime);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -145,5 +145,23 @@ void UPortalManager::TryCreatePlayerSession(const FString& PlayerId, const FStri
|
|||||||
|
|
||||||
void UPortalManager::FindPlayerSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful)
|
void UPortalManager::FindPlayerSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful)
|
||||||
{
|
{
|
||||||
GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("Create Player Session Response Received..."));
|
if (!bWasSuccessful)
|
||||||
|
{
|
||||||
|
BroadcastJoinGameSessionMessage.Broadcast(HTTPStatusMessages::SomethingWentWrong, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
TSharedPtr<FJsonObject> JsonObject;
|
||||||
|
TSharedRef<TJsonReader<>> JsonReader = TJsonReaderFactory<>::Create(Response->GetContentAsString());
|
||||||
|
if (FJsonSerializer::Deserialize(JsonReader, JsonObject))
|
||||||
|
{
|
||||||
|
if (ContainsErrors(JsonObject))
|
||||||
|
{
|
||||||
|
BroadcastJoinGameSessionMessage.Broadcast(HTTPStatusMessages::SomethingWentWrong, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
FDSPlayerSession PlayerSession;
|
||||||
|
FJsonObjectConverter::JsonObjectToUStruct(JsonObject.ToSharedRef(), &PlayerSession);
|
||||||
|
|
||||||
|
PlayerSession.Dump();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,10 +56,10 @@ struct FDSGameSession
|
|||||||
FString FleetArn{};
|
FString FleetArn{};
|
||||||
|
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
double CreationTime{};
|
FString CreationTime{};
|
||||||
|
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
double TerminationTime{};
|
FString TerminationTime{};
|
||||||
|
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
int32 CurrentPlayerSessionCount{};
|
int32 CurrentPlayerSessionCount{};
|
||||||
@@ -116,7 +116,7 @@ struct FDSPlayerSession
|
|||||||
|
|
||||||
/** Unix timestamp for when the player session was created */
|
/** Unix timestamp for when the player session was created */
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
int64 CreationTime{};
|
FString CreationTime{};
|
||||||
|
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
FString DnsName{};
|
FString DnsName{};
|
||||||
@@ -152,7 +152,7 @@ struct FDSPlayerSession
|
|||||||
|
|
||||||
/** Unix timestamp for when the player session was terminated (0 if still active) */
|
/** Unix timestamp for when the player session was terminated (0 if still active) */
|
||||||
UPROPERTY()
|
UPROPERTY()
|
||||||
int64 TerminationTime{};
|
FString TerminationTime{};
|
||||||
|
|
||||||
void Dump() const;
|
void Dump() const;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user