Lesson 81 - Player Session Struct
This commit is contained in:
@@ -60,5 +60,21 @@ void FDSGameSession::Dump() const
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " Location: {Location}", *Location);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " ComputeName: {ComputeName}", *ComputeName);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " PlayerGatewayStatus: {PlayerGatewayStatus}", *PlayerGatewayStatus);
|
||||
|
||||
}
|
||||
|
||||
void FDSPlayerSession::Dump() const
|
||||
{
|
||||
UE_LOGFMT(LogDedicatedServers, Log, "PlayerSession:");
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " PlayerSessionId: {PlayerSessionId}", *PlayerSessionId);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " PlayerId: {PlayerId}", *PlayerId);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " GameSessionId: {GameSessionId}", *GameSessionId);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " FleetId: {FleetId}", *FleetId);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " FleetArn: {FleetArn}", *FleetArn);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " DnsName: {DnsName}", *DnsName);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " IpAddress: {IpAddress}", *IpAddress);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " Port: {Port}", Port);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " Status: {Status}", *Status);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " PlayerData: {PlayerData}", *PlayerData);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " CreationTime: {CreationTime}", CreationTime);
|
||||
UE_LOGFMT(LogDedicatedServers, Log, " TerminationTime: {TerminationTime}", TerminationTime);
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ FString UPortalManager::GetUniquePlayerId() const
|
||||
return FString();
|
||||
}
|
||||
|
||||
void UPortalManager::HandleGameSessionStatus(const FString& Status, const FString& SessionId)
|
||||
void UPortalManager::HandleGameSessionStatus(const FString& SessionId, const FString& Status)
|
||||
{
|
||||
|
||||
if (Status.Equals(TEXT("ACTIVE")))
|
||||
@@ -133,15 +133,17 @@ void UPortalManager::TryCreatePlayerSession(const FString& PlayerId, const FStri
|
||||
Request->SetHeader("Content-Type", "application/json");
|
||||
|
||||
TMap<FString, FString> Params = {
|
||||
{TEXT("playerId"), PlayerId},
|
||||
{TEXT("sessionId"), GameSessionId}
|
||||
{TEXT("playerId"), PlayerId },
|
||||
{TEXT("gameSessionId"), GameSessionId }
|
||||
};
|
||||
|
||||
Request->SetContentAsString(SerializeJsonContent(Params));
|
||||
const FString Content = SerializeJsonContent(Params);
|
||||
|
||||
Request->SetContentAsString(Content);
|
||||
Request->ProcessRequest();
|
||||
}
|
||||
|
||||
void UPortalManager::FindPlayerSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful)
|
||||
{
|
||||
|
||||
GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("Create Player Session Response Received..."));
|
||||
}
|
||||
|
||||
@@ -107,4 +107,52 @@ struct FDSGameSession
|
||||
FString PlayerGatewayStatus{};
|
||||
|
||||
void Dump() const;
|
||||
};
|
||||
};
|
||||
|
||||
USTRUCT(BlueprintType)
|
||||
struct FDSPlayerSession
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
/** Unix timestamp for when the player session was created */
|
||||
UPROPERTY()
|
||||
int64 CreationTime{};
|
||||
|
||||
UPROPERTY()
|
||||
FString DnsName{};
|
||||
|
||||
UPROPERTY()
|
||||
FString FleetArn{};
|
||||
|
||||
UPROPERTY()
|
||||
FString FleetId{};
|
||||
|
||||
UPROPERTY()
|
||||
FString GameSessionId{};
|
||||
|
||||
UPROPERTY()
|
||||
FString IpAddress{};
|
||||
|
||||
UPROPERTY()
|
||||
FString PlayerData{};
|
||||
|
||||
UPROPERTY()
|
||||
FString PlayerId{};
|
||||
|
||||
UPROPERTY()
|
||||
FString PlayerSessionId{};
|
||||
|
||||
/** Network port number for connecting to the game session */
|
||||
UPROPERTY()
|
||||
int32 Port{};
|
||||
|
||||
/** e.g. "RESERVED", "ACTIVE", "COMPLETED", "TIMEDOUT" */
|
||||
UPROPERTY()
|
||||
FString Status{};
|
||||
|
||||
/** Unix timestamp for when the player session was terminated (0 if still active) */
|
||||
UPROPERTY()
|
||||
int64 TerminationTime{};
|
||||
|
||||
void Dump() const;
|
||||
};
|
||||
|
||||
@@ -28,7 +28,7 @@ private:
|
||||
|
||||
void FindOrCreateGameSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful);
|
||||
FString GetUniquePlayerId() const;
|
||||
void HandleGameSessionStatus(const FString& Status, const FString& SessionId);
|
||||
void HandleGameSessionStatus(const FString& SessionId, const FString& Status);
|
||||
void TryCreatePlayerSession(const FString& PlayerId, const FString& GameSessionId);
|
||||
void FindPlayerSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user