Skip to content

PlayerInfo

Summary

MembersDescriptions
class URH_PlayerInfoSubobjectPlayer Info Subobject base class used to store player data.
class URH_PlayerPresencePlayer Presence class used to store player presence data.
class URH_PlayerSessionsPlayer Sessions class used to store player session membership information.
class URH_PlayerMatchesPlayer Matches class used to store player match history information.
class URH_PlayerReportsPlayer Reports class used to store and send player report information.
class URH_PlayerPlatformInfoStores information a specific platform the player has linked to their account.
class URH_PlayerInfoStores and fetchs all the information about a given player.
class URH_PlayerInfoSubsystemSubsystem used to track and request information about players.
struct FRH_PlayerSettingKeySetWrapperWrapper to help with setting keys for player settings.
struct FRH_PlayerAndPlatformInfoWrapper to pair a players Unique Player Id and their current logged in Platform Id.

class URH_PlayerInfoSubobject

class URH_PlayerInfoSubobject
: public UObject

Player Info Subobject base class used to store player data.

Summary

MembersDescriptions
public bool bInitializedTracks if the subobject has been initialized (updated at least once).
public FDateTime LastUpdatedThe last time the players data was updated on the client.
public FString ETagETag to track if the data is stale during requests.
public FGuid PlayerUuidPlayers unique identifier.
public FRH_OnPlayerInfoSubobjectUpdatedMulticastDynamicDelegate BLUEPRINT_OnUpdatedDelegateBlueprint delegate to listen for updates.
public FRH_OnPlayerInfoSubobjectUpdatedMulticastDelegate OnUpdatedDelegateNative delegate to listen for presence updates.
public TArray< FRH_OnRequestPlayerInfoSubobjectDelegateBlock > TemporaryRequestDelegatesDelegates stored to response to currently active requests.
public class URH_PlayerInfo*GetPlayerInfo() constGets the PlayerInfo that owns this Player Matches object.
public inline virtual void MarkUpdated()Sets the last updated time to now.
public inline virtual void MarkDirty()Clears the last updated time to force an update.
public inline virtual void RequestUpdate(bool bForceUpdate,const FRH_OnRequestPlayerInfoSubobjectDelegateBlock & Delegate)Enqueues an update request for the players information from the RallyHere API.
public inline void BLUEPRINT_RequestUpdate(bool bForceUpdate,const FRH_OnRequestPlayerInfoSubobjectDynamicDelegate & Delegate)
public virtual void CheckPollStatus(const bool bForceUpdate)Updates the poll status to be active or inactive based on if it should currently be polling.
protected FRH_AutoPollerPtr PollerPoller for the players matches.
protected FName PollTimerNameThe name of the timer preset to use for polling.
protected int32 PollPriorityThe priority of the poll request.
protected inline virtual bool ShouldPoll() constGets if the poller should be actively polling, only polls if something cares about it.
protected inline virtual void Poll(const FRH_PollCompleteFunc & Delegate)Starts a poll of the object data.
protected template<>
inline void UpdateBase(const T & Other)
Stores the response data from an API presence request.
protected inline virtual void PollComplete(bool bSuccess,const FRH_PollCompleteFunc & Delegate)Starts a poll of the object data.
protected virtual void ExecuteUpdatedDelegates(bool bSuccess)Handles executing any delegate listeners for the update.

Members

public bool bInitialized

Tracks if the subobject has been initialized (updated at least once).

public FDateTime LastUpdated

The last time the players data was updated on the client.

public FString ETag

ETag to track if the data is stale during requests.

public FGuid PlayerUuid

Players unique identifier.

public FRH_OnPlayerInfoSubobjectUpdatedMulticastDynamicDelegate BLUEPRINT_OnUpdatedDelegate

Blueprint delegate to listen for updates.

public FRH_OnPlayerInfoSubobjectUpdatedMulticastDelegate OnUpdatedDelegate

Native delegate to listen for presence updates.

public TArray< FRH_OnRequestPlayerInfoSubobjectDelegateBlock > TemporaryRequestDelegates

Delegates stored to response to currently active requests.

public class URH_PlayerInfo*GetPlayerInfo() const

Gets the PlayerInfo that owns this Player Matches object.

Returns

The PlayerInfo that owns the Player Matches object.

public inline virtual void MarkUpdated()

Sets the last updated time to now.

public inline virtual void MarkDirty()

Clears the last updated time to force an update.

public inline virtual void RequestUpdate(bool bForceUpdate,const FRH_OnRequestPlayerInfoSubobjectDelegateBlock & Delegate)

Enqueues an update request for the players information from the RallyHere API.

Parameters

  • bForceUpdate If true, immediately requests an update rather than waiting for the next poll time. WARNING: Use this sparingly

  • Delegate Callback delegate for the request.

public inline void BLUEPRINT_RequestUpdate(bool bForceUpdate,const FRH_OnRequestPlayerInfoSubobjectDynamicDelegate & Delegate)

public virtual void CheckPollStatus(const bool bForceUpdate)

Updates the poll status to be active or inactive based on if it should currently be polling.

Parameters

  • bForceUpdate If true, immediately requests an update rather than waiting for the next poll time. WARNING: Use this sparingly

protected FRH_AutoPollerPtr Poller

Poller for the players matches.

protected FName PollTimerName

The name of the timer preset to use for polling.

protected int32 PollPriority

The priority of the poll request.

protected inline virtual bool ShouldPoll() const

Gets if the poller should be actively polling, only polls if something cares about it.

protected inline virtual void Poll(const FRH_PollCompleteFunc & Delegate)

Starts a poll of the object data.

Parameters

  • Delegate Callback delegate for the poll.

protected template<>
inline void UpdateBase(const T & Other)

Stores the response data from an API presence request.

Parameters

  • Other The presence data to store.

protected inline virtual void PollComplete(bool bSuccess,const FRH_PollCompleteFunc & Delegate)

Starts a poll of the object data.

Parameters

  • Delegate Callback delegate for the poll.

protected virtual void ExecuteUpdatedDelegates(bool bSuccess)

Handles executing any delegate listeners for the update.

Parameters

  • bSuccess If the poll was successful.

class URH_PlayerPresence

class URH_PlayerPresence
: public URH_PlayerInfoSubobject

Player Presence class used to store player presence data.

Summary

MembersDescriptions
public ERHAPI_OnlineStatus StatusOnline status of the player.
public FString MessageMessage set by a player to display on their presence information.
public FString PlatformWhich platform the player is currently playing / last seen on.
public FString DisplayNameThe players display name for their current or last seen platform.
public TMap< FString, FString > CustomDataCustom data that can be set by the player.
protected virtual void Poll(const FRH_PollCompleteFunc & Delegate)Starts a poll of the players presence.
protected inline virtual void Update(const GetPresenceType::Response & Other)Stores the response data from an API presence request.
typedef GetPresenceType

Members

public ERHAPI_OnlineStatus Status

Online status of the player.

public FString Message

Message set by a player to display on their presence information.

public FString Platform

Which platform the player is currently playing / last seen on.

public FString DisplayName

The players display name for their current or last seen platform.

public TMap< FString, FString > CustomData

Custom data that can be set by the player.

protected virtual void Poll(const FRH_PollCompleteFunc & Delegate)

Starts a poll of the players presence.

Parameters

  • Delegate Callback delegate for the poll.

protected inline virtual void Update(const GetPresenceType::Response & Other)

Stores the response data from an API presence request.

Parameters

  • Other The presence data to store.

typedef GetPresenceType

class URH_PlayerSessions

class URH_PlayerSessions
: public URH_PlayerInfoSubobject

Player Sessions class used to store player session membership information.

Summary

MembersDescriptions
public FRHAPI_PlayerSessions SessionsThe sessions the player is a member of.
protected virtual void Poll(const FRH_PollCompleteFunc & Delegate)Starts a poll of the players sessions.
protected inline virtual void Update(const GetSessionsType::Response & Other)Stores the response data from an API request.
typedef GetSessionsType

Members

public FRHAPI_PlayerSessions Sessions

The sessions the player is a member of.

protected virtual void Poll(const FRH_PollCompleteFunc & Delegate)

Starts a poll of the players sessions.

Parameters

  • Delegate Callback delegate for the poll.

protected inline virtual void Update(const GetSessionsType::Response & Other)

Stores the response data from an API request.

Parameters

  • Other The response data to store.

typedef GetSessionsType

class URH_PlayerMatches

class URH_PlayerMatches
: public URH_PlayerInfoSubobject

Player Matches class used to store player match history information.

Summary

MembersDescriptions
public int32 PollPageSizeThe size of the pages to poll, if 0, uses default.
public int32 PollMaxPageCountPolling of new pages is stopped after this value is reached, if 0, polls until all pages are polled.
public FTimespan PollMaxAgeThe maximum age after which to stop polling new pages, if 0, polls until max count is reached.
public TMap< FString, FRHAPI_MatchPlayerWithMatch>MatchesThe matches the player has participated in.
protected virtual void Poll(const FRH_PollCompleteFunc & Delegate)Starts a poll of the object data.
protected virtual void PollNextPage(const FRH_PollCompleteFunc & Delegate,TSharedPtr< FPollContext > Context)Starts a poll of the object data.
protected inline virtual void Update(const GetMatchesType::Response & Other,TSharedPtr< FPollContext > Context)Stores the response data from an API presence request.
typedef GetMatchesType

Members

public int32 PollPageSize

The size of the pages to poll, if 0, uses default.

public int32 PollMaxPageCount

Polling of new pages is stopped after this value is reached, if 0, polls until all pages are polled.

public FTimespan PollMaxAge

The maximum age after which to stop polling new pages, if 0, polls until max count is reached.

public TMap< FString, FRHAPI_MatchPlayerWithMatch>Matches

The matches the player has participated in.

protected virtual void Poll(const FRH_PollCompleteFunc & Delegate)

Starts a poll of the object data.

Parameters

  • Delegate Callback delegate for the poll.

protected virtual void PollNextPage(const FRH_PollCompleteFunc & Delegate,TSharedPtr< FPollContext > Context)

Starts a poll of the object data.

Parameters

  • Delegate Callback delegate for the poll.

  • Context The context to use for the poll.

protected inline virtual void Update(const GetMatchesType::Response & Other,TSharedPtr< FPollContext > Context)

Stores the response data from an API presence request.

Parameters

  • Other The match data to store.

  • Context The context to use for the poll.

typedef GetMatchesType

class URH_PlayerReports

class URH_PlayerReports
: public URH_PlayerInfoSubobject

Player Reports class used to store and send player report information.

Summary

MembersDescriptions
public virtual void GetReportsSentAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsBlock & Delegate)Request a list of player reports send by this player.
public inline void BLUEPRINT_GetReportsSentAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsDynamicDelegate & Delegate)Request a list of player reports send by this player.
public inline TArray< FRHAPI_PlayerReport>GetReportsSent() constGet the current cached list of player reports sent by this player.
public virtual void GetReportsReceivedAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsBlock & Delegate)Request a list of player reports received by this player.
public inline void BLUEPRINT_GetReportsReceivedAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsDynamicDelegate & Delegate)Request a list of player reports received by this player.
public inline virtual TArray< FRHAPI_PlayerReport>GetReportsReceived() constGet the current cached list of player reports received by this player.
public virtual void CreateReport(const FRHAPI_PlayerReportCreate & Report,const FRH_PlayerInfoCreatePlayerReportBlock & Delegate)Create a new report for the target player.
public inline void BLUEPRINT_CreateReport(const FRHAPI_PlayerReportCreate & Report,const FRH_PlayerInfoCreatePlayerReportDynamicDelegate & Delegate)Create a new report for the target player.
public virtual void CreateReport(const FRHAPI_PlayerReportCreate & Report,FAuthContextPtr AuthContext,const FRH_PlayerInfoCreatePlayerReportBlock & Delegate)Create a new report for the target player with a specific auth context.
protected TArray< FRHAPI_PlayerReport>ReportsSent
protected TArray< FRHAPI_PlayerReport>ReportsReceived
typedef GetReportsSentType
typedef GetReportsReceivedType
typedef CreateReportType

Members

public virtual void GetReportsSentAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsBlock & Delegate)

Request a list of player reports send by this player.

Parameters

  • Cursor The cursor to use for the request.

  • PageSize The size of the pages to poll, if 0, uses default

  • Delegate Callback delegate for the request.

public inline void BLUEPRINT_GetReportsSentAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsDynamicDelegate & Delegate)

Request a list of player reports send by this player.

Parameters

  • Cursor The cursor to use for the request.

  • PageSize The size of the pages to poll, if 0, uses default

  • Delegate Callback delegate for the request.

public inline TArray< FRHAPI_PlayerReport>GetReportsSent() const

Get the current cached list of player reports sent by this player.

public virtual void GetReportsReceivedAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsBlock & Delegate)

Request a list of player reports received by this player.

Parameters

  • Cursor The cursor to use for the request.

  • PageSize The size of the pages to poll, if 0, uses default

  • Delegate Callback delegate for the request.

public inline void BLUEPRINT_GetReportsReceivedAsync(const FString & Cursor,const int32 PageSize,const FRH_PlayerInfoGetPlayerReportsDynamicDelegate & Delegate)

Request a list of player reports received by this player.

Parameters

  • Cursor The cursor to use for the request.

  • PageSize The size of the pages to poll, if 0, uses default

  • Delegate Callback delegate for the request.

public inline virtual TArray< FRHAPI_PlayerReport>GetReportsReceived() const

Get the current cached list of player reports received by this player.

public virtual void CreateReport(const FRHAPI_PlayerReportCreate & Report,const FRH_PlayerInfoCreatePlayerReportBlock & Delegate)

Create a new report for the target player.

Parameters

  • Report The report to create.

  • Delegate Callback delegate for the request.

public inline void BLUEPRINT_CreateReport(const FRHAPI_PlayerReportCreate & Report,const FRH_PlayerInfoCreatePlayerReportDynamicDelegate & Delegate)

Create a new report for the target player.

Parameters

  • Report The report to create.

  • Delegate Callback delegate for the request.

public virtual void CreateReport(const FRHAPI_PlayerReportCreate & Report,FAuthContextPtr AuthContext,const FRH_PlayerInfoCreatePlayerReportBlock & Delegate)

Create a new report for the target player with a specific auth context.

Parameters

  • Report The report to create.

  • AuthContext The auth context to use for the request.

  • Delegate Callback delegate for the request.

protected TArray< FRHAPI_PlayerReport>ReportsSent

protected TArray< FRHAPI_PlayerReport>ReportsReceived

typedef GetReportsSentType

typedef GetReportsReceivedType

typedef CreateReportType

class URH_PlayerPlatformInfo

class URH_PlayerPlatformInfo
: public UObject

Stores information a specific platform the player has linked to their account.

Summary

MembersDescriptions
public FRH_PlayerPlatformId PlayerPlatformIdPlayers Platform ID struct.
public FString DisplayNameLast seen display name for the player on the platform.
public inline virtual FRH_PlayerPlatformId GetPlayerPlatformId() constGets the Platform Id struct for the player.
public inline virtual FString GetPlatformUserId() constGets the Platform Id for the player.
public inline virtual ERHAPI_Platform GetPlatform() constGets the Platform Type for the player.
public inline virtual FString GetLastKnownDisplayName() constGets the display name stored the last time this player logged in to the Rally Here server.

Members

public FRH_PlayerPlatformId PlayerPlatformId

Players Platform ID struct.

public FString DisplayName

Last seen display name for the player on the platform.

public inline virtual FRH_PlayerPlatformId GetPlayerPlatformId() const

Gets the Platform Id struct for the player.

Returns

The players Platform Id struct.

public inline virtual FString GetPlatformUserId() const

Gets the Platform Id for the player.

Returns

The players Platform Unique Id.

public inline virtual ERHAPI_Platform GetPlatform() const

Gets the Platform Type for the player.

Returns

The players Platform Type.

public inline virtual FString GetLastKnownDisplayName() const

Gets the display name stored the last time this player logged in to the Rally Here server.

Returns

The players display name for the platform.

class URH_PlayerInfo

class URH_PlayerInfo
: public UObject

Stores and fetchs all the information about a given player.

Summary

MembersDescriptions
public inline FORCEINLINE FGuid & GetRHPlayerUuid()Gets the players Unique player Id.
public inline FORCEINLINE URH_PlayerPresence*GetPresence() constGets The players presence class.
public inline FORCEINLINE URH_PlayerSessions*GetSessions() constGets The players sessions class.
public inline FORCEINLINE URH_PlayerMatches*GetMatches() constGets The players matches class.
public inline FORCEINLINE URH_PlayerReports*GetReports() constGets The players reports class.
public inline virtual TArray< FRH_PlayerPlatformId> &GetPlayerPlatformIds()Gets the associated platform ids of the player.
public inline virtual const TArray< FRH_PlayerPlatformId> &GetPlayerPlatformIds() constGets the associated platform ids of the player.
public virtual TArray< URH_PlayerPlatformInfo* >GetPlayerPlatforms() constGets the associated platforms of the player.
public virtual URH_PlayerPlatformInfo*GetPlayerPlatformInfo(const FRH_PlayerPlatformId & PlayerPlatformId) constGets a specific platform for the player.
public inline URH_PlayerInventory*GetPlayerInventory() constGets the players Inventory Subsystem.
public inline URH_PlayerNotifications*GetPlayerNotifications() constGets the players Notification Subsystem.
public virtual void StartStreamingNotifications()Request to start streaming notifications for this player.
public virtual void StopStreamingNotifications(bool bClearCache)Requests to stop streaming notifications.
public inline virtual const TMap< FString, FRH_PlayerSettingsDataWrapper> &GetAllStoredPlayerSettings() constGets all the players store settings data.
public inline virtual const TMap< FString, FRHAPI_PlayerRankResponseV2> &GetAllStoredPlayerRankings() constGets all the players stored ranking data.
public virtual URH_PlayerInfoSubsystem*GetPlayerInfoSubsystem() constGets the players Info Subsystem that the Player Info is on.
public virtual void InitializeForPlayer(const FGuid & PlayerUuid)Initialized the player info from a given Player Unique Id.
public virtual void GetLastKnownDisplayNameAsync(const FTimespan & StaleThreshold,bool bForceRefresh,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameBlock & Delegate,const class URH_LocalPlayerSubsystem * LocalPlayerSubsystem)Gets the last known display name for the player, will make required API calls to retrieve the information if needed.
public inline void BLUEPRINT_GetLastKnownDisplayNameAsync(const class URH_LocalPlayerSubsystem * LocalPlayerSubsystem,const FTimespan & StaleThreshold,bool bForceRefresh,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameDynamicDelegate & Delegate)
public virtual bool GetLastKnownDisplayName(FString & OutDisplayName,ERHAPI_Platform PreferredPlatformType) constGets the last known display name for the player.
public inline bool BLUEPRINT_GetLastKnownDisplayName(ERHAPI_Platform PreferredPlatformType,FString & OutDisplayName) const
public virtual void GetLinkedPlatformInfo(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlatformsBlock & Delegate)Gets the players linked platforms via API call.
public inline void BLUEPRINT_GetLinkedPlatformInfo(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlatformsDynamicDelegate & Delegate)
public virtual void GetPlayerSettings(const FString & SettingTypeId,const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerSettingsBlock & Delegate)Gets the players settings information for a given type.
public inline void BLUEPRINT_GetPlayerSettings(const FString & SettingTypeId,const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerSettingsDynamicDelegate & Delegate)
public virtual void SetPlayerSettings(const FString & SettingTypeId,FRH_PlayerSettingsDataWrapper & SettingsData,const FRH_PlayerInfoSetPlayerSettingsBlock & Delegate)Sets the players settings information for a given type.
public inline void BLUEPRINT_SetPlayerSettings(const FString & SettingTypeId,FRH_PlayerSettingsDataWrapper SettingsData,const FRH_PlayerInfoSetPlayerSettingsDynamicDelegate & Delegate)
public virtual void GetPlayerRankings(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerRankingsBlock & Delegate)Gets the players ranking information for a given type.
public inline void BLUEPRINT_GetPlayerRankings(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerRankingsDynamicDelegate & Delegate)
public virtual void UpdatePlayerRanking(const FString & RankId,const FRHAPI_PlayerRankUpdateRequest & RankData,const FRH_PlayerInfoGetPlayerRankingsBlock & Delegate)Sets the players settings information for a given type.
public inline void BLUEPRINT_UpdatePlayerRanking(const FString & RankId,const FRHAPI_PlayerRankUpdateRequest & RankData,const FRH_PlayerInfoGetPlayerRankingsDynamicDelegate & Delegate)
public FAuthContextPtr GetAuthContext() constGets the local Auth Context for making API calls.
public virtual ERHAPI_Platform GetLoggedInPlatform() constGets the local users logged in platform type.
protected FGuid RHPlayerUuidThe Unique Player Id for the player.
protected TMap< FString, FRH_PlayerSettingsDataWrapper>PlayerSettingsByTypeIdCache of Player Settings Data by their settings types.
protected TMap< FString, FRH_PlayerSettingKeySetWrapper>PendingSettingRequestsByTypeIdWhen requesting multiple Player Settings Updates at once, this keeps track of pending requests so we know when all requests are completed.
protected TMap< FString, FRH_PlayerSettingsDataWrapper>SetPlayerSettingResponsesUsed when requesting multiple Player Settings Updates to track all their responses.
protected TArray< FRH_PlayerPlatformId>LinkedPlayerPlatformsCache of all platforms the player is linked to.
protected URH_PlayerPresence*PlayerPresenceThe players Presence Information.
protected URH_PlayerSessions*PlayerSessionsThe players Sessions Information.
protected URH_PlayerMatches*PlayerMatchesThe players Matches Information.
protected URH_PlayerReports*PlayerReportsThe players Reports Information.
protected URH_PlayerInventory*PlayerInventoryThe Players Inventory Subsystem.
protected URH_PlayerNotifications*PlayerNotificationsThe Players Inventory Subsystem.
protected TMap< FString, FRHAPI_PlayerRankResponseV2>PlayerRankingsByRankingIdList of the player’s rankings.
protected FDateTime LastRequestPlatformsTracks the last time the players linked platforms were requested for checking if the data is stale.
protected TMap< FString, FDateTime > LastRequestSettingsByTypeIdTracks the last time each settings type was request for checking if the data is stale.
protected FDateTime LastRequestRankingsTracks the last time the player rankings were requested for checking if the data is stale.
protected virtual void OnGetPlayerLinkedPlatformsForLastKnownDisplayNameResponse(bool bSuccess,const TArray< URH_PlayerPlatformInfo* > & Platforms,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameBlock Delegate,const classURH_LocalPlayerSubsystem * LocalPlayerSubsystem)Handles the response to a Get Linked Platforms For Last Known Display Name call.
protected virtual void OnDisplayNameSanitized(bool bSuccess,const FString & SanitizedMessage,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameBlock Delegate)Handles the response to sanitizing the players display name.
protected virtual void OnGetPlayerLinkedPlatformsResponse(const GetPlatforms::Response & Response,const FRH_PlayerInfoGetPlatformsBlock Delegate)Handles the response to a Get Linked Platforms call.
protected virtual void OnGetPlayerSettingsResponse(const GetSettings::Response & Response,const FRH_PlayerInfoGetPlayerSettingsBlock Delegate,const FString SettingTypeId)Handles the response to a Get Player Settings call.
protected virtual void OnSetPlayerSettingsResponse(const SetSettings::Response & Response,const FRH_PlayerInfoSetPlayerSettingsBlock Delegate,const FString SettingTypeId,const FString SettingKey,FRH_PlayerSettingsDataWrapper SettingsData)Handles the response to a Set Player Settings call.
protected virtual void OnGetPlayerRankingsResponse(const GetRankings::Response & Response,const FRH_PlayerInfoGetPlayerRankingsBlock Delegate)Handles the response to a Get Player Rankings call.
protected virtual void OnUpdatePlayerRankingResponse(const UpdateRanking::Response & Response,const FRH_PlayerInfoGetPlayerRankingsBlock Delegate)Handles the response to a Update Player Ranking call.
typedef GetPlatforms
typedef GetSettings
typedef SetSettings
typedef GetRankings
typedef UpdateRanking

Members

public inline FORCEINLINE FGuid & GetRHPlayerUuid()

Gets the players Unique player Id.

Returns

The players Unique Player Id.

public inline FORCEINLINE URH_PlayerPresence*GetPresence() const

Gets The players presence class.

Returns

The players presence class.

public inline FORCEINLINE URH_PlayerSessions*GetSessions() const

Gets The players sessions class.

Returns

The players sessions class.

public inline FORCEINLINE URH_PlayerMatches*GetMatches() const

Gets The players matches class.

Returns

The players matches class.

public inline FORCEINLINE URH_PlayerReports*GetReports() const

Gets The players reports class.

Returns

The players reports class.

public inline virtual TArray< FRH_PlayerPlatformId> &GetPlayerPlatformIds()

Gets the associated platform ids of the player.

Returns

The players associated platforms ids.

public inline virtual const TArray< FRH_PlayerPlatformId> &GetPlayerPlatformIds() const

Gets the associated platform ids of the player.

Returns

The players associated platforms ids.

public virtual TArray< URH_PlayerPlatformInfo* >GetPlayerPlatforms() const

Gets the associated platforms of the player.

Returns

The players associated platforms.

public virtual URH_PlayerPlatformInfo*GetPlayerPlatformInfo(const FRH_PlayerPlatformId & PlayerPlatformId) const

Gets a specific platform for the player.

Parameters

  • PlayerPlatformId The Id of the platform being requested.

Returns

The platform requested for the player if it exists.

public inline URH_PlayerInventory*GetPlayerInventory() const

Gets the players Inventory Subsystem.

Returns

The players Inventory Subsystem.

public inline URH_PlayerNotifications*GetPlayerNotifications() const

Gets the players Notification Subsystem.

Returns

The players Notification Subsystem.

public virtual void StartStreamingNotifications()

Request to start streaming notifications for this player.

public virtual void StopStreamingNotifications(bool bClearCache)

Requests to stop streaming notifications.

Parameters

  • [in[ bClearCache If true, the cache of notifications will be cleared.

public inline virtual const TMap< FString, FRH_PlayerSettingsDataWrapper> &GetAllStoredPlayerSettings() const

Gets all the players store settings data.

Returns

The players stored settings data.

public inline virtual const TMap< FString, FRHAPI_PlayerRankResponseV2> &GetAllStoredPlayerRankings() const

Gets all the players stored ranking data.

Returns

The players stored settings data.

public virtual URH_PlayerInfoSubsystem*GetPlayerInfoSubsystem() const

Gets the players Info Subsystem that the Player Info is on.

Returns

The Player Info Subsystem.

public virtual void InitializeForPlayer(const FGuid & PlayerUuid)

Initialized the player info from a given Player Unique Id.

Parameters

  • PlayerUuid The Unique Id of the player.

public virtual void GetLastKnownDisplayNameAsync(const FTimespan & StaleThreshold,bool bForceRefresh,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameBlock & Delegate,const class URH_LocalPlayerSubsystem * LocalPlayerSubsystem)

Gets the last known display name for the player, will make required API calls to retrieve the information if needed.

Parameters

  • LocalPlayerSubsystem The Local Player Subsystem to sanitizing player names.

  • StaleThreshold If set, will force a re-request of the players information if the last updated time was more than the threshold.

  • bForceRefresh If true, will force a re-request of the players information.

  • PreferredPlatformType If set, then that specific platforms display name will be returned if possible, otherwise will use your local platforms, otherwise the first platform found for the player.

  • Delegate Callback with the players display name.

public inline void BLUEPRINT_GetLastKnownDisplayNameAsync(const class URH_LocalPlayerSubsystem * LocalPlayerSubsystem,const FTimespan & StaleThreshold,bool bForceRefresh,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameDynamicDelegate & Delegate)

public virtual bool GetLastKnownDisplayName(FString & OutDisplayName,ERHAPI_Platform PreferredPlatformType) const

Gets the last known display name for the player.

Parameters

  • PreferredPlatformType If set, then that specific platforms display name will be returned if possible, otherwise will use your local platforms, otherwise the first platform found for the player.

  • OutDisplayName The player’s display name.

Returns

If the call successfully found a display name for the player already stored on the client.

public inline bool BLUEPRINT_GetLastKnownDisplayName(ERHAPI_Platform PreferredPlatformType,FString & OutDisplayName) const

public virtual void GetLinkedPlatformInfo(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlatformsBlock & Delegate)

Gets the players linked platforms via API call.

Parameters

  • StaleThreshold If set, will force a re-request of the players information if the last updated time was more than the threshold.

  • bForceRefresh If true, will force a re-request of the players information.

  • Delegate Callback with the players linked platforms.

public inline void BLUEPRINT_GetLinkedPlatformInfo(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlatformsDynamicDelegate & Delegate)

public virtual void GetPlayerSettings(const FString & SettingTypeId,const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerSettingsBlock & Delegate)

Gets the players settings information for a given type.

Parameters

  • SettingTypeId The setting type requested.

  • StaleThreshold If set, will force a re-request of the players information if the last updated time was more than the threshold.

  • bForceRefresh If true, will force a re-request of the players information.

  • Delegate Callback with the players settings for the given type.

public inline void BLUEPRINT_GetPlayerSettings(const FString & SettingTypeId,const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerSettingsDynamicDelegate & Delegate)

public virtual void SetPlayerSettings(const FString & SettingTypeId,FRH_PlayerSettingsDataWrapper & SettingsData,const FRH_PlayerInfoSetPlayerSettingsBlock & Delegate)

Sets the players settings information for a given type.

Parameters

  • SettingTypeId The setting type to update.

  • SettingsData Data to be stored into the players settings.

  • Delegate Callback when the operation is complete with success information.

public inline void BLUEPRINT_SetPlayerSettings(const FString & SettingTypeId,FRH_PlayerSettingsDataWrapper SettingsData,const FRH_PlayerInfoSetPlayerSettingsDynamicDelegate & Delegate)

public virtual void GetPlayerRankings(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerRankingsBlock & Delegate)

Gets the players ranking information for a given type.

Parameters

  • StaleThreshold If set, will force a re-request of the players information if the last updated time was more than the threshold.

  • bForceRefresh If true, will force a re-request of the players information.

  • Delegate Callback with the players ranking for the given type.

public inline void BLUEPRINT_GetPlayerRankings(const FTimespan & StaleThreshold,bool bForceRefresh,const FRH_PlayerInfoGetPlayerRankingsDynamicDelegate & Delegate)

public virtual void UpdatePlayerRanking(const FString & RankId,const FRHAPI_PlayerRankUpdateRequest & RankData,const FRH_PlayerInfoGetPlayerRankingsBlock & Delegate)

Sets the players settings information for a given type.

Parameters

  • SettingTypeId The setting type to update.

  • SettingsData Data to be stored into the players settings.

  • Delegate Callback when the operation is complete with success information.

public inline void BLUEPRINT_UpdatePlayerRanking(const FString & RankId,const FRHAPI_PlayerRankUpdateRequest & RankData,const FRH_PlayerInfoGetPlayerRankingsDynamicDelegate & Delegate)

public FAuthContextPtr GetAuthContext() const

Gets the local Auth Context for making API calls.

Returns

Local auth context for the given player or instance

public virtual ERHAPI_Platform GetLoggedInPlatform() const

Gets the local users logged in platform type.

Returns

The Platform type of the local user

protected FGuid RHPlayerUuid

The Unique Player Id for the player.

protected TMap< FString, FRH_PlayerSettingsDataWrapper>PlayerSettingsByTypeId

Cache of Player Settings Data by their settings types.

protected TMap< FString, FRH_PlayerSettingKeySetWrapper>PendingSettingRequestsByTypeId

When requesting multiple Player Settings Updates at once, this keeps track of pending requests so we know when all requests are completed.

protected TMap< FString, FRH_PlayerSettingsDataWrapper>SetPlayerSettingResponses

Used when requesting multiple Player Settings Updates to track all their responses.

protected TArray< FRH_PlayerPlatformId>LinkedPlayerPlatforms

Cache of all platforms the player is linked to.

protected URH_PlayerPresence*PlayerPresence

The players Presence Information.

protected URH_PlayerSessions*PlayerSessions

The players Sessions Information.

protected URH_PlayerMatches*PlayerMatches

The players Matches Information.

protected URH_PlayerReports*PlayerReports

The players Reports Information.

protected URH_PlayerInventory*PlayerInventory

The Players Inventory Subsystem.

protected URH_PlayerNotifications*PlayerNotifications

The Players Inventory Subsystem.

protected TMap< FString, FRHAPI_PlayerRankResponseV2>PlayerRankingsByRankingId

List of the player’s rankings.

protected FDateTime LastRequestPlatforms

Tracks the last time the players linked platforms were requested for checking if the data is stale.

protected TMap< FString, FDateTime > LastRequestSettingsByTypeId

Tracks the last time each settings type was request for checking if the data is stale.

protected FDateTime LastRequestRankings

Tracks the last time the player rankings were requested for checking if the data is stale.

protected virtual void OnGetPlayerLinkedPlatformsForLastKnownDisplayNameResponse(bool bSuccess,const TArray< URH_PlayerPlatformInfo* > & Platforms,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameBlock Delegate,const classURH_LocalPlayerSubsystem * LocalPlayerSubsystem)

Handles the response to a Get Linked Platforms For Last Known Display Name call.

Parameters

  • bSuccess If the call was successful.

  • Platforms List of platforms the player is linked to.

  • PreferredPlatformType The preferred platform type to use for the player.

  • Delegate Delegate passed in for original call to respond to when call completes.

  • LocalPlayerSubsystem The local player subsystem that made the original call.

protected virtual void OnDisplayNameSanitized(bool bSuccess,const FString & SanitizedMessage,ERHAPI_Platform PreferredPlatformType,const FRH_PlayerInfoGetDisplayNameBlock Delegate)

Handles the response to sanitizing the players display name.

Parameters

  • bSuccess If the call was successful.

  • SanitizedMessage The sanitized display name.

  • PreferredPlatformType The preferred platform type to use for the player.

  • Delegate Callback Delegate to return the name.

protected virtual void OnGetPlayerLinkedPlatformsResponse(const GetPlatforms::Response & Response,const FRH_PlayerInfoGetPlatformsBlock Delegate)

Handles the response to a Get Linked Platforms call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnGetPlayerSettingsResponse(const GetSettings::Response & Response,const FRH_PlayerInfoGetPlayerSettingsBlock Delegate,const FString SettingTypeId)

Handles the response to a Get Player Settings call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

  • SettinyTypeId The type of settings that were requested.

protected virtual void OnSetPlayerSettingsResponse(const SetSettings::Response & Response,const FRH_PlayerInfoSetPlayerSettingsBlock Delegate,const FString SettingTypeId,const FString SettingKey,FRH_PlayerSettingsDataWrapper SettingsData)

Handles the response to a Set Player Settings call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

  • SettinyTypeId The type of settings that being updated requested.

  • SettingKey The key of the setting that was updated.

  • SettingsData The data of the setting that was updated.

protected virtual void OnGetPlayerRankingsResponse(const GetRankings::Response & Response,const FRH_PlayerInfoGetPlayerRankingsBlock Delegate)

Handles the response to a Get Player Rankings call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnUpdatePlayerRankingResponse(const UpdateRanking::Response & Response,const FRH_PlayerInfoGetPlayerRankingsBlock Delegate)

Handles the response to a Update Player Ranking call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

typedef GetPlatforms

typedef GetSettings

typedef SetSettings

typedef GetRankings

typedef UpdateRanking

class URH_PlayerInfoSubsystem

class URH_PlayerInfoSubsystem
: public URH_SandboxedSubsystemPlugin
: public FTickableGameObject

Subsystem used to track and request information about players.

Summary

MembersDescriptions
public virtual void Initialize()Initialize the subsystem.
public virtual void Deinitialize()Safely tears down the subsystem.
public inline const TMap< FGuid, URH_PlayerInfo* > &GetPlayerInfos() constGets a map of all the player infos.
public virtual URH_PlayerInfo*GetOrCreatePlayerInfo(const FGuid & PlayerUuid)Gets a Player Info object for a given Player Unique Id, creates if needed.
public virtual URH_PlayerPlatformInfo*GetOrCreatePlayerPlatformInfo(const FRH_PlayerPlatformId & PlayerPlatformId)Gets a Player Info object for a given Player Platform Id, creates if needed.
public virtual URH_PlayerInfo*FindPlayerInfoByPlatformId(const FRH_PlayerPlatformId & PlayerPlatformId) constGets a Player Info object for a given Player Platform Id.
public inline virtual URH_PlayerInfo*GetPlayerInfo(const FGuid & PlayerUuid) constGets a Player Info object for a given Unique Player Id.
public inline virtual URH_PlayerPlatformInfo*GetPlayerPlatformInfo(const FRH_PlayerPlatformId & PlayerPlatformId) constGets the platform info object for a player by the Platform Id.
public inline virtual void AddPlayerLink(const FRH_PlayerPlatformId & PlayerPlatformId,const FGuid & PlayerUuid)Adds a platform mapping for a given player.
public virtual void LookupPlayer(FString PlayerName,const FRH_PlayerInfoLookupPlayerBlock & Delegate)Searchs for all players who use the given display name via API Call.
public inline void BLUEPRINT_LookupPlayer(FString PlayerName,const FRH_PlayerInfoLookupPlayerDynamicDelegate & Delegate)
public virtual void LookupPlayerByPlatformUserId(FRH_PlayerPlatformId PlayerPlatformId,const FRH_PlayerInfoLookupPlayerBlock & Delegate)Searchs for players associated with the given platform and platform user id via API Call.
public inline void BLUEPRINT_LookupPlayerByPlatformUserId(FRH_PlayerPlatformId PlayerPlatformId,const FRH_PlayerInfoLookupPlayerDynamicDelegate & Delegate)
public virtual URH_PlayerInfo*RemovePlayerInfoFromCache(const FGuid & PlayerUuid)Remove a specific Player Info from PlayerInfoSubsystem’s cache.
public virtual void Tick(float DeltaTime)Unreals basic Tick function.
public inline virtual bool IsTickable() constGets if currently tickable.
public inline virtual TStatId GetStatId() constGets the stat to use for the tick time.
protected TSubclassOf< URH_PlayerInfo>PlayerInfoClassOverrideOverride class for Player Info if extended.
protected TMap< FGuid, URH_PlayerInfo* >PlayerInfosMap of Player Infos to their player Uuids.
protected TMap< FRH_PlayerPlatformId](Common.md#structFRH__PlayerPlatformId), [URH_PlayerPlatformInfo* >PlayerPlatformInfosMap of Player Platform Infos to their Platform Ids.
protected TMap< FRH_PlayerPlatformId, FGuid > PlayerPlatformIdToUuidMapMap of Player Uuid to their Platform Ids.
protected virtual void ClearPlayerInfoCache()Clears the cached player infos.
protected virtual void InitPropertiesWithDefaultValues()Initializes the subsystem with defaults for its cached data.
protected virtual void OnLookupPlayerResponse(const TLookupPlayer::Response & Response,const FRH_PlayerInfoLookupPlayerBlock Delegate)Handles the response to a Lookup Player call.
protected virtual void OnLookupPlayerByPlatformUserIdResponse(const TLookupPlayer::Response & Response,const FRH_PlayerInfoLookupPlayerBlock Delegate)Handles the response to a Lookup Player By Platform User Id call.
typedef TLookupPlayer

Members

public virtual void Initialize()

Initialize the subsystem.

public virtual void Deinitialize()

Safely tears down the subsystem.

public inline const TMap< FGuid, URH_PlayerInfo* > &GetPlayerInfos() const

Gets a map of all the player infos.

Returns

Map of player infos by Player Unique Id

public virtual URH_PlayerInfo*GetOrCreatePlayerInfo(const FGuid & PlayerUuid)

Gets a Player Info object for a given Player Unique Id, creates if needed.

Parameters

  • PlayerUuid Unique Player Id for the given player

Returns

Player Info for the player

public virtual URH_PlayerPlatformInfo*GetOrCreatePlayerPlatformInfo(const FRH_PlayerPlatformId & PlayerPlatformId)

Gets a Player Info object for a given Player Platform Id, creates if needed.

Parameters

  • PlayerPlatformId Player Platform Id for the given player

Returns

Player Info for the player

public virtual URH_PlayerInfo*FindPlayerInfoByPlatformId(const FRH_PlayerPlatformId & PlayerPlatformId) const

Gets a Player Info object for a given Player Platform Id.

Parameters

  • PlayerPlatformId Player Platform Id for the given player

Returns

Player Info for the player if found

public inline virtual URH_PlayerInfo*GetPlayerInfo(const FGuid & PlayerUuid) const

Gets a Player Info object for a given Unique Player Id.

Parameters

  • PlayerUuid Unique Player Id for the given player

Returns

Player Info for the player if found

public inline virtual URH_PlayerPlatformInfo*GetPlayerPlatformInfo(const FRH_PlayerPlatformId & PlayerPlatformId) const

Gets the platform info object for a player by the Platform Id.

Parameters

  • PlayerPlatformId Player Platform Id for the given player

Returns

Player Platform Info for the player if found

public inline virtual void AddPlayerLink(const FRH_PlayerPlatformId & PlayerPlatformId,const FGuid & PlayerUuid)

Adds a platform mapping for a given player.

Parameters

  • PlayerUuid Unique Player Id for the given player

  • PlayerPlatformId Player Platform Id for the given player

public virtual void LookupPlayer(FString PlayerName,const FRH_PlayerInfoLookupPlayerBlock & Delegate)

Searchs for all players who use the given display name via API Call.

Parameters

  • PlayerName The display name we want to search for

  • Delegate Callback with the all PlayerInfos that are found with that display name

public inline void BLUEPRINT_LookupPlayer(FString PlayerName,const FRH_PlayerInfoLookupPlayerDynamicDelegate & Delegate)

public virtual void LookupPlayerByPlatformUserId(FRH_PlayerPlatformId PlayerPlatformId,const FRH_PlayerInfoLookupPlayerBlock & Delegate)

Searchs for players associated with the given platform and platform user id via API Call.

Parameters

  • Platform The platform used for the lookup

  • PlatformUserId The platform user id used for the lookup

  • Delegate Callback with the all PlayerInfos that are found with that display name

public inline void BLUEPRINT_LookupPlayerByPlatformUserId(FRH_PlayerPlatformId PlayerPlatformId,const FRH_PlayerInfoLookupPlayerDynamicDelegate & Delegate)

public virtual URH_PlayerInfo*RemovePlayerInfoFromCache(const FGuid & PlayerUuid)

Remove a specific Player Info from PlayerInfoSubsystem’s cache.

Parameters

  • PlayerUuid The UUID of the Player Info to be removed

Returns

The Player Info that got removed

public virtual void Tick(float DeltaTime)

Unreals basic Tick function.

public inline virtual bool IsTickable() const

Gets if currently tickable.

public inline virtual TStatId GetStatId() const

Gets the stat to use for the tick time.

protected TSubclassOf< URH_PlayerInfo>PlayerInfoClassOverride

Override class for Player Info if extended.

protected TMap< FGuid, URH_PlayerInfo* >PlayerInfos

Map of Player Infos to their player Uuids.

protected TMap< FRH_PlayerPlatformId](Common.md#structFRH__PlayerPlatformId), [URH_PlayerPlatformInfo* >PlayerPlatformInfos

Map of Player Platform Infos to their Platform Ids.

protected TMap< FRH_PlayerPlatformId, FGuid > PlayerPlatformIdToUuidMap

Map of Player Uuid to their Platform Ids.

protected virtual void ClearPlayerInfoCache()

Clears the cached player infos.

protected virtual void InitPropertiesWithDefaultValues()

Initializes the subsystem with defaults for its cached data.

protected virtual void OnLookupPlayerResponse(const TLookupPlayer::Response & Response,const FRH_PlayerInfoLookupPlayerBlock Delegate)

Handles the response to a Lookup Player call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnLookupPlayerByPlatformUserIdResponse(const TLookupPlayer::Response & Response,const FRH_PlayerInfoLookupPlayerBlock Delegate)

Handles the response to a Lookup Player By Platform User Id call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

typedef TLookupPlayer

struct FRH_PlayerSettingKeySetWrapper

Wrapper to help with setting keys for player settings.

Summary

MembersDescriptions
public TSet< FString > SettingKeySetSet of keys being set by the settings update.
public inline FRH_PlayerSettingKeySetWrapper()Default constructor.

Members

public TSet< FString > SettingKeySet

Set of keys being set by the settings update.

public inline FRH_PlayerSettingKeySetWrapper()

Default constructor.

struct FRH_PlayerAndPlatformInfo

Wrapper to pair a players Unique Player Id and their current logged in Platform Id.

Summary

MembersDescriptions
public FGuid PlayerUuidThe players Unique Player id.
public FRH_PlayerPlatformId PlayerPlatformIdThe players logged in Platform Id.
public inline FRH_PlayerAndPlatformInfo()Default Constructor.

Members

public FGuid PlayerUuid

The players Unique Player id.

public FRH_PlayerPlatformId PlayerPlatformId

The players logged in Platform Id.

public inline FRH_PlayerAndPlatformInfo()

Default Constructor.