Lesson 81 - Player Session Struct

This commit is contained in:
Norman Lansing
2026-04-05 20:20:35 -04:00
parent 9837e4e1d6
commit 16e4470081
5 changed files with 74 additions and 8 deletions

View File

@@ -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;
};

View File

@@ -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);