Lesson 81 - Player Session Struct
This commit is contained in:
Binary file not shown.
@@ -60,5 +60,21 @@ void FDSGameSession::Dump() const
|
|||||||
UE_LOGFMT(LogDedicatedServers, Log, " Location: {Location}", *Location);
|
UE_LOGFMT(LogDedicatedServers, Log, " Location: {Location}", *Location);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " ComputeName: {ComputeName}", *ComputeName);
|
UE_LOGFMT(LogDedicatedServers, Log, " ComputeName: {ComputeName}", *ComputeName);
|
||||||
UE_LOGFMT(LogDedicatedServers, Log, " PlayerGatewayStatus: {PlayerGatewayStatus}", *PlayerGatewayStatus);
|
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();
|
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")))
|
if (Status.Equals(TEXT("ACTIVE")))
|
||||||
@@ -133,15 +133,17 @@ void UPortalManager::TryCreatePlayerSession(const FString& PlayerId, const FStri
|
|||||||
Request->SetHeader("Content-Type", "application/json");
|
Request->SetHeader("Content-Type", "application/json");
|
||||||
|
|
||||||
TMap<FString, FString> Params = {
|
TMap<FString, FString> Params = {
|
||||||
{TEXT("playerId"), PlayerId},
|
{TEXT("playerId"), PlayerId },
|
||||||
{TEXT("sessionId"), GameSessionId}
|
{TEXT("gameSessionId"), GameSessionId }
|
||||||
};
|
};
|
||||||
|
|
||||||
Request->SetContentAsString(SerializeJsonContent(Params));
|
const FString Content = SerializeJsonContent(Params);
|
||||||
|
|
||||||
|
Request->SetContentAsString(Content);
|
||||||
Request->ProcessRequest();
|
Request->ProcessRequest();
|
||||||
}
|
}
|
||||||
|
|
||||||
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..."));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -108,3 +108,51 @@ struct FDSGameSession
|
|||||||
|
|
||||||
void Dump() const;
|
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);
|
void FindOrCreateGameSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful);
|
||||||
FString GetUniquePlayerId() const;
|
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 TryCreatePlayerSession(const FString& PlayerId, const FString& GameSessionId);
|
||||||
void FindPlayerSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful);
|
void FindPlayerSession_Response(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bWasSuccessful);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user