Client Data Models
Enums
EPgosClientMatchmakingStatus
Battle session status
enum class EPgosClientMatchmakingStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Starting | 1 | matchmaking is starting |
| Preparing | 2 | the multi-player matchmaking's preparation phase. note: when the MatchmakingObserver receives this status, it requires players to join or reject the matchmaking request. mutilplayer matchmaking : when one of the players start a matchmaking request, the other players will receive the 'Preparing' matchmaking status, and then decide to join or reject the matchmaking request. When everyone has joined, matchmaking start Searching. |
| Searching | 3 | search players for matchmaking |
| Accepting | 4 | wait for players to accepting the result of matchmaking |
| Placing | 5 | placing battle session on game DS |
| Completed | 7 | The matchmaking request ends with a successful result. Check battle_session_info for detail information about the battle. Note: when the MatchmakingObserver receives this status, you need to connect the DS server via IP and port that could obtain from battle_session_info. |
| TimedOut | 8 | matchmaking request timeout |
| Terminated | 9 | matchmaking request is terminated |
| Canceled | 10 | matchmaking request is canceled. The request may have been canceled by the player or the matchmaking result has been rejected by the player |
| Error | 11 | matchmaking request error |
EPgosClientMatchmakingMutexType
Mutex type of matchmaking request
enum class EPgosClientMatchmakingMutexType : uint8
| member | value | description |
|---|
| PerMatchmakingConfig | 0 | There is no limit to the number of battle sessions a player can be in. multiple matchmaking requests from a player in the same matchmaking config are not allowed at the same time. |
| PerPlayer | 1 | If a player has any on going battle sessions or matchmaking in progress, they will not be able to start new matchmaking request. |
EPgosClientPlayerBattleSessionStatus
Player battle session status
enum class EPgosClientPlayerBattleSessionStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Pending | 1 | The player battle session requires DS to call the ReservePlayerBattleSession interface for approval. |
| Reserved | 2 | Reserved players can be validated through the AcceptPlayerBattleSession interface. |
| Active | 3 | Player battle session status turn to ACTIVE after AcceptPlayerBattleSession is called successfully. |
| Completed | 4 | This is the terminal status of player battle session.The status will turn to COMPLETED after RemovePlayerBattleSession is called or player actively leave the battle session. |
| Disconnected | 5 | The player has disconnected from DS server. |
EPgosClientP2PPlayerBattleSessionStatus
Status of a P2P player battle session
enum class EPgosClientP2PPlayerBattleSessionStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Reserved | 2 | Reserved players can be validated through the AcceptPlayerBattleSession interface. |
| Active | 3 | Player battle session status turn to ACTIVE after AcceptPlayerBattleSession is called successfully. |
| Completed | 4 | This is the terminal status of player battle session.The status will turn to COMPLETED after RemovePlayerBattleSession is called or player actively leave the battle session. |
| Disconnected | 5 | The player has disconnected from DS server. |
EPgosClientBattleSessionStatus
Battle session status
enum class EPgosClientBattleSessionStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Placing | 1 | the battle session is currently waiting to be placed on a game DS. |
| Active | 2 | the battle session have been successfully created. |
| Terminated | 3 | the battle session have been terminated. |
| Error | 5 | the battle session error, check status_msg for more information. |
| Cancelled | 6 | the battle session is cancelled. |
| TimedOut | 7 | the battle session timeout |
| Failed | 8 | the battle session failed, check status_msg for more information. |
EPgosClientP2PBattleSessionStatus
P2P Battle session status
enum class EPgosClientP2PBattleSessionStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Placing | 1 | the battle session is currently waiting to be placed on a game DS. |
| Active | 2 | the battle session have been successfully created. |
| HostHealthChecking | 3 | P2P clients should report the host health state within a limited time. |
| NewHostSelected | 4 | the new host has been selected and must accept the identity within a limited time. The new host needs to call the ActivateP2PBattleSession interface to reactivate the battle session. |
| Terminated | 101 | the battle session have been terminated. |
| Error | 102 | the battle session error, check status_msg for more information. |
| TimedOut | 103 | the battle session timeout |
| Failed | 104 | the battle session failed, check status_msg for more information. |
EPgosClientFriendRequestProcessStatus
Friend request process status
enum class EPgosClientFriendRequestProcessStatus : uint8
| member | value | description |
|---|
| Pending | 0 | friend request pending |
| Accepted | 1 | request Accepted |
| Expired | 2 | it may be timed out, the current validity period is 7 days |
EPgosClientReadStatus
Message read status
enum class EPgosClientReadStatus : uint8
| member | value | description |
|---|
| Unread | 0 | message unread |
| Read | 1 | message read |
EPgosClientLobbyStatus
Lobby status
enum class EPgosClientLobbyStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Waiting | 1 | StartBattle has not been called |
| Preparing | 2 | StartBattle was called, but not all lobby members are READY |
| Playing | 3 | A battle session that contains all lobby members is ready to be joined |
EPgosClientLobbyPrivacy
Lobby privacy type
enum class EPgosClientLobbyPrivacy : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| Visible | 1 | Lobby can be searched |
| Invisible | 2 | Lobby can only be searched using the exact lobby_id |
EPgosClientLobbyProtection
Lobby protection type
enum class EPgosClientLobbyProtection : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy should be used when searching lobbies for all protection types |
| PasswordNeeded | 1 | Password needed when joining lobbies |
| PasswordUnneeded | 2 | Password unneeded when joining lobbies |
| FreeAccess | 2 | Players can join lobby directly |
| ApplicationNeeded | 3 | A join request will be sent to the owner after calling the JoinLobby interface, and the owner's approval is required to successfully join the lobby |
EPgosClientLobbyJoiningSource
The source of the player join the lobby
enum class EPgosClientLobbyJoiningSource : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| JoiningByLobbyID | 1 | Search for the lobby and join. |
| JoiningFromInvitation | 2 | Join the lobby through the event of 'OnLobbyInvitation' when the player is invited to join the lobby. |
| JoiningAsOwner | 3 | The lobby creator. |
| JoiningByQuickJoin | 4 | Joined by QuickJoin interface. |
EPgosClientLobbyStatusReason
The reason that the lobby status changes
enum class EPgosClientLobbyStatusReason : uint8
| member | value | description |
|---|
| Dummy | 0 | Dummy |
| SomeoneNotReady | 1 | The lobby owner starts the battle, and lobby status changes from Waiting to Preparing. |
| PlacingFailed | 2 | Placing is failed, and lobby status changes from Placing to Waiting. |
| PreparingTimeout | 3 | Preparing is timeout because there are members not ready, and lobby status changes from Preparing to Waiting. |
| BattleCompleted | 4 | Battle is completed, and lobby status changes from Playing to Waiting. |
| PreparationInterrupted | 5 | Because of member changing, preparing status is interrupted and changes to Waiting. |
EPgosClientLobbyStartBattleCondition
The action when the lobby owner invokes the StartBattle interface depends on the Ready flag of lobby members.
enum class EPgosClientLobbyStartBattleCondition : uint8
| member | value | description |
|---|
| AllReadyOtherwiseWaiting | 0 | The lobby will enter the Preparing stage, waiting for unready players to get ready. |
| AllReadyOtherwiseError | 1 | The lobby owner will receive an error if not all players are ready. |
| IgnoringReadyFlag | 2 | The lobby will enter the Playing stage directly, ignoring the Ready flag. |
EPgosClientOnlineStatus
Online status: online or offline
enum class EPgosClientOnlineStatus : uint8
| member | value | description |
|---|
| Offline | 0 | Player is online |
| Online | 1 | Player is offline |
EPgosClientStoreOrderStatus
enum class EPgosClientStoreOrderStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | None. |
| StoreOrderProcessing | 1 | Order is being processed. |
| StoreOrderCompleted | 2 | Purchase successful. |
| StoreOrderFailed | 3 | Purchase failed. |
EPgosClientStoreItemStatus
enum class EPgosClientStoreItemStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | None. |
| Available | 1 | The item can be purchased normally. |
| Owned | 2 | The unique item can't be purchased because the player already owns. |
| ExceedLimit | 3 | The store item can't be purchased because the player have reached the maximum purchase limit. |
EPgosClientStoreCategoryType
enum class EPgosClientStoreCategoryType : uint8
| member | value | description |
|---|
| Simple | 0 | A simple category be used to manage the publish and retire of store items. |
| Manual | 1 | The category schedule will be enabled to support multi-period publish schedule management. Could be used to implement advanced features such as limited-time sales and regular product updates. |
| Rotation | 2 | The category schedule will be a rotation schedule. |
EPgosClientGroupJoinRule
Join rules of the group.
enum class EPgosClientGroupJoinRule : uint8
| member | value | description |
|---|
| Any | 0 | Players can freely join the group. |
| MemberInvite | 1 | Must be invited by group members to join the group. |
| AdminInvite | 2 | Must be invited by group administrator to join the group. |
| Forbid | 3 | No one is allowed to join. |
EPgosClientChatMsgType
Message type.
enum class EPgosClientChatMsgType : uint8
| member | value | description |
|---|
| MsgTypeText | 0 | Type of text message, sent via SendGroupTextMsg. |
| MsgTypeCustom | 1 | Type of custom message, sent via SendGroupCustomMsg. |
| MsgTypeEvent | 2 | Type of event message, sent by the system. |
| MsgTypeSystem | 3 | Type of system message, sent by the system. |
EPgosClientGroupEventType
Type of event message.
enum class EPgosClientGroupEventType : uint8
| member | value | description |
|---|
| Dummy | 0 | |
| GroupNameChanged | 1 | Group name has been changed. |
| GroupDescChanged | 2 | Group description has been changed. |
| GroupMemberJoined | 3 | New member joined. |
| GroupMemberLeft | 4 | Member left the group. |
| GroupMemberRemoved | 5 | Member removed. |
| GroupAnnouncementChanged | 6 | Group announcement has been changed. |
| GroupOwnerChanged | 7 | Group owner has changed. |
| GroupAdminGranted | 8 | Member granted to group administrator. |
| GroupAdminRevoked | 9 | Group administrator is revoked. |
EPgosClientGroupOfficialFilterType
Group searching filter type for official.
enum class EPgosClientGroupOfficialFilterType : uint8
| member | value | description |
|---|
| Dummy | 0 | Don't filter official groups when searching. |
| NotOfficial | 1 | Only search unofficial groups. |
| Official | 2 | Only search official groups. |
EPgosClientGroupRoomFilterType
Group searching filter type for left rooms.
enum class EPgosClientGroupRoomFilterType : uint8
| member | value | description |
|---|
| Dummy | 0 | Don't filter group rooms when searching. |
| NotFull | 1 | Only search groups that are not full. |
| Full | 2 | Only search full groups. |
EPgosClientGroupOrderBy
The basis for sorting group search result.
enum class EPgosClientGroupOrderBy : uint8
| member | value | description |
|---|
| Dummy | 0 | No sorting of search result. |
| MemberCount | 1 | Search result sorted by members count. |
| CreatedTime | 2 | Search result sorted by creation time. |
EPgosClientGroupOrderType
The order type for group search result.
enum class EPgosClientGroupOrderType : uint8
| member | value | description |
|---|
| Dummy | 0 | No sorting of search results. |
| Asc | 1 | Ascending order for search result. |
| Desc | 2 | Descending order for search result. |
EPgosClientMailCategory
enum class EPgosClientMailCategory : uint8
| member | value | description |
|---|
| All | 0 | All categories. |
| System | 1 | System category. |
| Notice | 2 | Notice category. |
| Campaign | 3 | Campaign category. |
| Award | 4 | Award category. |
| Gift | 5 | Gift category. Usually received gifts from other players. |
| Custom | 6 | Custom category. Category for developer customization. |
EPgosClientGoalType
enum class EPgosClientGoalType : uint8
| member | value | description |
|---|
| Dummy | 0 | |
| Simple | 1 | |
| Hyper | 2 | |
EPgosClientGoalRewardWay
enum class EPgosClientGoalRewardWay : uint8
| member | value | description |
|---|
| Dummy | 0 | |
| Manual | 1 | Goal reward need to be claimed manually |
| Mail | 2 | When the goal is achieved, the rewards will be automatically granted through the preset email template |
EPgosClientScheduleStatus
enum class EPgosClientScheduleStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | |
| Published | 1 | |
| Retired | 2 | |
EPgosClientPrivacyItemType
enum class EPgosClientPrivacyItemType : uint8
| member | value | description |
|---|
| Dummy | 0 | |
| AllowSearchedByOthers | 1 | |
| AllowFriendRequest | 2 | |
| AllowNonFriendPersChat | 3 | |
| AllowGroupInvitation | 4 | |
| ChatStrategy | 5 | |
EPgosClientPrivacyChatStrategy
Text and voice chat privacy settings
enum class EPgosClientPrivacyChatStrategy : uint8
| member | value | description |
|---|
| Allow | 0 | Everyone, can see and be seen chat messages from anyone (except block list) |
| OnlyFriends | 1 | Friends, can only see friends and be seen by friends |
| Blocked | 2 | Not allowed at all, won't see anyone's messages, and won't send any messages out |
EPgosClientLobbyOrderBy
enum class EPgosClientLobbyOrderBy : uint8
| member | value | description |
|---|
| LOBBY_ORDER_BY_DEFAULT | 0 | Sort by status: Waiting, Preparing, Playing;then by create time from older to newer |
| LOBBY_ORDER_BY_CREATE_TIME | 1 | Sort by lobby create time |
| LOBBY_ORDER_BY_UPDATE_TIME | 2 | Sort by lobby last update time |
| LOBBY_ORDER_BY_JOINED_MEMBER_COUNT | 3 | Sort by joined member count |
| LOBBY_ORDER_BY_MISSING_MEMBER_COUNT | 4 | Sort by empty slot count |
EPgosClientLobbyOrderType
The order type for group search result.
enum class EPgosClientLobbyOrderType : uint8
| member | value | description |
|---|
| LOBBY_ORDER_TYPE_ASCENDING | 0 | Ascending order for search result. |
| LOBBY_ORDER_TYPE_DESCENDING | 1 | Descending order for search result. |
EPgosClientPartyJoinStrategy
The strategy controls the rules who could join the party
enum class EPgosClientPartyJoinStrategy : uint8
| member | value | description |
|---|
| Public | 0 | Open to anyone, it's the default strategy |
| OnlyFriendsOfLeader | 1 | Only friends of the leader could join the party |
| OnlyFriendsOfMembers | 2 | Only friends of any member could join the party |
| OnlyInvited | 3 | Only invited players could join the party |
| NotAllowed | 4 | No one can join |
EPgosClientPartyInviteStrategy
The strategy controls the rules who could invite others to the party
enum class EPgosClientPartyInviteStrategy : uint8
| member | value | description |
|---|
| AllMembersCanInvite | 0 | All members of the party can invite others, it's the default strategy |
| OnlyLeaderCanInvite | 1 | Only the party leader can invite others |
EClientPgosEventChannelStatus
Various status definitions of the PGOS event channel.
The Event Channel serves as a data pipeline for the PGOS backend to send event notifications (e.g., chat_messages/friend_requests) to the client.
enum class EClientPgosEventChannelStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Invalid status. |
| Creating | 1 | When the client is connecting or reconnecting to the backend in order to establish the channel, the status is set to 'Creating'. |
| Available | 2 | When the channel is successfully established, the status is set to 'Available', indicating that the event notification service is functioning properly. |
| Unavailable | 3 | When the client expectedly(logout) or unexpectedly(network exception) disconnects from the backend, the status is set to 'Unavailable', and the event notification service stops working. The SDK will automatically attempt to rebuild the channel until it succeeds, with a gradually slowing frequency. It starts by trying to rebuild every 3 seconds and eventually reduces the frequency to once every 5 minutes. |
EPgosClientMidasRoleIDMethod
enum class EPgosClientMidasRoleIDMethod : uint8
| member | value | description |
|---|
| Game | 0 | |
| PGOS | 1 | |
EPgosClientJoinWorldInvitationStatus
Describe the status of the join world invitation.
enum class EPgosClientJoinWorldInvitationStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Invalid status. |
| Pending | 1 | Means: there are still invited players who have not yet confirmed whether to accept or reject the invitation. |
| Completed | 2 | Means: all invited players have made their choices to accept/reject, or the invitation has timed out. And no more 'OnJoinWorldInvitationUpdated' event of this invitation_ticket. Now, the player who accepted the invitation has been added to the battle session. Typically, the player who accepts the invitation will receive the 'OnWorldBattleSessionUpdated' event after the invitation status is marked as 'Completed'. However, if the player is already in the assigned battle session before the invitation, and has obtained the battle session's IP&port (which means he has received the relevant event of the battle session status being Active), then he may not be pushed the 'OnWorldBattleSessionUpdated' event. |
| Error | 3 | Means: An error has occurred (e.g. not enough slots left in the world). Please refer to the 'error_msg' in 'JoinWorldInvitationInfo' structure for more details. |
EPgosClientJoinWorldInvitationAction
The player's action type in response to a join world invitation.
enum class EPgosClientJoinWorldInvitationAction : uint8
| member | value | description |
|---|
| Undecided | 0 | The player has not yet decided. |
| Accepted | 1 | The player has decided to accept the invitation. |
| Rejected | 2 | The player has decided to reject the invitation. |
EPgosClientLeaveWorldInvitationStatus
Describe the status of the leave world invitation.
enum class EPgosClientLeaveWorldInvitationStatus : uint8
| member | value | description |
|---|
| Dummy | 0 | Invalid status. |
| Pending | 1 | Means: there are still invited players who have not yet confirmed whether to accept or reject the invitation. |
| Completed | 2 | Means: all invited players have made their choices to accept/reject, or the invitation has timed out. And no more 'OnLeaveWorldInvitationUpdated' event of this invitation_ticket. Now, the player who accepted the invitation has been removed from the world. |
| Error | 3 | Please refer to the 'error_msg' in 'LeaveWorldInvitationInfo' structure for more details. |
EPgosClientLeaveWorldInvitationAction
The player's action type in response to a leave world invitation.
enum class EPgosClientLeaveWorldInvitationAction : uint8
| member | value | description |
|---|
| Undecided | 0 | The player has not yet decided. |
| Accepted | 1 | The player has decided to accept the invitation. |
| Rejected | 2 | The player has decided to reject the invitation. |
EPgosClientP2PConnectionType
The type of P2P connection.
enum class EPgosClientP2PConnectionType : uint8
| member | value | description |
|---|
| Unspecified | 0 | Unspecified. Will try to connect via p2p first. |
| P2P | 1 | Try to connect via p2p. |
| Relay | 2 | Try to connect via relay. |
EPgosClientNatType
The type of NAT.
enum class EPgosClientNatType : uint8
| member | value | description |
|---|
| Unknown | 0 | |
| Open | 1 | No Nat |
| FullCone | 2 | Full Cone |
| AddressRestrictedCone | 3 | Address restricted cone |
| PortRestrictedCone | 4 | Port restricted cone |
| Symmetric | 5 | Symmetric |
| SymmetricUDPFirewall | 6 | No NAT with UDP firewall |
| UDPBlocked | 7 | |
Structs
FPgosClientBalance
The currency in the player's wallet.
struct FPgosClientBalance
| field | type | description |
|---|
| currency_code | FString | The code of the currency. |
| currency_name | FString | The name of the currency. |
| currency_icon | FString | The uri of the currency. |
| currency_type | EPgosCurrencyType | Currency type. |
| amount | int64 | The balance of the currency. |
| max_deposit | int64 | The maximum balance that a player can hold for this currency. A value of 0 represents no limitation. |
FPgosClientMidasGlobalBalance
struct FPgosClientMidasGlobalBalance : public FPgosClientBalance
parent: FPgosClientBalance
| field | type | description |
|---|
| resource_id | FString | Resource id of a Midas Token, provided by Midas, view on Midas portal. |
| gift_balance | FString | Balance obtained by gift. |
| accumulated_topup_amount | FString | Accumulated topup amount. |
| accumulated_gift_amount | FString | Accumulated gift amount. |
| total_consume | FString | Total consumed amount. |
| first_topup | bool | To show if it is the first topup. |
FPgosClientFasLoginInfo
FAS: The data of the simulated account
struct FPgosClientFasLoginInfo
| field | type | description |
|---|
| open_id | FString | Open id of the fake account |
| token | FString | Token of the fake account |
| user_name | FString | Username of the fake account |
| token_valid_time | int64 | The valid time of the current token |
FPgosClientFasRefreshTokenInfo
The new token after refreshing it
struct FPgosClientFasRefreshTokenInfo
| field | type | description |
|---|
| token | FString | The new token generated after refreshing |
FPgosClientLoginPGOSParams
Request parameters for login PGOS.
struct FPgosClientLoginPGOSParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| account_provider | int32 | Account provider: 0 means FAS, 1 means INTL, 2 means MSDK, 3 means WeGame, 4 means PlayFab, 5 means Steam, 6 means Epic, 7 means XboxLive, 8 means PlayStationNetwork, 9 means Nintendo, 10 means JWT. The default value is -1 (not set), at which point PgosSDK will try to read it from the configuration: account_provider. Using int32 instead of enum type is to make SDK better compatible with the new account provider. More info for account provider: https://pgos.intlgame.com/pgosdoc/manual/service_manual/player_management/player_auth.html#311-login-param |
| account_open_id | FString | Open id of the logged in account service. |
| account_token | FString | Token of the open id. |
| title_region_id | FString | Title region the player wants to login, can be obtained from PGOS portal console. |
| extra_param | TMap<FString, FString> | [Optional] Extra parameter for the account provider, Its value depends on the account provider used to log in. view the manual for detail: https://pgos.intlgame.com/pgosdoc/manual/service_manual/player_management/player_auth.html#31-log-in-pgos. |
FPgosClientLogoutPGOSParams
Request parameters for logout PGOS.
struct FPgosClientLogoutPGOSParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
FPgosClientPlayerBannedEvt
The event will be triggered when the player is banned.
struct FPgosClientPlayerBannedEvt
| field | type | description |
|---|
| ban_reason | FString | Reason for ban. |
| ban_created_time | int64 | Ban creation time. Unix timestamp in seconds. |
| ban_duration | int64 | Ban duration in seconds. |
| ban_expired_time | int64 | Ban expiration time. Unix timestamp in seconds, if the value <= 0, it is considered to be permanently banned. |
FPgosClientAuthBanInfo
Auth ban info.
struct FPgosClientAuthBanInfo : public FPgosClientPlayerBannedEvt
parent: FPgosClientPlayerBannedEvt
| field | type | description |
|---|
| is_banned | bool | Whether the player is banned. |
FPgosClientAuthenticationInfo
The authentication data when the game needs to identify the player and manage the player session status of the players
struct FPgosClientAuthenticationInfo
| field | type | description |
|---|
| player_id | FString | The id of the player |
| session_id | FString | The id of the current authenticated session |
| is_first_login | bool | Whether the player is logging in for the first time |
| is_display_name_modified | bool | Whether the display name of the current player has been modified. The display name is initially an empty string before being modified. |
| account_platform | FString | account platform name, such as: 'Steam', 'Epic', 'PlayStationNetwork'. |
| ban_info | FPgosClientAuthBanInfo | Whether the player is banned |
FPgosClientBatchGetPlayerInfoCltRsp
Response that client batch getting playerInfo.
struct FPgosClientBatchGetPlayerInfoCltRsp
| field | type | description |
|---|
| data | TMap<FString, FPgosPlayerInfo> | Player infos, key: player_id, value: player_info. |
| fail_players | TMap<FString, FString> | Players who totally failed, key: player_id, value: failed reason. |
FPgosClientMatchmakingPlayerInfo
Player who is in the matchmaking process
struct FPgosClientMatchmakingPlayerInfo
| field | type | description |
|---|
| player_id | FString | The player id |
| team | FString | The team of the players |
| match_attributes | TMap<FString, FPgosKVDataValue> | Attributes needed by the Matchmaking Ruleset, map key: attribute name, map value: attribute value. |
FPgosClientRequestedPlayerInfo
Player in current matchmaking request.
struct FPgosClientRequestedPlayerInfo
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Base info of a player. |
| ready | bool | Whether the player has joined matchmaking. |
| region_latencies | TArray<FPgosRegionLatencyInfo> | The latency(ms) of the player in different regions. If the latency of the player exceeds the max latency of Queue, then the player cannot join the battle. |
FPgosClientMatchedPlayerInfo
Player who has already matched
struct FPgosClientMatchedPlayerInfo
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Base info of a player. |
| accepted_status | EPgosAcceptedStatus | Player response to the proposed battle. |
| team | FString | The team of the players |
FPgosClientCancelMatchmakingInfo
Cancel a matchmaking request
struct FPgosClientCancelMatchmakingInfo
| field | type | description |
|---|
| ticket_id | FString | Ticket id for the matchmaking request |
| canceled | bool | Whether the player has canceled the matchmaking request |
| reason | FString | The reason for the cancel action, not necessary |
FPgosClientStartMatchmakingParams
Params to start a matchmaking request.
struct FPgosClientStartMatchmakingParams
| field | type | description |
|---|
| configuration_name | FString | Name of matchmaking configuration |
| player_info_list | TArray<FPgosClientMatchmakingPlayerInfo> | Players who start matchmaking together, and they must be set to the same team. |
| mutex_type | EPgosClientMatchmakingMutexType | Mutex type of matchmaking request. PerMatchmakingConfig as default value. |
FPgosClientStartMatchmakingInfo
Start a matchmaking request
struct FPgosClientStartMatchmakingInfo
| field | type | description |
|---|
| ticket_id | FString | Ticket id for the matchmaking request |
FPgosClientCurrentMatchmakingsInfo
Current activate matchmaking tickets of the player.
struct FPgosClientCurrentMatchmakingsInfo
| field | type | description |
|---|
| tickets_map | TMap<FString, FString> | The mapping of matchmaking configuration to matchmaking ticket. |
FPgosClientPlayerBattleSessionInfo
A player-battle-session is a session between a player and an active battle-session
struct FPgosClientPlayerBattleSessionInfo
| field | type | description |
|---|
| player_id | FString | The player id |
| battle_session_id | FString | The battle session id to query |
| player_battle_session_id | FString | The id of player session in the battle, !!! NOT BATTLE SESSION ID !!! |
| ip_address | FString | The access ip address of the battle session |
| port | int32 | The access port of the battle session |
| status | EPgosClientPlayerBattleSessionStatus | |
| team_name | FString | Team name in a world battle session. |
FPgosClientBattleSessionInfo
A battle session corresponds a running game.
struct FPgosClientBattleSessionInfo
| field | type | description |
|---|
| battle_session_id | FString | The battle session id to query |
| created_time | int64 | The Unix timestamp(in seconds) when the battle session was created. |
| ip_address | FString | The IP address of the DS holding the battle session, and it will be assigned the value when the status is 'Active'. |
| port | int32 | The port of the DS holding the battle session, and it will be assigned the value when the status is 'Active'. |
| status | EPgosClientBattleSessionStatus | Placing the battle session is currently waiting to be placed on game DS Active the battle session has been successfully created, now you can connect to the DS using the IP address and port Terminated the battle session has been terminated Error the battle session error, check status_msg for more information Canceled the battle session is canceled Timeout the battle session timeout Failed the battle session failed, check status_msg for more information |
| status_msg | FString | The message of the battle status |
| last_updated_time | int64 | The Unix timestamp(in seconds) for the last update in the battle status |
| terminated_time | int64 | The Unix timestamp(in seconds) when the player disconnected from game server. |
| placing_timeout | int32 | Timeout for placing status |
| cur_player_battle_session_info | FPgosClientPlayerBattleSessionInfo | Player battle session of current player |
| battle_properties | TArray<FPgosBattleProperty> | K-V pair property of a battle session |
| battle_session_data | FString | Custom string data of a battle session. Preset in matchmaking configuration |
| source_type | EPgosBattleSourceType | What service that the battle session generated from |
| configuration_name | FString | Configuration name of matchmaking, lobby or world service |
| bucket_path | TMap<FString, FString> | Mapping from bucket filter attribute name to attribute value. [for WORLD battle session only] |
| ruleset_name | FString | Ruleset name hit. Filled when battle session source type is BattleSourceType::Matchmaking |
| locked | bool | True if the battle session is locked by game server A battle session generated from world service could be locked/unlocked by calling Lock/UnlockWorldBattleSession. |
| zone | FString | Zone where the battle session placed. |
FPgosClientP2PPlayerBattleSession
A player-battle-session is a session between a player and a activated battle-session.
struct FPgosClientP2PPlayerBattleSession
| field | type | description |
|---|
| battle_session_id | FString | The battle session id. |
| player_battle_session_id | FString | The id of player session in the battle, !!! NOT BATTLE SESSION ID !!! |
| player_id | FString | The player id |
| status | EPgosClientP2PPlayerBattleSessionStatus | |
| created_time | int64 | The Unix timestamp(in seconds) when the battle session was created. |
| terminated_time | int64 | The Unix timestamp(in seconds) when the battle session was terminated. |
FPgosClientP2PBattleSessionBase
A battle session corresponds a running game.
struct FPgosClientP2PBattleSessionBase
| field | type | description |
|---|
| battle_session_id | FString | The battle session id to query |
| host_player_id | FString | Host player of the P2P battle session |
| status | EPgosClientP2PBattleSessionStatus | Battle session status |
| status_msg | FString | The message of the battle status |
| source_type | EPgosBattleSourceType | What service that the battle session generated from |
| configuration_name | FString | Configuration name of matchmaking, lobby or world service |
| ruleset_name | FString | Ruleset name hit. Filled when battle session source type is BattleSourceType::Matchmaking |
| battle_properties | TArray<FPgosBattleProperty> | K-V pair property of a battle session |
| battle_session_data | FString | Custom string data of a battle session. Preset in matchmaking configuration |
| max_players | int32 | Maximum number of players in the battle session If the source of the battle session is Matchmaking, the max_players is calculated from the teams section of ruleset script If the source of the game is Lobby, the max_players is calculated from the teams section of lobby config |
| total_players | int32 | Total number of players in the battle session. Only players with a player battle session status of COMPLETED will be excluded |
| created_time | int64 | The Unix timestamp(in seconds) when the battle session was created. |
| terminated_time | int64 | The Unix timestamp(in seconds) when the player disconnected from game server. |
FPgosClientP2PBattleSession
A battle session corresponds a running game.
struct FPgosClientP2PBattleSession : public FPgosClientP2PBattleSessionBase
parent: FPgosClientP2PBattleSessionBase
FPgosClientMatchmakingProcessInfo
Detailed process of a matchmaking request.
struct FPgosClientMatchmakingProcessInfo
| field | type | description |
|---|
| matchmaking_status | EPgosClientMatchmakingStatus | Starting Matchmaking request is starting. Preparing Waiting for players confirmation for a multi-player matchmaking request. Note: when the MatchmakingObserver receives this status, it requires players to join or reject the mutilplayer matchmaking request. When one of the players start a mutilplayer matchmaking request, the other players will receive the 'Preparing' matchmaking status, and then decide to join or reject the matchmaking request. When everyone has joined, matchmaking start Searching. Searching Search players who fit the ruleset. Accepting Wait for players to accept the result of matchmaking. Placing Placing battle session on game DS. Pending Deprecated since <v0.12.7>. Use Placing instead. Completed The matchmaking request ends with a successful result. Check battle_session_info for detail information about the battle. Note: when the MatchmakingObserver receives this status, you need to connect the DS server via IP and port that could obtain from battle_session_info. Timeout Matchmaking request timeout. Terminated Matchmaking request is terminated. Canceled Matchmaking request is canceled. The request may have been canceled by the player or the matchmaking result has been rejected by the player. Error Matchmaking request error. |
| matchmaking_message | FString | The message of the matchmaking status. |
| last_updated_status_time | int64 | The Unix timestamp(in seconds) for the last update in the matchmaking status. |
| ticket_id | FString | Ticket id for the matchmaking request. |
| configuration_name | FString | The target matchmaking configuration name of current matchmaking request. |
| requested_players | TArray<FPgosClientRequestedPlayerInfo> | Players in current matchmaking request. |
| matched_players | TArray<FPgosClientMatchedPlayerInfo> | Players already matched. |
| matchmaking_creator_id | FString | Originator of the matchmaking request. |
| match_start_time | int64 | The Unix timestamp(in seconds) when the matchmaking started. |
| match_end_time | int64 | The Unix timestamp(in seconds) when the matchmaking ended. |
| estimated_searching_time | int32 | Not used. |
| preparing_timeout | int32 | The maximum time(in seconds) to wait for all request members to accept the request. |
| searching_timeout | int32 | The maximum time(in seconds) to wait for searching matched players. |
| accepting_timeout | int32 | The maximum time(in seconds) to wait for accepting a matched battle |
| placing_timeout | int32 | Timeout(in seconds) for Placing status. |
| concurrent_player_count | int32 | Number of players searching in current match config |
| battle_session_info | FPgosClientBattleSessionInfo | A battle session contains matched players. |
| battle_session_provider | FString | Provider of battle session management: @ PGOS for PGOS battle service @ STANDALONE for self-build battle session management service. @ P2P for battle session hosted by game P2P game client |
| p2p_host_player_id | FString | Host player id for a P2P battle provide by P2P matchmaking. Only be filled when @battle_session_provider is set to P2P. OnStartP2PBattleSession event of P2PBattle module should be handled by the host client to obtain detail information of a P2P battle sesssion. |
| p2p_battle_session_id | FString | P2P Battle sesssion id provide by P2P matchmaking. Only be filled when @battle_session_provider is set to P2P. Battle session activation events will be pushed through OnP2PBattleSessionUpdated events of P2PBattle module. |
FPgosClientGetConcurrentMatchmakingPlayerCountParams
struct FPgosClientGetConcurrentMatchmakingPlayerCountParams
| field | type | description |
|---|
| configuration_name | FString | Matchmaking configuration name. |
FPgosClientGetConcurrentMatchmakingPlayerCountResult
struct FPgosClientGetConcurrentMatchmakingPlayerCountResult
| field | type | description |
|---|
| count | int32 | Players in current matchmaking pool. |
FPgosClientPartyCustomData
Custom data for party.
struct FPgosClientPartyCustomData
| field | type | description |
|---|
| version | int32 | Custom data version, always incremental over the lifetime of the party. |
| global_custom_data | FString | Global custom data. Only Leader has permission to modify it. |
| player_custom_data | TMap<FString, FString> | Player custom data. The map key is party member's player ID, the map value is the party member's custom data. Each party member could modify it's player custom data. |
FPgosClientPartyInfo
Detailed information of a party
struct FPgosClientPartyInfo
| field | type | description |
|---|
| party_id | FString | The party id |
| name | FString | Name of the party |
| leader | FPgosPlayerInfo | Player who is the leader of the party A leader can: Kick out members: a leader can kick out any member at any time. Dismiss the party. Transfer leadership to another member. |
| members | TArray<FPgosPlayerInfo> | Players of the party |
| created_time | int64 | The Unix timestamp(in seconds) when the party was created. |
| max_player | int32 | Max number of players in the party, unlimited if it is 0. |
| custom_data | FPgosClientPartyCustomData | Custom data of the party(including global and player). |
| join_strategy | EPgosClientPartyJoinStrategy | The strategy controls the rules who could join the party. |
| invite_strategy | EPgosClientPartyInviteStrategy | The strategy controls the rules who could invite others to the party. |
FPgosClientSetPartyStrategyParams
The parameters of join/invite strategy used to SetPartyStrategy
struct FPgosClientSetPartyStrategyParams
FPgosClientCreatePartyParams
Request struct for create party
struct FPgosClientCreatePartyParams
| field | type | description |
|---|
| party_name | FString | Optional name of the new party |
| max_player | int32 | The maximum limit on the count of party members, pass 0 if you don't want to limit |
| enable_chatting | bool | If true, the party members can use SendPartyChatTextMsg/SendPartyChatCustomMsg/SetOnReceiveChatMsg |
| join_strategy | EPgosClientPartyJoinStrategy | The strategy controls the rules who could join the party. |
| invite_strategy | EPgosClientPartyInviteStrategy | The strategy controls the rules who could invite others to the party. |
FPgosClientSendPartyChatMsgParams
Request struct for sending party chat message
struct FPgosClientSendPartyChatMsgParams
| field | type | description |
|---|
| content | FString | The message content to be sent |
| custom_data | FString | Additional information added by the game |
FPgosClientBattleDataInfo
Raw battle history data
struct FPgosClientBattleDataInfo
| field | type | description |
|---|
| battle_session_id | FString | The battle session id to query |
| data | TMap<FString, FString> | Battle custom kv data, such as {key1:value1, key2:value2} |
| tags | TArray<FString> | Battle custom tags, you can filter battles by tags, such as [Entertainment] |
| fails | TMap<FString, FString> | A list of failed items in K-V pair data operations |
| battle_created_time | int64 | The Unix timestamp(in seconds) when the battle session was created. |
FPgosClientBattleListInfo
A list of battle history data
struct FPgosClientBattleListInfo
| field | type | description |
|---|
| battle_data_list | TArray<FPgosClientBattleDataInfo> | A list of raw battle history data |
| next_offset | int32 | The next starting position of the list |
FPgosClientBattleBriefInfo
A special battle history data that is preset by PGOS.
struct FPgosClientBattleBriefInfo
| field | type | description |
|---|
| battle_session_id | FString | The battle session id to query |
| brief | FString | Custom battle brief, such as current player's KDA |
| tags | TArray<FString> | Battle custom tags, you can filter battles by tags, such as [Entertainment] |
| battle_created_time | int64 | The Unix timestamp(in seconds) when the battle session was created. |
FPgosClientBattleDetailInfo
A special battle history data that is preset by PGOS.
struct FPgosClientBattleDetailInfo
| field | type | description |
|---|
| battle_session_id | FString | The battle session id to query |
| detail | FString | Custom battle detail, such as the KDA of all players |
| tags | TArray<FString> | Battle custom tags, you can filter battles by tags, such as [Entertainment] |
| battle_created_time | int64 | The Unix timestamp(in seconds) when the battle session was created. |
FPgosClientBattleBriefListInfo
A list of battle brief info
struct FPgosClientBattleBriefListInfo
| field | type | description |
|---|
| battle_data_list | TArray<FPgosClientBattleBriefInfo> | A list of raw battle history data |
| next_offset | int32 | The next starting position of the list |
FPgosClientMentionedPlayer
The mentioned player.
When the value of player_id is '@ALL', it means mentioning all players.
struct FPgosClientMentionedPlayer
| field | type | description |
|---|
| player_id | FString | Unique id of player, When the value of player_id is '@ALL', it means mentioning all players. |
| player_display_name | FString | Player's display name. Populated by the game developer when sending a message. |
FPgosClientChatMsgContent
Instant/Party/Lobby chat message content
struct FPgosClientChatMsgContent
| field | type | description |
|---|
| text_content | FString | Take the value from here when msg type is MsgTypeText |
| custom_content | FString | Take the value from here when msg type is MsgTypeCustom |
FPgosClientChatMsgInfo
Instant/Party/Lobby chat messages
struct FPgosClientChatMsgInfo
| field | type | description |
|---|
| sender | FPgosPlayerInfo | The player who send the message |
| sent_time | int64 | The time the message was sent |
| msg_type | EPgosClientChatMsgType | The type of the message |
| content | FPgosClientChatMsgContent | The message to be sent |
| seq | int64 | The sequence number of the message |
| custom_data | FString | Additional information added by the game |
FPgosClientSendPersonalMsgParams
Request struct for sending personal message
struct FPgosClientSendPersonalMsgParams
| field | type | description |
|---|
| peer_player_id | FString | Peer player's ID |
| content | FString | Content |
| custom_data | FString | Additional information added by the game |
FPgosClientUnreadMsgCountNotifyEvt
Event result of unread message count changed
struct FPgosClientUnreadMsgCountNotifyEvt
| field | type | description |
|---|
| total_unread_count | int32 | Total unread count of personal chat or group chat |
FPgosClientPersonalMsgContent
Personal chat message content
struct FPgosClientPersonalMsgContent
| field | type | description |
|---|
| text_content | FString | Take the value from here when msg type is MsgTypeText |
| custom_content | FString | Take the value from here when msg type is MsgTypeCustom |
FPgosClientPersonalMsgInfo
Personal chat message info
struct FPgosClientPersonalMsgInfo
FPgosClientReceivePersonalMsgEvt
Event result of receive personal chat message
struct FPgosClientReceivePersonalMsgEvt
| field | type | description |
|---|
| msg | FPgosClientPersonalMsgInfo | Personal chat message received |
| unread_count | int32 | Count of unread message from sender |
FPgosClientPersonalChatItem
Personal chat info
struct FPgosClientPersonalChatItem
FPgosClientGetMyPersonalChatListResult
My personal chat list
struct FPgosClientGetMyPersonalChatListResult
FPgosClientGetPersonalChatMsgListResult
Result of get personal chat message list
struct FPgosClientGetPersonalChatMsgListResult
| field | type | description |
|---|
| msg_list | TArray<FPgosClientPersonalMsgInfo> | Chat message info list |
| already_read_seq | int64 | Messages with seq less than or equal to this have already been read |
| has_more | bool | Whether has more message |
| next_seq | int64 | The starting sequence for the next query |
FPgosClientGetGmeTicketResult
struct FPgosClientGetGmeTicketResult
| field | type | description |
|---|
| gme_ticket | FString | Result of the gme ticket request, which is base64 encoded |
| voice_app_id | FString | Indicates the gme app id registed on portal |
| gme_type | FString | Service provider: aws, tcloud_chinese_mainland, tcloud_intl, etc. |
FPgosClientJoinInstantChatResult
The result of players joining instant chat
struct FPgosClientJoinInstantChatResult
| field | type | description |
|---|
| chat_channel_id | FString | The chat channel |
FPgosClientReceiveInstantChatMsgEvt
Event result of receive instant chat message
struct FPgosClientReceiveInstantChatMsgEvt
| field | type | description |
|---|
| chat_channel_id | FString | ID of chat channel where the message was received |
| chat_msg_info | FPgosClientChatMsgInfo | Instant chat message received |
FPgosClientInstantChatMemberJoinedEvt
Event result of member joined instant chat
struct FPgosClientInstantChatMemberJoinedEvt
| field | type | description |
|---|
| chat_channel_id | FString | Instant chat channel the player joined |
| added_members | TArray<FPgosPlayerInfo> | Players added to the instant chat |
FPgosClientInstantChatMemberLeftEvt
Event result of member left instant chat
struct FPgosClientInstantChatMemberLeftEvt
| field | type | description |
|---|
| chat_channel_id | FString | Instant chat channel the player left |
| left_members | TArray<FPgosPlayerInfo> | Players left from the channel |
FPgosClientGetInstantChatMembersResult
All the players in the channel
struct FPgosClientGetInstantChatMembersResult
| field | type | description |
|---|
| all_members | TArray<FPgosPlayerInfo> | All the players in the channel |
FPgosClientSendInstantChatMsgParams
Request struct for sending instant chat message
struct FPgosClientSendInstantChatMsgParams
| field | type | description |
|---|
| chat_channel_id | FString | The chat channel ID |
| content | FString | The message content to be sent |
| custom_data | FString | Additional information added by the game |
FPgosClientGetInstantChatMemberIDsResult
All player IDs in a channel
struct FPgosClientGetInstantChatMemberIDsResult
| field | type | description |
|---|
| all_member_ids | TArray<FString> | All the players in the channel |
FPgosClientGetInstantChatMemberCountResult
The num of players in a channel
struct FPgosClientGetInstantChatMemberCountResult
| field | type | description |
|---|
| all_member_count | int32 | The num of players in a channel |
FPgosClientLobbyPlayer
Player in lobby
struct FPgosClientLobbyPlayer
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Base info of a player. |
| team_name | FString | Current team of the player. Team name is pre-set in lobby configuration |
| team_slot | int32 | Slot index of the player. Starting value is 1 |
| source | EPgosClientLobbyJoiningSource | The source of the player join the lobby |
| ready | bool | Ready flag of the player |
FPgosClientLobbyTeam
Team struct of current lobby
struct FPgosClientLobbyTeam
| field | type | description |
|---|
| name | FString | Team name is pre-set in lobby configuration |
| capacity | int32 | Capacity of the team |
| players | TMap<FString, FPgosClientLobbyPlayer> | A map from team slot(in string format) to LobbyPlayer for all players in the team. |
| group | FString | The group to which the team belongs |
| start_battle_condition | EPgosClientLobbyStartBattleCondition | The action when the lobby owner invokes the StartBattle interface depends on the Ready flag of lobby members. |
FPgosClientLobbyBriefInfo
Brief information of a lobby
struct FPgosClientLobbyBriefInfo
| field | type | description |
|---|
| lobby_id | FString | A unique lobby ID which was displayed on the game client. |
| lobby_owner | FPgosClientLobbyPlayer | The name of the lobby owner. |
| name | FString | The name of the lobby. |
| status | EPgosClientLobbyStatus | The current lobby status. |
| privacy | EPgosClientLobbyPrivacy | Lobby privacy type: Dummy, Invisible, or Invisible |
| protection | EPgosClientLobbyProtection | Lobby protection type: Dummy, PasswordNeeded, PasswordUnNeeded |
| player_count | int32 | The number of players in the lobby |
| player_limit | int32 | Sum of capacities of all teams |
| kv_data | TMap<FString, FString> | Global kv data of the lobby. Only owner has the permission to modify it. |
| player_kv_data | TMap<FString, FString> | Player custom data of each lobby member. The map key is lobby member's player ID, the map value is the lobby member's custom data. Each lobby member could modify it's player kv data. |
| game_mode | FString | The game mode of the lobby. Each game mode can be configured with a placer on the portal |
FPgosClientLobbyDetailInfo
Detailed information of a lobby
struct FPgosClientLobbyDetailInfo : public FPgosClientLobbyBriefInfo
parent: FPgosClientLobbyBriefInfo
| field | type | description |
|---|
| status_reason | EPgosClientLobbyStatusReason | The reason that the lobby status changes. |
| password | FString | Password needed to join the lobby |
| teams | TArray<FPgosClientLobbyTeam> | The team struct of current lobby. |
| lobby_config | FString | Lobby configuration name of current lobby |
| chat_channel_id | FString | An unique chat channel ID for the lobby's chat channel; empty if enable_chatting was set to false when the lobby was created. |
| battle_session_id | FString | The battle session that started from the lobby |
| preparing_timeout | int32 | The maximum time to wait for all request members to accept the request |
| placing_timeout | int32 | The maximum time to wait for placing the battle session |
| battle_session_provider | FString | Provider of battle session management service. PGOS for PGOS battle service, STANDALONE for self-build battle session management service. |
FPgosClientCreateLobbyParams
The information needed to create the lobby.
struct FPgosClientCreateLobbyParams
| field | type | description |
|---|
| lobby_config | FString | Lobby configuration name of current lobby |
| name | FString | The name of the lobby. |
| privacy | EPgosClientLobbyPrivacy | Lobby privacy type: Dummy, Invisible, or Invisible |
| password | FString | Password needed to join the lobby |
| enable_chatting | bool | If true, the lobby members can use SendLobbyChatTextMsg/SendLobbyChatCustomMsg/SetOnReceiveLobbyChatMsg |
| kv_data | TMap<FString, FString> | Lobby global data. Each key-value pair is a string. Special note: When using this parameter to filter room instances (such as in the SearchLobby/QuickJoin interfaces), PGOS supports parsing special string values as lists to enable more complex set-based filtering operations. The string value formats that can be parsed as lists include: [a, b, c] / ["a", "b", "c"] (where the double quotes will be automatically stripped). |
| protection | EPgosClientLobbyProtection | Optional, the lobby protection policy. |
| game_mode | FString | Optional, the game mode of the lobby. After starting the battle, the placer corresponding to the game mode on the portal will be used. If this game mode does not have a placer configured, the default placer configured on the portal will be used. |
FPgosClientEditLobbyInfoParams
The lobby information that needs to be updated. These data will overwrite the previous data.
struct FPgosClientEditLobbyInfoParams
| field | type | description |
|---|
| name | FString | The name of the lobby. |
| privacy | EPgosClientLobbyPrivacy | Lobby privacy type: Dummy, Invisible, or Invisible |
| password | FString | Password needed to join the lobby |
| kv_data | TMap<FString, FString> | Deprecated since <v0.33.2>, use SetSetLobbyGlobalData instead |
| protection | EPgosClientLobbyProtection | The lobby protection policy. |
| game_mode | FString | the game mode of the lobby. After starting the battle, the placer corresponding to the game mode on the portal will be used. If this game mode does not have a placer configured, the default placer configured on the portal will be used. |
FPgosClientJoinLobbyParams
The information needed when join the lobby
struct FPgosClientJoinLobbyParams
| field | type | description |
|---|
| lobby_id | FString | The lobby id to join |
| password | FString | The lobby password. If the lobby is not encrypted, it doesn't need to be filled. |
| join_token | FString | It is from the event of 'OnLobbyInvitation' if the player is invited to join a lobby, Otherwise it doesn't need to be filled. |
| payload | FString | Join request payload will be passed to the lobby owner in OnLobbyJoinRequest event for a lobby with LobbyProtection::ApplicationNeeded. |
FPgosClientJoinLobbyWithGroupsParams
The information needed when join the lobby
struct FPgosClientJoinLobbyWithGroupsParams : public FPgosClientJoinLobbyParams
parent: FPgosClientJoinLobbyParams
| field | type | description |
|---|
| selected_groups | TMap<FString, int32> | Try to join the specified groups in the lobby according to the specified priority value from small to large. key: group, value: priority.(priority cannot be less than 0) |
FPgosClientJoinLobbyWithTeamsParams
The information needed when join the lobby
struct FPgosClientJoinLobbyWithTeamsParams : public FPgosClientJoinLobbyParams
parent: FPgosClientJoinLobbyParams
| field | type | description |
|---|
| selected_teams | TMap<FString, int32> | Try to join the specified teams in the lobby according to the specified priority value from small to large. key: team name, value: priority.(priority cannot be less than 0) |
FPgosClientSearchLobbyDataFilter
Lobby data search filter
struct FPgosClientSearchLobbyDataFilter
| field | type | description |
|---|
| equal_values | TArray<FString> | [Only for single string value] List all values that meet the filtering data. This field does not take effect when 'treat_as_list_value' is true. |
| not_equal_values | TArray<FString> | [Only for single string value] List all values that do not meet the filtering data. This field does not take effect when 'treat_as_list_value' is true. |
| set_is_subset_values | TArray<FString> | [Only for list value] Target data list value is subset of giving list. This field does not take effect when 'treat_as_list_value' is false. |
| set_intersection_values | TArray<FString> | [Only for list value] The intersection between the target list and the given list is not empty. This field does not take effect when 'treat_as_list_value' is false. |
| treat_as_list_value | bool | Whether to treat the target value in lobby_data as a list value, defaulting to false. |
FPgosClientSearchLobbyParams
The optional filter information when searching the lobby list.
struct FPgosClientSearchLobbyParams
| field | type | description |
|---|
| lobby_id | FString | Optional, search for the specified lobby by id. It can search for the lobby of 'Invisible' |
| lobby_config | FString | Optional, search for the lobby of the specified config, such as 'lobby 1v1' |
| status | EPgosClientLobbyStatus | Optional, search for the lobby in the specific state |
| protection | EPgosClientLobbyProtection | Optional, for example, only search for the lobby without password |
| offset | int32 | The starting position of the search |
| count | int32 | The search count |
| order_by | EPgosClientLobbyOrderBy | Search order |
| order_type | EPgosClientLobbyOrderType | Order direction |
| lobby_data | TMap<FString, FPgosClientSearchLobbyDataFilter> | Filter by global kv data of the lobby. The map key is lobby data key, and the map value is lobby data filter. |
FPgosClientSearchLobbyResult
The result of the search lobby request
struct FPgosClientSearchLobbyResult
| field | type | description |
|---|
| lobbies | TArray<FPgosClientLobbyBriefInfo> | A list of lobbies filtered by our search. If these data are not filled (lobby_id, lobby_config, status, protection), all existing lobbies will be returned. |
| total_matched_lobbies_count | int64 | The total number of lobbies filtered by the search |
FPgosClientQuickJoinLobbyParams
struct FPgosClientQuickJoinLobbyParams
| field | type | description |
|---|
| lobby_config | FString | Required, lobby configuration name. |
| lobby_data | TMap<FString, FPgosClientSearchLobbyDataFilter> | Optional, filter by global kv data of the lobby. The map key is lobby data key, and the map value is lobby data filter. |
| selected_groups | TMap<FString, int32> | Optional, selected_groups will be used when PGOS place the player into lobby instance. Try to join the specified groups in the lobby according to the specified priority value from small to large. key: group, value: priority.(priority cannot be less than 0) |
| selected_teams | TMap<FString, int32> | Optional, selected_teams will be used when PGOS place the player into lobby instance. Try to join the specified teams in the lobby according to the specified priority value from small to large. key: team name, value: priority.(priority cannot be less than 0) |
FPgosClientSendLobbyChatMsgParams
Request struct for sending lobby chat message
struct FPgosClientSendLobbyChatMsgParams
| field | type | description |
|---|
| content | FString | The message content to be sent |
| custom_data | FString | Additional information added by the game |
Request struct for set friend remark.
struct FPgosClientSetFriendRemarkParams
| field | type | description |
|---|
| player_id | FString | Player's ID |
| remark | FString | remark to the friend |
FPgosClientAddFriendParams
Request struct for add friend.
struct FPgosClientAddFriendParams
| field | type | description |
|---|
| player_id | FString | The player id to add |
| message | FString | Request message |
FPgosClientBatchAddFriendParams
Request struct for batch add friend.
struct FPgosClientBatchAddFriendParams
| field | type | description |
|---|
| player_ids | TArray<FString> | The player ids to add |
| message | FString | Request message |
FPgosClientFriendReqInfo
The friend request details.
struct FPgosClientFriendReqInfo
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Basic player information such as display name and avatar. |
| message | FString | The request message sent from the player who wants to add you as a friend. |
| created_time | int64 | The Unix timestamp(in seconds) when the request was created. |
FPgosClientBatchAddFriendRsp
Response that add batch friends.
struct FPgosClientBatchAddFriendRsp
| field | type | description |
|---|
| fail_players | TMap<FString, FString> | Players who totally failed, key: player_id, value: failed reason. |
FPgosClientFriendReqListInfo
The list of friend requests.
struct FPgosClientFriendReqListInfo
FPgosClientGetMyFriendsLimitResult
Response to get my friends limit.
struct FPgosClientGetMyFriendsLimitResult
| field | type | description |
|---|
| friends_limit | int32 | The maximum limit of friends you can have. |
FPgosClientBatchAccountIDToPlayerIDResult
The result of batch account ids to player ids.
struct FPgosClientBatchAccountIDToPlayerIDResult
| field | type | description |
|---|
| data | TMap<FString, FString> | Result of successful conversion, key: account id, value: player id. |
| fails | TMap<FString, FString> | Partial failure result, key: account id, value: failed reason. |
FPgosClientBlocklistInfo
My blocklist details
struct FPgosClientBlocklistInfo
| field | type | description |
|---|
| player_info_list | TArray<FPgosPlayerInfo> | Players in my blocklist |
All blocklist's player IDs
struct FPgosClientSyncAccountPlatformBlocklistResult
| field | type | description |
|---|
| all_blocklist | TArray<FString> | All players in blocklist |
FPgosClientPlayerPresence
The player's current status information which is set by game, such as in party , in lobby, in battle.
struct FPgosClientPlayerPresence
| field | type | description |
|---|
| status | EPgosClientOnlineStatus | Online status is provided by PGOS Server. It has two values: online and offline. |
| presence | FString | The player's current status information which is set by game, such as in party , in lobby, in battle. |
FPgosClientBatchGetPlayerPresenceRsp
Response of querying multiple players' presence
struct FPgosClientBatchGetPlayerPresenceRsp
| field | type | description |
|---|
| player_presences | TMap<FString, FPgosClientPlayerPresence> | Presences of the players, key: player_id, value: the player's presence. |
| fail_players | TMap<FString, FString> | Players who totally failed, key: player_id, value: failed reason. |
FPgosClientPlayerFriendInfo
Details of a player's friend
struct FPgosClientPlayerFriendInfo
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Basic player information such as display name and avatar. |
| player_presence | FPgosClientPlayerPresence | The player's current status information which is set by game, such as in party , in lobby, in battle. |
| remark | FString | remark to the player, for example, "Tommy, a humorous man, met in the battle." |
FPgosClientPlayerSearchInfo
Details of player search
struct FPgosClientPlayerSearchInfo
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Basic player information such as display name and avatar. |
| player_presence | FPgosClientPlayerPresence | The player's current status information which is set by game, such as in party , in lobby, in battle. |
| remark | FString | The remark of the player |
| is_friend | bool | Whether the searched player is a friend |
| is_blocked | bool | Whether the searched player is placed in the blocked list |
FPgosClientFriendListInfo
Friend list details
struct FPgosClientFriendListInfo
FPgosClientPlayerSearchInfoList
A list of player search details
struct FPgosClientPlayerSearchInfoList
Players of external platform such as Steam
struct FPgosClientPlatformPlayerInfo
| field | type | description |
|---|
| account_open_id | FString | Account openIDs of external platform such as Steam. |
| player_info | FPgosPlayerInfo | Basic player information such as display name and avatar. |
| player_presence | FPgosClientPlayerPresence | The player's current status information which is set by game, such as in party , in lobby, in battle. |
| remark | FString | The remark of the player |
| is_friend | bool | Whether the searched player is a friend |
| is_blocked | bool | Whether the searched player is placed in the blocked list |
A map of players of external platform such as Steam.
struct FPgosClientPlatformPlayerInfoMap
| field | type | description |
|---|
| transform_item_map | TMap<FString, FPgosClientPlatformPlayerInfo> | A map of players of external platform such as Steam. Key: player's open_id, Value: PlatformPlayerInfo |
FPgosClientAcceptFriendRequestResult
Result of accept friend request.
struct FPgosClientAcceptFriendRequestResult
FPgosClientSearchPlayerFilter
Filter param for search player.
struct FPgosClientSearchPlayerFilter
| field | type | description |
|---|
| os | TArray<EPgosClientOS> | OS filter. Currently supports passing in at most one OS. Empty means no filtering based on OS. |
FPgosClientSearchPlayersParams
Request struct for search players
struct FPgosClientSearchPlayersParams
| field | type | description |
|---|
| search_key | FString | Key words to for searching, now only supports searching based on player id and player name. Search results are paged back. |
| offset | int32 | Index of the first data in all search results. |
| count | int32 | Maximum count of results returned in one page, the maximum value of 'count' is 50 |
FPgosClientSearchPlayersWithFilterParams
Request struct for search players with filter
struct FPgosClientSearchPlayersWithFilterParams
| field | type | description |
|---|
| search_key | FString | Key words to for searching, now only supports searching based on player id and player name. Search results are paged back. |
| search_filter | FPgosClientSearchPlayerFilter | Filter by OS etc.. |
| offset | int32 | Index of the first data in all search results. |
| count | int32 | Maximum count of results returned in one page, the maximum value of 'count' is 50 |
FPgosClientUniqueItemDeduction
Price deduction for unique items in the store item configured on the portal.
struct FPgosClientUniqueItemDeduction
| field | type | description |
|---|
| item_id | FString | The id of the unique item. |
| deduction_price | int32 | The deduction price of the unique item configured on the portal. |
| is_deducted | bool | True means that the player owns the unique item and a deduction occurred when purchasing the store item. |
FPgosClientCompensationCurrency
Currency compensation.
struct FPgosClientCompensationCurrency
| field | type | description |
|---|
| currency_code | FString | The code of the currency. |
| amount | int32 | The amount of the currency. |
FPgosClientUniqueItemCompensation
Compensation for unique items in the store item configured on the portal. This used when pay_platform is MidasGlobal
struct FPgosClientUniqueItemCompensation
FPgosClientStoreItemPrice
The price of a store item.
struct FPgosClientStoreItemPrice
| field | type | description |
|---|
| currency_code | FString | The code of the currency. |
| currency_name | FString | The name of the currency. |
| currency_icon | FString | The uri of the currency. |
| price | int32 | The actual price used to purchase the store item with the currency. selling_price deducts the deduction_price where is_deducted is true in unique_item_deductions. |
| selling_price | int32 | Selling price in the store, defined in the store item of the portal. When creating a store item on the portal, you can directly use the price defined in the in-game item (default_price), at this time selling_price is equal to default_price, or you can use custom selling price. |
| original_price | int32 | Deprecated since <v0.25.0>. Use selling_price instead. |
| default_price | int32 | The price of in-game item. defined in the in-game item of the portal. |
| unique_item_deductions | TMap<FString, FPgosClientUniqueItemDeduction> | Price deduction for unique items in the store item configured on the portal. Key: unique item id. |
FPgosClientItemPrice
The currency code and price used to purchase the item
struct FPgosClientItemPrice
| field | type | description |
|---|
| currency_code | FString | The code of the currency. |
| price | int32 | The actual price used to purchase the store item with the currency. |
FPgosClientGetBalancesResult
struct FPgosClientGetBalancesResult
FPgosClientStoreItemPurchaseLimit
Purchase amount limit of store item.
struct FPgosClientStoreItemPurchaseLimit
| field | type | description |
|---|
| max_purchase_amount | int32 | The maximum amount limit that players can purchase for this store item. 0 means no limit. |
| purchased_amount | int32 | When max_purchase_amount is greater than 0, record the amount that the player has purchased. Please note that when the category period is switched, its value will be recalculated. |
FPgosClientStoreItem
struct FPgosClientStoreItem
| field | type | description |
|---|
| pay_platform | FString | Pay platform name, such as: 'Pgos', 'MidasGlobal', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h @ Pgos, make a virtual currency payment to PGOS to purchase this item. @ MidasGlobal, make a cash payment through Midas to purchase this item. |
| store_item_id | FString | The id of the store item. |
| status | EPgosClientStoreItemStatus | Store item status: Dummy / Available / Owned / ExceedLimit. |
| prices | TArray<FPgosClientStoreItemPrice> | The currency to purchase the store item, it may be multiple. |
| item | FPgosInGameItem | The in-game item related to the store item. |
| tags | TMap<FString, FString> | The tags of store item Fill in the tags of item on the portal. |
| purchase_limit | FPgosClientStoreItemPurchaseLimit | Purchase amount limit of store item. |
| compensations | TMap<FString, FPgosClientUniqueItemCompensation> | The compensation for unique items in the store item configured on the portal when pay_platform is MidasGlobal. Key: unique item id. |
FPgosClientStoreCategoryBrief
The brief information of the store category.
struct FPgosClientStoreCategoryBrief
| field | type | description |
|---|
| category_id | FString | The id of the category. |
| name | FString | The name of the category. |
| description | FString | The description of the category. |
| tags | TMap<FString, FString> | The custom tags of the category. |
| type | EPgosClientStoreCategoryType | The type of the category. |
| published_start_time | int64 | The Unix timestamp (in seconds) for the start time of the currently active period. It is always 0 under the simple type. |
| published_end_time | int64 | The Unix timestamp (in seconds) for the end time of the currently active period. It is always 0 under the simple type. |
FPgosClientStoreCategory
The information of the store category.
struct FPgosClientStoreCategory : public FPgosClientStoreCategoryBrief
parent: FPgosClientStoreCategoryBrief
FPgosClientStore
| field | type | description |
|---|
| store_id | FString | The id of the store. |
| display_name | FString | The name of the store. |
| description | FString | The description of the store. |
| tags | TMap<FString, FString> | The custom tags of the store. |
| categories | TArray<FPgosClientStoreCategory> | The category list of the the store, each category has a store item list. |
| item_dict | FPgosItemDict | In-game item defines that may be referenced in the 'item_content', and you can use 'ItemDict::FindItem' to search. |
| platform_item_mapping | TMap<FString, FString> | The mapping relationship between PGOS in-game items and 3rd-party platform items configured on the PGOS portal. key: PGOS in-game item id, value: 3rd-party platform item id. |
FPgosClientStoreBrief
The brief information of the store.
struct FPgosClientStoreBrief
| field | type | description |
|---|
| store_id | FString | The id of the store. |
| display_name | FString | The name of the store. |
| description | FString | The description of the store. |
| tags | TMap<FString, FString> | The custom tags of the store. |
| category_briefs | TArray<FPgosClientStoreCategoryBrief> | The category brief list of the the store. |
FPgosClientGetStoreBriefsParams
struct FPgosClientGetStoreBriefsParams
| field | type | description |
|---|
| store_ids | TArray<FString> | List of store IDs to be queried. |
FPgosClientGetStoreBriefsResult
struct FPgosClientGetStoreBriefsResult
| field | type | description |
|---|
| store_briefs | TMap<FString, FPgosClientStoreBrief> | List of store brief information queried. |
FPgosClientGetStoreParams
struct FPgosClientGetStoreParams
| field | type | description |
|---|
| store_id | FString | The specified store id. |
| pay_platform | FString | [Optional] Pay platform name, such as: 'Steam', 'Xbox', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h After specifying the pay platform, the result will bring the platform_item_mapping of the corresponding platform configured on the portal. |
struct FPgosClientGetStoreWithPlatformParams : public FPgosClientGetStoreParams
parent: FPgosClientGetStoreParams
FPgosClientGetStoreCategoriesParams
struct FPgosClientGetStoreCategoriesParams
| field | type | description |
|---|
| store_id | FString | The specified store id. |
| category_ids | TArray<FString> | List of category IDs to be queried. |
| pay_platform | FString | [Optional] Pay platform name, such as: 'Steam', 'Xbox', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h After specifying the pay platform, the result will bring the platform_item_mapping of the corresponding platform configured on the portal. |
FPgosClientGetStoreCategoriesResult
struct FPgosClientGetStoreCategoriesResult
| field | type | description |
|---|
| categories | TArray<FPgosClientStoreCategory> | The specified categories that have been queried. |
| fails | TMap<FString, FString> | Categories that failed to query, key: player id, value: failed reason. |
| item_dict | FPgosItemDict | In-game item defines that may be referenced in the 'item_content', and you can use 'ItemDict::FindItem' to search. |
| store_id | FString | The id of the store. |
| display_name | FString | The name of the store. |
| description | FString | The description of the store. |
| tags | TMap<FString, FString> | The custom tags of the store. |
| platform_item_mapping | TMap<FString, FString> | The mapping relationship between PGOS in-game items and 3rd-party platform items configured on the PGOS portal. key: PGOS in-game item id, value: 3rd-party platform item id. |
FPgosClientInstanceOperationResult
struct FPgosClientInstanceOperationResult
| field | type | description |
|---|
| instance_id | FString | The instance id of this operation. |
| left_amount | int32 | The number of instance remaining after this operation. |
FPgosClientConsumeInstanceParams
Request struct for consume instance.
struct FPgosClientConsumeInstanceParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| instance_id | FString | The item instance id. |
| idempotency_token | FString | [Optional] Used to ensure the idempotence of the function. Idempotence means that regardless of how many times the function is called, the result remains the same. By passing a unique idempotency_token, it ensures that the function does not produce duplicate side effects or results when called repeatedly. Note: To avoid generating the same idempotency_token as other players, it is recommended to concatenate it with the player's own player ID. |
FPgosClientConsumeInstanceResult
struct FPgosClientConsumeInstanceResult : public FPgosClientInstanceOperationResult
parent: FPgosClientInstanceOperationResult
| field | type | description |
|---|
| custom_err_code | int32 | The error code returned by the virtual server bound to the consumer action. |
| custom_err_msg | FString | The error msg returned by the virtual server bound to the consumer action. |
| func_result | FString | The json string returned by the virtual server bound to the consumer action. |
| replayed | bool | Whether the request is replayed. When it is True, it indicates that the result of the function is obtained by replaying with the same idempotency_token. This means that the result of the function has been generated in a previous call and is being reused in the current call. |
FPgosClientOpenContainerInstanceParams
Request struct for open container instance.
struct FPgosClientOpenContainerInstanceParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| instance_id | FString | The container instance id. |
FPgosClientOpenContainerResult
struct FPgosClientOpenContainerResult : public FPgosClientInstanceOperationResult
parent: FPgosClientInstanceOperationResult
| field | type | description |
|---|
| item_insts | FPgosItemInstPack | The item instances obtained after opening the container. |
| currencies | TArray<FPgosCurrency> | The currencies obtained after opening the container. |
| conflict_unique_items | TArray<FPgosConflictUniqueItem> | Unique items that already in inventory cause failed to be synchronized. |
FPgosClientRevokeInstanceParams
Request struct for revoke instance.
struct FPgosClientRevokeInstanceParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| instance_id | FString | The item instance id. |
struct FPgosClientSetInstanceTagsParams
| field | type | description |
|---|
| instance_id | FString | The item instance id. |
| update_data | TMap<FString, FString> | Update the data of the specified keys in the tags. If the key does not exist, it indicates inserting new data. |
| delete_keys | TArray<FString> | Delete the data of specified keys in the tags. The key from update_data cannot be included. |
struct FPgosClientSetInstanceTagsResult
| field | type | description |
|---|
| tags | TMap<FString, FString> | Latest tags of item instance. |
FPgosClientCreateStoreOrderParams
Request struct for create order.
struct FPgosClientCreateStoreOrderParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| store_id | FString | The store id of this store item. |
| store_item_id | FString | The store item id. |
| amount | int32 | The amount of store item will be purchased. |
| price | FPgosClientItemPrice | The currency code and actual price to purchase the item, it must be one of the prices of this store item. |
FPgosClientCreateStoreOrderResult
struct FPgosClientCreateStoreOrderResult
| field | type | description |
|---|
| order_id | FString | Order ID required for purchase. |
FPgosClientCommitStoreOrderParams
Request struct for commit order.
struct FPgosClientCommitStoreOrderParams
| field | type | description |
|---|
| order_id | FString | The previously created order ID. |
FPgosClientCommitStoreOrderResult
struct FPgosClientCommitStoreOrderResult
| field | type | description |
|---|
| spent_currency_code | FString | The code of currency that has been spent to purchase the store item. |
| spent_currency_amount | int32 | The amount of currency that has been spent to purchase the store item. |
| item_insts | FPgosItemInstPack | The item instances obtained after purchase. |
| currencies | TArray<FPgosCurrency> | The currencies obtained after purchase. |
| status | EPgosClientStoreOrderStatus | Order status. |
| failed_currencies | TMap<FString, FString> | Currencies that failed to grant. Mapping from currency code to failure reason. |
FPgosClientQueryStoreOrderParams
struct FPgosClientQueryStoreOrderParams
| field | type | description |
|---|
| order_id | FString | The previously created order ID. |
FPgosClientQueryStoreOrderResult
struct FPgosClientQueryStoreOrderResult : public FPgosClientCommitStoreOrderResult
parent: FPgosClientCommitStoreOrderResult
struct FPgosClientCheckBeforePlatformPurchaseParams
| field | type | description |
|---|
| item_id | FString | The PGOS in-game item id corresponding to the item id of the 3rd-party platform to be purchased. |
| amount | int32 | The amount of item will be purchased. |
| pay_platform | FString | Pay platform name, such as: 'Steam', 'EpicGames', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h |
Request struct for sync player inventory from 3rd-party platform.
struct FPgosClientSyncPlayerPlatformInventoryParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| pay_platform | FString | Pay platform name, such as: 'Steam', 'EpicGames', etc. You can use macros starting with 'PAY_PLATFORM' in pgos_common_define.h |
struct FPgosClientSyncPlayerPlatformInventoryResult
| field | type | description |
|---|
| item_insts | FPgosItemInstPack | The item instances obtained after synchronized. |
| currencies | TArray<FPgosCurrency> | The currencies obtained after synchronized. |
| conflict_unique_items | TArray<FPgosConflictUniqueItem> | Unique items that already in inventory cause failed to be synchronized. |
FPgosClientSyncSteamPlayerInventoryParams
Request struct for sync player inventory from Steam platform.
struct FPgosClientSyncSteamPlayerInventoryParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
FPgosClientSyncSteamPurchaseParams
Request struct for sync item instance from Steam.
struct FPgosClientSyncSteamPurchaseParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| steam_item_inst_id | uint64 | Steam item instance id. |
FPgosClientSyncSteamPurchaseResult
struct FPgosClientSyncSteamPurchaseResult : public FPgosClientSyncPlayerPlatformInventoryResult
parent: FPgosClientSyncPlayerPlatformInventoryResult
FPgosClientSyncXboxPlayerInventoryParams
Request struct for sync player inventory from Xbox platform.
struct FPgosClientSyncXboxPlayerInventoryParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| xbox_xsts_token | FString | Xbox XSTS token. |
FPgosClientSyncXboxPurchaseParams
Request struct for sync item instance from Xbox.
struct FPgosClientSyncXboxPurchaseParams : public FPgosBaseBackendEventParams
parent: FPgosBaseBackendEventParams
| field | type | description |
|---|
| xbox_product_id | FString | Xbox product id. Also referred to as the Store ID for the product within the Microsoft Store catalog. |
| xbox_xsts_token | FString | Xbox XSTS token. |
FPgosClientSyncXboxPurchaseResult
struct FPgosClientSyncXboxPurchaseResult : public FPgosClientSyncPlayerPlatformInventoryResult
parent: FPgosClientSyncPlayerPlatformInventoryResult
FPgosClientInventoryGrantedEvt
struct FPgosClientInventoryGrantedEvt
| field | type | description |
|---|
| item_insts | FPgosItemInstPack | The item instances granted. |
| src_type | FString | Source type of granted. For example, "Store", "Midas", "Portal", "Client", "DS", "VS", "System", "Mail" etc. |
FPgosClientCurrencyChange
struct FPgosClientCurrencyChange
| field | type | description |
|---|
| currency_code | FString | The code of currency that has been changed. |
| before_value | int64 | The amount of changed currency before this change. |
| after_value | int64 | The amount of changed currency after this change. |
FPgosClientBalanceUpdatedEvt
struct FPgosClientBalanceUpdatedEvt
| field | type | description |
|---|
| currencies | TArray<FPgosClientCurrencyChange> | The details of changed currencies. |
| reason | FString | The reason caused the currencies changes. Usually will be 'Deduct' or 'Grant' |
FPgosClientVirtualServerEvt
struct FPgosClientVirtualServerEvt
| field | type | description |
|---|
| json_str | FString | The message is in json format. |
FPgosClientAddFriendRequestEvt
struct FPgosClientAddFriendRequestEvt
FPgosClientAddFriendResponseEvt
struct FPgosClientAddFriendResponseEvt
FPgosClientFriendRemovedEvt
struct FPgosClientFriendRemovedEvt
FPgosClientBadgeNumOfFriendReqEvt
struct FPgosClientBadgeNumOfFriendReqEvt
| field | type | description |
|---|
| badge_num | int32 | The badge number of outstanding friend requests. |
FPgosClientFriendPresenceChangedEvt
struct FPgosClientFriendPresenceChangedEvt
| field | type | description |
|---|
| player_id | FString | The friend whose presence changed. |
| player_presence | FPgosClientPlayerPresence | Friend's new presence. |
FPgosClientLobbyMemberJoinedEvt
struct FPgosClientLobbyMemberJoinedEvt
| field | type | description |
|---|
| joined_player | FPgosClientLobbyPlayer | The player who newly joined the lobby. |
| lobby_id | FString | Lobby id. |
FPgosClientLobbyMemberLeftEvt
struct FPgosClientLobbyMemberLeftEvt
| field | type | description |
|---|
| left_player | FPgosClientLobbyPlayer | The player who left the lobby. |
| is_kick_out | bool | Was the player kicked out by lobby owner. |
| lobby_id | FString | Lobby id. |
FPgosClientLobbyTeamUpdatedEvt
struct FPgosClientLobbyTeamUpdatedEvt
| field | type | description |
|---|
| lobby_players | TArray<FPgosClientLobbyPlayer> | The players who update ready flag or change team slot. |
| lobby_id | FString | Lobby id. |
FPgosClientLobbyInvitationEvt
struct FPgosClientLobbyInvitationEvt
| field | type | description |
|---|
| lobby_detail | FPgosClientLobbyDetailInfo | The updated lobby details. |
| inviter | FPgosClientLobbyPlayer | The player who sent the invitation. |
| join_token | FString | If the invited player wants to join the lobby, this value of 'join_token' needs to be filled to the 'join_token' of 'JoinLobby'. |
FPgosClientLobbyOwnerTransferredEvt
struct FPgosClientLobbyOwnerTransferredEvt
FPgosClientLobbyInfoUpdatedEvt
struct FPgosClientLobbyInfoUpdatedEvt
FPgosClientLobbyDataUpdatedEvt
struct FPgosClientLobbyDataUpdatedEvt
FPgosClientLobbyStatusChangedEvt
struct FPgosClientLobbyStatusChangedEvt
| field | type | description |
|---|
| status | EPgosClientLobbyStatus | The current lobby status. |
| battle_session_id | FString | The battle session that started from the lobby |
| battle_session_provider | FString | Provider of battle session management service. PGOS for PGOS battle service, STANDALONE for self-build battle session management service. |
| lobby_id | FString | Lobby id. |
FPgosClientBattleSessionUpdatedEvt
struct FPgosClientBattleSessionUpdatedEvt
FPgosClientReceiveLobbyChatMsgEvt
struct FPgosClientReceiveLobbyChatMsgEvt
FPgosClientLobbySwitchTeamSlotRequestEvt
struct FPgosClientLobbySwitchTeamSlotRequestEvt
| field | type | description |
|---|
| from_player_info | FPgosClientLobbyPlayer | Lobby player who send the switch request. |
| request_id | FString | Team slot switch request id. |
| lobby_id | FString | Lobby id. |
FPgosClientLobbySwitchTeamSlotRequestConfirmedEvt
struct FPgosClientLobbySwitchTeamSlotRequestConfirmedEvt
| field | type | description |
|---|
| from_player_info | FPgosClientLobbyPlayer | Lobby player who confirm the switch request. |
| request_id | FString | Team slot switch request id. |
| lobby_id | FString | Lobby id. |
FPgosClientLobbySwitchTeamSlotRequestRejectedEvt
struct FPgosClientLobbySwitchTeamSlotRequestRejectedEvt
| field | type | description |
|---|
| from_player_info | FPgosClientLobbyPlayer | Lobby player who reject the switch request. |
| request_id | FString | Team slot switch request id. |
| lobby_id | FString | Lobby id. |
FPgosClientPartyStrategyChangedEvt
struct FPgosClientPartyStrategyChangedEvt
FPgosClientPartyMemberJoinedEvt
struct FPgosClientPartyMemberJoinedEvt
| field | type | description |
|---|
| party_id | FString | The party id. |
| joined_member | FPgosPlayerInfo | The player who newly joined the party. |
FPgosClientPartyMemberLeftEvt
struct FPgosClientPartyMemberLeftEvt
| field | type | description |
|---|
| party_id | FString | The party id. |
| left_player | FPgosPlayerInfo | The player who left the party. |
| kicked | bool | Was the player kicked out by party leader. |
FPgosClientPartyDismissedEvt
struct FPgosClientPartyDismissedEvt
| field | type | description |
|---|
| party_id | FString | The party id that was dismissed. |
FPgosClientPartyLeaderTransferredEvt
struct FPgosClientPartyLeaderTransferredEvt
| field | type | description |
|---|
| party_id | FString | The party id. |
| new_leader | FPgosPlayerInfo | The player who transferred to new leader. |
FPgosClientReceivePartyInvitationEvt
struct FPgosClientReceivePartyInvitationEvt
| field | type | description |
|---|
| party_id | FString | The party id. |
| inviter | FPgosPlayerInfo | The player who sent the invitation. |
FPgosClientReceivePartyChatMsgEvt
struct FPgosClientReceivePartyChatMsgEvt
FPgosClientPartyCustomDataChangedEvt
struct FPgosClientPartyCustomDataChangedEvt
FPgosClientPartyInfoUpdatedEvt
struct FPgosClientPartyInfoUpdatedEvt
FPgosClientMatchmakingProcessChangedEvt
struct FPgosClientMatchmakingProcessChangedEvt
FPgosClientPlayerSessionChangedEvt
struct FPgosClientPlayerSessionChangedEvt
| field | type | description |
|---|
| evt | EPgosPlayerSessionEvt | The triggered event id, view event enum for detail. |
| session_id | FString | The id of the current player session |
| msg | FString | Message for the triggered event. |
FPgosClientGroupInfo
Group info could be access by players both in or not in the group.
struct FPgosClientGroupInfo
| field | type | description |
|---|
| group_id | FString | The group id. |
| name | FString | The group name. |
| icon | FString | Uri of the group. |
| description | FString | The description of the group. |
| tags | TArray<FString> | Custom tags of the group. |
| owner_info | FPgosPlayerInfo | The player info of group owner. |
| member_count | int32 | Current member count of the group. |
| max_members | int32 | Max member count of the group. |
| is_official | bool | Is it a official group. |
| created_time | int64 | The Unix timestamp(in seconds) when the group was created. |
| join_rule | EPgosClientGroupJoinRule | The rules for players to join the group. |
| global_custom_data | TMap<FString, FString> | Group global custom data. Can be modified by the group owner or administrators. |
FPgosClientGroupDetail
Group detail could be access only by players in the group.
struct FPgosClientGroupDetail : public FPgosClientGroupInfo
parent: FPgosClientGroupInfo
| field | type | description |
|---|
| announcement | FString | Announcement of the group. |
| is_public | bool | Could or couldn't be seen by player not in the group. |
FPgosClientGroupMember
struct FPgosClientGroupMember
| field | type | description |
|---|
| player_info | FPgosPlayerInfo | Base info of the player. |
| nickname | FString | Nick name of a group member. |
| remark | FString | Remark of a group member. Remark can only be modified by group owner and group admin. |
| player_presence | FPgosClientPlayerPresence | Player presence info. |
| is_owner | bool | True if the member is group owner. |
| is_admin | bool | True if the member is group admin. |
| joined_time | int64 | The Unix timestamp(in seconds) when the member joined. |
| custom_data | FString | The custom data for group member. Could be Can be modified by the player or administrator. |
FPgosClientMutedGroupMember
struct FPgosClientMutedGroupMember
| field | type | description |
|---|
| player_id | FString | Player's ID. |
| display_name | FString | Player's display name. |
| group_nickname | FString | Nickname in the group. |
| remark | FString | Remark of a group member. Remark can only be modified by group owner and group admin. |
| operator_id | FString | Id of the operator. |
| operator_display_name | FString | Display name of the operator. |
| mute_created_time | int64 | The Unix timestamp(in seconds) when the mute is created. |
| mute_expired_time | int64 | The Unix timestamp(in seconds) when the mute is expired, 0 means mute forever. |
| joined_time | int64 | The Unix timestamp(in seconds) when the member joined. |
FPgosClientGroupMemberBrief
struct FPgosClientGroupMemberBrief
| field | type | description |
|---|
| player_id | FString | Player's ID. |
| display_name | FString | Player's display name. |
| group_nickname | FString | Nickname of a group member. |
FPgosClientGroupInvitation
struct FPgosClientGroupInvitation
| field | type | description |
|---|
| inviter_info | FPgosPlayerInfo | Base info of the player. |
| id | FString | Invitation id. |
| msg | FString | Invitation message. Set by the inviter. |
| group_info | FPgosClientGroupInfo | Base info of the group. |
| created_time | int64 | The Unix timestamp(in seconds) when the invitation was created. |
| expired_time | int64 | The Unix timestamp(in seconds) when the invitation's expired. |
FPgosClientGroupInvitationEvt
struct FPgosClientGroupInvitationEvt
FPgosClientRemovedFromGroupEvt
struct FPgosClientRemovedFromGroupEvt
| field | type | description |
|---|
| group_id | FString | The group from which the player was removed. |
FPgosClientMutedInGroupEvt
struct FPgosClientMutedInGroupEvt
| field | type | description |
|---|
| group_id | FString | The group in which the player is muted. |
| operator_id | FString | Id of the operator. |
| operator_display_name | FString | Display name of the operator. |
| mute_created_time | int64 | The Unix timestamp(in seconds) when the mute is created. |
| mute_expired_time | int64 | The Unix timestamp(in seconds) when the mute is expired, 0 means mute forever. |
FPgosClientUnmutedInGroupEvt
struct FPgosClientUnmutedInGroupEvt
| field | type | description |
|---|
| group_id | FString | The group in which the player is unmuted. |
| operator_id | FString | Id of the operator. |
| operator_display_name | FString | Display name of the operator. |
FPgosClientGroupDismissedEvt
struct FPgosClientGroupDismissedEvt
| field | type | description |
|---|
| group_id | FString | The group id. |
| dismiss_reason | FString | Reason for group dismissed. |
FPgosClientBadgeNumOfGroupInvitationEvt
struct FPgosClientBadgeNumOfGroupInvitationEvt
| field | type | description |
|---|
| badge_num | int32 | The badge number of group invitation. |
FPgosClientGroupDetailChangedEvt
struct FPgosClientGroupDetailChangedEvt
FPgosClientGroupGlobalCustomDataChangedEvt
struct FPgosClientGroupGlobalCustomDataChangedEvt
| field | type | description |
|---|
| group_id | FString | Group id. |
| global_custom_data | TMap<FString, FString> | Updated group global custom data. |
FPgosClientGroupPlayerCustomDataChangedEvt
struct FPgosClientGroupPlayerCustomDataChangedEvt
| field | type | description |
|---|
| group_id | FString | Group id. |
| player_custom_data | TMap<FString, FString> | Updated custom data for each player. |
FPgosClientCreateGroupParams
struct FPgosClientCreateGroupParams
| field | type | description |
|---|
| name | FString | The group name. |
| icon | FString | Uri of the group. |
| description | FString | The description of the group. |
| tags | TArray<FString> | Custom tags of the group. |
| join_rule | EPgosClientGroupJoinRule | The rules for players to join the group. |
| is_public | bool | Could or couldn't be seen by player not in the group. |
FPgosClientSetGroupNameParams
struct FPgosClientSetGroupNameParams
| field | type | description |
|---|
| group_id | FString | Group ID. |
| group_name | FString | Group name. |
FPgosClientSetGroupDescParams
struct FPgosClientSetGroupDescParams
| field | type | description |
|---|
| group_id | FString | |
| group_description | FString | |
FPgosClientSetGroupAnnouncementParams
struct FPgosClientSetGroupAnnouncementParams
| field | type | description |
|---|
| group_id | FString | |
| group_announcement | FString | |
struct FPgosClientSetGroupTagsParams
| field | type | description |
|---|
| group_id | FString | |
| tags | TArray<FString> | |
FPgosClientSetMyGroupNicknameParams
struct FPgosClientSetMyGroupNicknameParams
| field | type | description |
|---|
| group_id | FString | |
| nickname | FString | |
struct FPgosClientSetGroupMemberRemarkParams
| field | type | description |
|---|
| group_id | FString | |
| player_id | FString | |
| remark | FString | |
struct FPgosClientBatchSetGroupMemberRemarkParams
| field | type | description |
|---|
| group_id | FString | |
| player_ids | TArray<FString> | |
| remark | FString | |
FPgosClientInvitePlayersToGroupParams
struct FPgosClientInvitePlayersToGroupParams
| field | type | description |
|---|
| group_id | FString | |
| invite_msg | FString | |
| player_ids | TArray<FString> | |
FPgosClientCreateGroupRsp
struct FPgosClientCreateGroupRsp
| field | type | description |
|---|
| group_detail | FPgosClientGroupDetail | |
| is_profane | bool | Whether the updated data contains profanity words. |
FPgosClientSearchGroupParams
struct FPgosClientSearchGroupParams
FPgosClientSearchGroupRsp
struct FPgosClientSearchGroupRsp
| field | type | description |
|---|
| group_list | TArray<FPgosClientGroupInfo> | List of groups. |
| total_num | int32 | The total number of groups that meet the filters. |
| next_offset | int32 | The next starting position of the list. |
FPgosClientGetGroupDiscoveryListParams
struct FPgosClientGetGroupDiscoveryListParams
| field | type | description |
|---|
| owner_os | TArray<EPgosClientOS> | Only obtain groups where the group owner's OS is the specified OS. Currently supports passing in at most one OS. Empty means no filtering based on OS. |
| recommend_count | int32 | Get the number of recommended groups additionally, cannot exceed 50. Recommended groups can be configured on the portal. |
| offset | int32 | The starting position of the list. |
| count | int32 | The query count, cannot exceed 50. |
FPgosClientGetGroupDiscoveryListResult
struct FPgosClientGetGroupDiscoveryListResult
| field | type | description |
|---|
| recommend_group_list | TArray<FPgosClientGroupInfo> | Additional recommended groups. |
| group_list | TArray<FPgosClientGroupInfo> | List of groups. |
| next_offset | int32 | The next starting position of the list. |
| total_num | int32 | The total number of group discoveries. |
FPgosClientInvitePlayersToGroupRsp
Response that invite players to a group.
struct FPgosClientInvitePlayersToGroupRsp
| field | type | description |
|---|
| group_id | FString | Players that failed to invite, key: player id, value: failed reason. |
| invitation_map | TMap<FString, FString> | Players that success to invite, key: player id, value: invitation_id. |
| fails | TMap<FString, FString> | Players that failed to invite, key: player id, value: failed reason. |
FPgosClientBatchGetGroupInfoRsp
struct FPgosClientBatchGetGroupInfoRsp
| field | type | description |
|---|
| group_info_list | TArray<FPgosClientGroupInfo> | The group info list. |
| fails | TMap<FString, FString> | Groups that failed to query, key: group id, value: failed reason. |
FPgosClientBatchGetGroupDetailRsp
struct FPgosClientBatchGetGroupDetailRsp
| field | type | description |
|---|
| group_detail_list | TArray<FPgosClientGroupDetail> | The group detail data list. |
| fails | TMap<FString, FString> | Groups that failed to query, key: group id, value: failed reason. |
FPgosClientGetGroupMembersRsp
struct FPgosClientGetGroupMembersRsp
| field | type | description |
|---|
| group_members | TMap<FString, FPgosClientGroupMember> | Group members, key: player id, value: group member information. |
| muted_members | TMap<FString, FPgosClientMutedGroupMember> | Muted group members, key: player id, value: muted member information. |
FPgosClientGetGroupMemberRsp
struct FPgosClientGetGroupMemberRsp
| field | type | description |
|---|
| is_member | bool | Whether the player is a member of a group. |
| member_info | FPgosClientGroupMember | Group member information. |
FPgosClientAcceptGroupInvitationRsp
struct FPgosClientAcceptGroupInvitationRsp
| field | type | description |
|---|
| group_detail | FPgosClientGroupDetail | The group detail data. |
| badge_num | int32 | The badge number of outstanding group invitations. |
FPgosClientRejectGroupInvitationRsp
struct FPgosClientRejectGroupInvitationRsp
| field | type | description |
|---|
| badge_num | int32 | The badge number of outstanding group invitations. |
FPgosClientUpdateGroupRsp
struct FPgosClientUpdateGroupRsp
| field | type | description |
|---|
| group_detail | FPgosClientGroupDetail | The updated group detail. |
| is_profane | bool | Whether the updated data contains profanity words. |
FPgosClientPrivacySettingInfo
The privacy settings of player, the initial default values of the setting items can be set on the PGOS portal.
struct FPgosClientPrivacySettingInfo
| field | type | description |
|---|
| allow_searched_by_others | bool | Whether allow being searched by other players, true: allowed, false: not allowed. |
| allow_friend_request | bool | Whether allow receiving other players' add-friend requests, true: allow, false: not allow. |
| allow_nonfriend_perschat | bool | Whether allow non-friend players to have a personal chat with you, true: allow, false: not allow. |
| allow_group_invitation | bool | Whether allow other players to invite you to join a group, true: allow, false: not allow. |
| chat_strategy | EPgosClientPrivacyChatStrategy | Text and voice chat privacy settings. |
FPgosClientTssAccountInfo
Account information for user input check. For the meaning of each field, see the TSS documentation.
struct FPgosClientTssAccountInfo
| field | type | description |
|---|
| account | FString | See the TSS documentation for the meaning of the field. |
| account_type | int32 | See the TSS documentation for the meaning of the field. |
| area_id | int32 | See the TSS documentation for the meaning of the field. |
| plat_id | int32 | See the TSS documentation for the meaning of the field. |
| world_id | int32 | See the TSS documentation for the meaning of the field. |
| role_id | FString | See the TSS documentation for the meaning of the field. |
| role_name | FString | See the TSS documentation for the meaning of the field. |
| role_pic_url | FString | See the TSS documentation for the meaning of the field. |
| role_level | int32 | See the TSS documentation for the meaning of the field. |
| user_sign | FString | See the TSS documentation for the meaning of the field. |
| user_desc | FString | See the TSS documentation for the meaning of the field. |
FPgosClientTssHandledIn
Contextual information of the API.
struct FPgosClientTssHandledIn
| field | type | description |
|---|
| scene_name | FString | Scene name defined by PGOS. |
| module | FString | Module name where the API is located. |
| func_name | FString | Name of the API. |
| func_params | FString | Request parameters of the API. |
FPgosClientTssHandledOut
TSS information that needs to be returned.
struct FPgosClientTssHandledOut
| field | type | description |
|---|
| scene_id | int32 | See the TSS documentation for the meaning of the field. |
| account_info | FPgosClientTssAccountInfo | See the TSS documentation for the meaning of the field. |
| extra | FString | See the TSS documentation for the meaning of the field. |
FPgosClientSendGroupMsgParams
Request struct for sending group message
struct FPgosClientSendGroupMsgParams
| field | type | description |
|---|
| group_id | FString | Group ID |
| content | FString | Content, content length cannot exceed 1024 characters |
| custom_data | FString | Additional information added by the game, content size cannot exceed 8KB in a narrow-character string, if it is a wide-character string, it should be converted to a utf-8 narrow-character string before calculating its length. |
| mentioned_players | TArray<FPgosClientMentionedPlayer> | The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players. |
FPgosClientGroupNameChangedEvt
Event result of group name changed
struct FPgosClientGroupNameChangedEvt
| field | type | description |
|---|
| operator_info | FPgosClientGroupMemberBrief | The person who modified the group information |
| group_name | FString | New group name |
FPgosClientGroupDescChangedEvt
Event result of group description change
struct FPgosClientGroupDescChangedEvt
| field | type | description |
|---|
| operator_info | FPgosClientGroupMemberBrief | The person who modified the group information |
| group_desc | FString | New group description |
FPgosClientGroupMemberJoinedEvt
Event result of new member of the group
struct FPgosClientGroupMemberJoinedEvt
FPgosClientGroupMemberLeftEvt
Event result of member left the group
struct FPgosClientGroupMemberLeftEvt
FPgosClientGroupMemberRemovedEvt
Event result of member removed from group
struct FPgosClientGroupMemberRemovedEvt
FPgosClientGroupAnnouncementChangedEvt
Event result of group description change
struct FPgosClientGroupAnnouncementChangedEvt
| field | type | description |
|---|
| operator_info | FPgosClientGroupMemberBrief | The person who modified the group information |
| announcement | FString | New announcement |
FPgosClientGroupOwnerChangedEvt
Event result of group owner change
struct FPgosClientGroupOwnerChangedEvt
FPgosClientGroupAdminGrantedEvt
Event result of group admin granted
struct FPgosClientGroupAdminGrantedEvt
FPgosClientGroupAdminRevokedEvt
Event result of group admin revoked
struct FPgosClientGroupAdminRevokedEvt
FPgosClientGroupMsgEventContent
Group chat event message content
struct FPgosClientGroupMsgEventContent
FPgosClientGroupMsgContent
Group chat message content
struct FPgosClientGroupMsgContent
| field | type | description |
|---|
| text_content | FString | Take the value from here when msg type is MsgTypeText |
| event_content | FPgosClientGroupMsgEventContent | Take the value from here when msg type is MsgTypeEvent |
| custom_content | FString | Take the value from here when msg type is MsgTypeCustom |
FPgosClientGroupMsgInfo
Group chat message info
struct FPgosClientGroupMsgInfo
| field | type | description |
|---|
| sender | FPgosClientGroupMember | The member who sent the message |
| sent_time | int64 | The time the message was sent |
| msg_type | EPgosClientChatMsgType | The type of the message |
| content | FPgosClientGroupMsgContent | The message to be sent |
| seq | int64 | The sequence number of the message |
| custom_data | FString | Additional information added by the game |
| mentioned_players | TArray<FPgosClientMentionedPlayer> | The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players. |
FPgosClientGroupBrief
Group brief information
struct FPgosClientGroupBrief
| field | type | description |
|---|
| group_id | FString | Unique id of group |
| name | FString | Group name |
| icon | FString | Group icon |
| global_custom_data | TMap<FString, FString> | Group global custom data. Can be modified by the group owner or administrators. |
FPgosClientGroupItem
Group item
struct FPgosClientGroupItem
FPgosClientGetMyGroupListResult
My group list
struct FPgosClientGetMyGroupListResult
FPgosClientGetGroupChatMsgListResult
Result of get group chat message list
struct FPgosClientGetGroupChatMsgListResult
| field | type | description |
|---|
| msg_list | TArray<FPgosClientGroupMsgInfo> | Chat message info list |
| already_read_seq | int64 | Messages with seq less than or equal to this have already been read |
| has_more | bool | Whether has more message |
| next_seq | int64 | The starting sequence for the next query |
FPgosClientReceiveGroupMsgEvt
Event result of receive group chat message
struct FPgosClientReceiveGroupMsgEvt
FPgosClientSendGroupMsgResult
Result of send a group message
struct FPgosClientSendGroupMsgResult
FPgosClientGroupMentionedInfo
Result of get group mentioned record.
struct FPgosClientGroupMentionedInfo
FPgosClientGroupNewMentionedEvt
Event result of new mentioned.
struct FPgosClientGroupNewMentionedEvt
FPgosClientGetMailListParams
Request parameters for get mail list.
struct FPgosClientGetMailListParams
| field | type | description |
|---|
| category | EPgosClientMailCategory | Query the specified category. |
| offset | int32 | The starting position of the list. |
| count | int32 | The query count. |
FPgosClientUnclaimedItem
In-game Item not claimed.
struct FPgosClientUnclaimedItem
| field | type | description |
|---|
| item | FPgosInGameItem | Economy item. |
| amount | int32 | The amount of item. |
FPgosClientMailAttachmentInfo
Mail attachment information.
struct FPgosClientMailAttachmentInfo
| field | type | description |
|---|
| items | TArray<FPgosClientUnclaimedItem> | Items waiting to be claimed. |
| currencies | TArray<FPgosCurrency> | Currencies waiting to be claimed. |
| is_gift_from_player | bool | Is it a gift from the player. |
| giver | FPgosPlayerInfo | If 'is_gift_from_player' is true, 'giver' represents the player who gave the gift. |
| is_claimed | bool | Is it claimed. |
FPgosClientMailInfo
Mail information.
struct FPgosClientMailInfo
| field | type | description |
|---|
| mail_id | FString | Mail ID. |
| title | FString | Mail title. |
| category | EPgosClientMailCategory | Mail category. |
| content | FString | Mail content. |
| attachment | FPgosClientMailAttachmentInfo | Mail attachment. |
| custom_data | FString | Custom data for mail. |
| sent_time | int64 | The time the mail was sent. |
| is_read | bool | Whether the mail is marked as read. |
FPgosClientGetMailListResult
Result of get mail list.
struct FPgosClientGetMailListResult
| field | type | description |
|---|
| mail_list | TArray<FPgosClientMailInfo> | Mail info list. |
| has_more | bool | Has more. |
| next_offset | int32 | The next starting position of the list. |
| total_num | int32 | The total number of mails in the specified category. When the query category is 'All', it indicates the total number of mails in all categories. |
FPgosClientClaimMailAttachmentResult
Result of claim mail attachment.
struct FPgosClientClaimMailAttachmentResult
| field | type | description |
|---|
| item_insts | FPgosItemInstPack | The item instances obtained after claim attachments. |
| currencies | TArray<FPgosCurrency> | The currencies obtained after claim attachments. |
| conflict_unique_items | TArray<FPgosClientUnclaimedItem> | Unique items that already in inventory cause failed to be granted. |
| fails | TMap<FString, FString> | Mails that failed to claim attachments, key: mail ID, value: failed reason. |
FPgosClientGetMailBadgeNumResult
Result of get mail badge number.
struct FPgosClientGetMailBadgeNumResult
| field | type | description |
|---|
| category_badge_num | TMap<EPgosClientMailCategory, int32> | Mail unread count by category. |
| total_badge_num | int32 | Total unread count. |
FPgosClientBadgeNumOfMailEvt
Event result of badge num of mail.
struct FPgosClientBadgeNumOfMailEvt
| field | type | description |
|---|
| total_badge_num | int32 | Total unread count. |
FPgosClientReceiveNewMailEvt
Event result of receive new mail.
struct FPgosClientReceiveNewMailEvt
FPgosClientRelationshipInfo
Information of the relationship with other players.
struct FPgosClientRelationshipInfo
| field | type | description |
|---|
| is_blocked | bool | Whether the player is blocked |
| is_friend | bool | Whether the player is in friend list |
| friend_remark | FString | Friend remark. Only valid if the player is in friend_list |
| befriend_time | int64 | The time when the player became friend, in seconds. Only valid if the player is in friend_list |
FPgosClientGetPlayerProfileResult
Result of get player profile
struct FPgosClientGetPlayerProfileResult
FPgosClientPublicChatSystemContent
Public chat system message content.
struct FPgosClientPublicChatSystemContent
| field | type | description |
|---|
| msg | FString | System message content. |
| duration_sec | int32 | Indicates how long a system message will expire. The players will receive the system messages that were sent before they join, as long as the message doesn't expire. |
FPgosClientPublicChatMsgContent
Public chat message content
struct FPgosClientPublicChatMsgContent
| field | type | description |
|---|
| text_content | FString | Take the value from here when msg type is MsgTypeText. |
| system_content | FPgosClientPublicChatSystemContent | Take the value from here when msg type is MsgTypeSystem. |
| custom_content | FString | Take the value from here when msg type is MsgTypeCustom. |
FPgosClientPublicChatMsgInfo
Public chat message info.
struct FPgosClientPublicChatMsgInfo
| field | type | description |
|---|
| msg_type | EPgosClientChatMsgType | The type of the message. |
| content | FPgosClientPublicChatMsgContent | The message to be sent. |
| sender | FPgosPlayerInfo | The player who sent the message. |
| sent_time | int64 | The time the message was sent. |
| seq | int64 | The sequence number of the message |
| custom_data | FString | Custom data for message. |
| mentioned_players | TArray<FPgosClientMentionedPlayer> | The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players. |
FPgosClientPublicChatChannelInfo
The channel info of public chat
struct FPgosClientPublicChatChannelInfo
| field | type | description |
|---|
| channel_name | FString | Channel name. |
FPgosClientJoinPublicChatResult
Result of join public chat.
struct FPgosClientJoinPublicChatResult
FPgosClientSendPublicChatMsgParams
Request parameters for sending public chat message.
struct FPgosClientSendPublicChatMsgParams
| field | type | description |
|---|
| channel_name | FString | The name of the channel on which the message was sent. |
| content | FString | The content of the message to be sent. |
| custom_data | FString | Custom data for message. |
| mentioned_players | TArray<FPgosClientMentionedPlayer> | The mentioned player list. The mentioned players will receive the corresponding events. When the value of player_id is '@ALL', it means mentioning all players. |
FPgosClientSendPublicChatMsgResult
Result of send public chat message.
struct FPgosClientSendPublicChatMsgResult
FPgosClientReceivePublicChatMsgEvt
Event result of receive public chat message.
struct FPgosClientReceivePublicChatMsgEvt
FPgosClientPublicChatMentionedInfo
Result of get public chat mentioned record.
struct FPgosClientPublicChatMentionedInfo
FPgosClientPublicChatNewMentionedEvt
Event result of new mentioned.
struct FPgosClientPublicChatNewMentionedEvt
FPgosClientGoalRewardItem
In-game item as goal rewards.
struct FPgosClientGoalRewardItem
| field | type | description |
|---|
| item | FPgosInGameItem | In-game item. |
| amount | int32 | Amount of the item. |
FPgosClientPlayerGoalPass
Pass for rewards in a hyper goal.
struct FPgosClientPlayerGoalPass
| field | type | description |
|---|
| pass_id | FString | The identifier of the pass. |
| name | FString | Name of the pass. |
| description | FString | Description of the pass. |
| icon | FString | Icon records the resource address of the pass icon shown to players. |
| is_activated | bool | Whether the pass is activated for the player. |
FPgosClientGoalReward
The reward that will available to players when a goal or a tier is reached.
struct FPgosClientGoalReward
| field | type | description |
|---|
| reward_id | FString | The identifier of the reward. |
| pass_id | FString | The access pass's id for the reward. |
| is_claimed | bool | True if the reward is claimed by the player. |
| claimed_time | int64 | Unix timestamp that the reward is claimed. |
| items | TArray<FPgosClientGoalRewardItem> | The in-game items in this reward |
| currencies | TArray<FPgosCurrency> | The currencies in this reward |
FPgosClientPlayerGoalTier
struct FPgosClientPlayerGoalTier
| field | type | description |
|---|
| tier_id | FString | The identifier of the tier. |
| name | FString | Name of the tier. |
| order | int32 | Order of the tier. |
| achieve_value | int32 | The value of achieve data of a player to achieve the tier. |
| is_achieved | bool | True if the tier is achieved by the player. |
| achieved_time | int64 | Unix timestamp that the reward is claimed. |
| tier_rewards | TArray<FPgosClientGoalReward> | Rewards of the tier. |
FPgosClientGoalBaseInfo
struct FPgosClientGoalBaseInfo
| field | type | description |
|---|
| player_goal_id | FString | Id of the player goal. The player goal id will be different when the goal appears in different available periods. |
| goal_id | FString | The identifier of the goal. |
| type | EPgosClientGoalType | Type of the goal. |
| name | FString | Name of the goal. |
| description | FString | Description of the goal. |
| icon | FString | Icon records the resource address of the goal icon shown to players. |
| tags | TArray<FString> | Tag strings of the goal. |
FPgosClientSimpleGoal
struct FPgosClientSimpleGoal : public FPgosClientGoalBaseInfo
parent: FPgosClientGoalBaseInfo
| field | type | description |
|---|
| achieve_value | int32 | The value of achieve data of a player to achieve the simple goal. |
| current_value | int32 | The current value of the achieve data. |
| is_achieved | bool | True if the simple goal is achieved by the player. |
| achieved_time | int64 | Unix timestamp that the reward is claimed. |
| reward | FPgosClientGoalReward | The reward players can get if they achieve the goal. |
FPgosClientHyperGoal
struct FPgosClientHyperGoal : public FPgosClientGoalBaseInfo
parent: FPgosClientGoalBaseInfo
| field | type | description |
|---|
| passes | TArray<FPgosClientPlayerGoalPass> | Passes of the hyper goal. |
| tiers | TArray<FPgosClientPlayerGoalTier> | Tiers of the hyper goal. |
| current_tier_id | FString | The tier that the player is challenging now. When the Algorithm Type is Absolute, current value is the same as the value of player's achieve data. When the Algorithm Type is Increment, current value is the incremental value obtained by the player achieve data in the current tier. |
| current_value | int32 | The current value of the achieve data of the hyper goal. |
FPgosClientAvailablePeriod
Available period info.
struct FPgosClientAvailablePeriod
| field | type | description |
|---|
| period_id | FString | Period id. |
| player_goal_ids | TArray<FString> | Player goal ids within the available period. |
| simple_goals | TMap<FString, FPgosClientSimpleGoal> | Mapping of player goal id to simple player goal. |
| hyper_goals | TMap<FString, FPgosClientHyperGoal> | Mapping of player goal id to hyper player goal. |
| start_time | int64 | Start Unix timestamp of the period. |
| end_time | int64 | End Unix timestamp of the period. |
| length | int64 | Length of the available period. Counting in second. |
FPgosClientGoalsSchedule
Goal schedule info.
struct FPgosClientGoalsSchedule
| field | type | description |
|---|
| schedule_id | FString | The identifier of a goals schedule. |
| name | FString | Name of a goals schedule. |
| description | FString | Description of a goals schedule. |
| status | EPgosClientScheduleStatus | Status of a goals schedule. |
| periods | TMap<FString, FPgosClientAvailablePeriod> | Available periods of the schedule. For current period, a fully AvailablePeriod structure will be returned. For next period, only the time schedule of of the period will be returned. |
| current_period_id | FString | The nearest available period to the current time, which is already active. |
| next_period_id | FString | The nearest available period to the current time that is not yet active. |
| reward_way | EPgosClientGoalRewardWay | The reward way of the goals within the goals schedule. |
FPgosClientGetGoalTiersResult
struct FPgosClientGetGoalTiersResult
FPgosClientClaimGoalsRewardResult
Result of claim goal rewards.
struct FPgosClientClaimGoalsRewardResult
| field | type | description |
|---|
| item_insts | FPgosItemInstPack | The item instances obtained after claim attachments. |
| currencies | TArray<FPgosCurrency> | The currencies obtained after claim attachments. |
| conflict_unique_items | TArray<FPgosClientUnclaimedItem> | Unique items that already in inventory that failed to be granted. |
FPgosClientSimpleGoalAchievedEvt
The event will be triggered when a simple goal achieved.
struct FPgosClientSimpleGoalAchievedEvt
FPgosClientHyperGoalAchievedEvt
The event will be triggered when some tiers of a hyper goal achieved.
struct FPgosClientHyperGoalAchievedEvt
| field | type | description |
|---|
| achieved_goal | FPgosClientHyperGoal | |
| achieved_tiers_ids | TArray<FString> | The tier id that has been achieved. |
FPgosClientTitleRegionClosedEvt
The event will be triggered when the title region is closed.
After the title region is closed, players can no longer access new logins, new matchmaking, or new battle session placements.
struct FPgosClientTitleRegionClosedEvt
| field | type | description |
|---|
| current_time | int64 | The current Unix timestamp of the backend server. (in seconds) |
| kicked_offline_time | int64 | The approximate Unix timestamp at which the player will be kicked offline. (in seconds) If the value is 0, the PGOS backend will kick the player offline soon. If the value is -1, the PGOS backend will still allow the current player to remain online, and battle sessions the player is in will not be affected. |
FPgosClientEventChannelStatusChangedEvt
The event will be triggered when the event channel status has been changed.
The Event Channel serves as a data pipeline for the PGOS backend to send event notifications (e.g., chat_messages/friend_requests) to the client.
Its status can be influenced by factors such as API calls (e.g., login/logout) and fluctuations in the network environment.
In certain scenarios, the event helps the game/player understand the possible reasons for PGOS/game service degradation.
struct FPgosClientEventChannelStatusChangedEvt
| field | type | description |
|---|
| current_status | EClientPgosEventChannelStatus | Indicate the current status of the event channel. |
| last_status | EClientPgosEventChannelStatus | Indicate the status of the event channel in the previous StatusChanged event. If there is no previous event (meaning it is the first event), its value is set to 'Dummy'. |
FPgosClientDescribeBattleSessionsResult
struct FPgosClientDescribeBattleSessionsResult
FPgosClientDSHostingLatencies
The latencies from the client to the DS hosting data centers.
struct FPgosClientDSHostingLatencies
| field | type | description |
|---|
| latencies | TMap<FString, int32> | The latencies from the client to the DS hosting data centers. Key: The data center name and its possible values can be viewed in the 'DataCenterName' definition. Value: The latency to the data center, in milliseconds. |
FPgosClientGameCustomMsgEvt
The event will be triggered when the game calls the HTTP API 'PushMsg'.
struct FPgosClientGameCustomMsgEvt
| field | type | description |
|---|
| msg_type | FString | Corresponds to the 'msg_type' parameter of the HTTP API 'PushMsg'. |
| msg | FString | Corresponds to the 'msg' parameter of the HTTP API 'PushMsg'. |
FPgosClientCycleInfo
Information of cycle which configured on the portal.
struct FPgosClientCycleInfo
| field | type | description |
|---|
| cycle_name | FString | Cycle name. |
| cycle_start_time | int64 | Start time of the cycle. Unix time in second. |
| cycle_end_time | int64 | End time of the cycle. Unix time in second. |
| lock_time_span | int32 | Lock time span of this cycle. After setting, the period before the end of each round will be locked, and the leaderboard data will not be updated during the locked period. Unix time in second. |
FPgosClientLeaderboardRoundInfo
Information of leaderboard round.
struct FPgosClientLeaderboardRoundInfo
| field | type | description |
|---|
| round_seq | int32 | The sequence number of the leaderboard round. Start from 1, the numbers are increasing in sequence, increasing by 1 in each round. 0 means the data of this round info is invalid or has been cleared. |
| round_start_time | int64 | The round start time. Unix time in second. |
| round_end_time | int64 | The round end time. Unix time in second. |
| round_locked | bool | True if this round has been locked or end. |
FPgosClientLeaderboardInfo
Information of leaderboard.
struct FPgosClientLeaderboardInfo
| field | type | description |
|---|
| leaderboard_name | FString | The name of the leaderboard. |
| stat_name | FString | The name of the stat bound to the leaderboard. |
| is_cycled | bool | Is this leaderboard a cycled leaderboard. |
| cycle_info | FPgosClientCycleInfo | The information of cycle bound to the leaderboard. This is only meaningful if is_cycled is true. |
| round_info | FPgosClientLeaderboardRoundInfo | Round information for a specified time or current time. This is only meaningful if is_cycled is true. |
FPgosClientLBRankingItem
Ranking item of leaderboard.
struct FPgosClientLBRankingItem
| field | type | description |
|---|
| rank | int32 | The ranking number, start from 1. |
| key | FString | Stat item key. |
| value | double | Stat item value. |
| secondary_value | double | Stat item secondary value. |
| custom_data | FString | Stat item custom data, used to store additional information. |
FPgosClientLBRankingListResult
Response for get ranking list.
struct FPgosClientLBRankingListResult
FPgosClientLBRankingItemPos
Current ranking list item with neighbor items.
struct FPgosClientLBRankingItemPos
FPgosClientGetRankingListParams
struct FPgosClientGetRankingListParams
| field | type | description |
|---|
| leaderboard_name | FString | The name of the leaderboard to query. |
| offset | int32 | The starting position of the query. |
| count | int32 | The query count. |
| leaderboard_round_seq | int32 | [Option] Query the ranking list of the specified round in the cycled leaderboard. The default value 0 means querying the ranking of the current round. |
FPgosClientGetFriendsRankingListParams
struct FPgosClientGetFriendsRankingListParams
| field | type | description |
|---|
| leaderboard_name | FString | The name of the leaderboard to query. |
| leaderboard_round_seq | int32 | [Option] Query the ranking list of the specified round in the cycled leaderboard. The default value 0 means querying the ranking of the current round. |
FPgosClientLBFriendsRankingListResult
Response for get friends ranking list.
struct FPgosClientLBFriendsRankingListResult
| field | type | description |
|---|
| items | TArray<FPgosClientLBRankingItem> | List of friends ranking items. The stat item key was filled with player id. |
| friend_infos | TMap<FString, FPgosClientPlayerFriendInfo> | Friends' details. key: player id Note that this only contains the player information of friends, not my own. The 'items' contains my ranking. |
| leaderboard_info | FPgosClientLeaderboardInfo | Leaderboard information. |
FPgosClientGetRankingItemPosParams
struct FPgosClientGetRankingItemPosParams
| field | type | description |
|---|
| leaderboard_name | FString | The name of the leaderboard to query. |
| key | FString | The stat item key to query. |
| neighbor_cnt | int32 | Specify the desired number of preceding and subsequent neighbors, ranging from 0 to 10. For example: if neighbor_cnt is 3, then you will get 3 preceding neighbors and 3 subsequent neighbors. |
| leaderboard_round_seq | int32 | [Option] Query the ranking list of the specified round in the cycled leaderboard. The default value 0 means querying the ranking of the current round. |
FPgosClientSetGroupGlobalCustomDataParams
struct FPgosClientSetGroupGlobalCustomDataParams
| field | type | description |
|---|
| group_id | FString | The group id. |
| global_custom_data | TMap<FString, FString> | Custom data to be modified or added. |
FPgosClientSetGroupGlobalCustomDataResult
struct FPgosClientSetGroupGlobalCustomDataResult
| field | type | description |
|---|
| global_custom_data | TMap<FString, FString> | Updated full global custom data. |
FPgosClientDelGroupGlobalCustomDataParams
struct FPgosClientDelGroupGlobalCustomDataParams
| field | type | description |
|---|
| group_id | FString | The group id. |
| keys | TArray<FString> | Custom data keys to delete. |
FPgosClientDelGroupGlobalCustomDataResult
struct FPgosClientDelGroupGlobalCustomDataResult
| field | type | description |
|---|
| global_custom_data | TMap<FString, FString> | Updated full global custom data. |
| fails | TMap<FString, FString> | Keys failed to delete, and also with the reason. |
FPgosClientClearGroupGlobalCustomDataParams
struct FPgosClientClearGroupGlobalCustomDataParams
| field | type | description |
|---|
| group_id | FString | The group id. |
FPgosClientSetGroupMyPlayerCustomDataParams
struct FPgosClientSetGroupMyPlayerCustomDataParams
| field | type | description |
|---|
| group_id | FString | The group id. |
| player_custom_data | FString | Custom data for current player. |
FPgosClientSetGroupMyPlayerCustomDataResult
struct FPgosClientSetGroupMyPlayerCustomDataResult
| field | type | description |
|---|
| player_custom_data | FString | Updated custom data for current player. |
FPgosClientBatchSetGroupPlayerCustomDataParams
struct FPgosClientBatchSetGroupPlayerCustomDataParams
| field | type | description |
|---|
| group_id | FString | The group id. |
| player_custom_data | TMap<FString, FString> | Map from player id to player custom data. |
FPgosClientBatchSetGroupPlayerCustomDataResult
struct FPgosClientBatchSetGroupPlayerCustomDataResult
| field | type | description |
|---|
| player_custom_data | TMap<FString, FString> | Updated custom data for each player. |
| fails | TMap<FString, FString> | Keys failed to set, and also with the reason. |
FPgosClientJoinWorldParams
struct FPgosClientJoinWorldParams
| field | type | description |
|---|
| world_config | FString | World config name that request to join. |
| filter_attributes | TMap<FString, FPgosKVDataValue> | Attributes needed by world buckets filters, map key: attribute name, map value: attribute value. |
| team_name | FString | The team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team. |
FPgosClientJoinWorldResult
struct FPgosClientJoinWorldResult
FPgosClientInviteJoinWorldParams
struct FPgosClientInviteJoinWorldParams
| field | type | description |
|---|
| world_config | FString | World config name that request to join. |
| filter_attributes | TMap<FString, FPgosKVDataValue> | Attributes needed by world buckets filters, map key: attribute name, map value: attribute value. |
| invited_player_ids | TArray<FString> | Player IDs who will be invited to join the same world. (Must include at least 1 player) These invited players will receive the 'OnJoinWorldInvitationUpdated' event on their game client. Players who accept (AcceptJoinWorldInvitation API) the invitation will be assigned to the same world battle session as the current player. Players who reject (RejectJoinWorldInvitation API) the invitation will skip the invitation and will not be affected. The inviter (current player) will also receive the 'OnJoinWorldInvitationUpdated' event to know the status of the invitation being accepted or rejected. The inviter will automatically accept the invitation. |
| team_name | FString | The team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team. |
FPgosClientInviteJoinWorldResult
struct FPgosClientInviteJoinWorldResult
| field | type | description |
|---|
| world_config | FString | The world configuration name associated with the invitation ticket. |
| invitation_ticket | FString | The ticket of the join world invitation. |
FPgosClientInviteLeaveWorldParams
struct FPgosClientInviteLeaveWorldParams
| field | type | description |
|---|
| world_config | FString | World config name that request to join. |
| invited_player_ids | TArray<FString> | Player IDs who will be invited to leave the same world. (Must include at least 1 player) These invited players will receive the 'OnLeaveWorldInvitationUpdated' event on their game client. Players who accept (AcceptLeaveWorldInvitation API) the invitation will be removed from the world. Players who reject (RejectLeaveWorldInvitation API) the invitation will skip the invitation and will not be affected. The inviter (current player) will also receive the 'OnLeaveWorldInvitationUpdated' event to know the status of the invitation being accepted or rejected. The inviter will automatically leave the world. |
FPgosClientInviteLeaveWorldResult
struct FPgosClientInviteLeaveWorldResult
| field | type | description |
|---|
| world_config | FString | The world configuration name associated with the invitation ticket. |
| invitation_ticket | FString | The ticket of the leave world invitation. |
FPgosClientLeaveWorldParams
struct FPgosClientLeaveWorldParams
| field | type | description |
|---|
| world_config | FString | World config name that request to leave. |
FPgosClientJoinWorldBattleSessionParams
struct FPgosClientJoinWorldBattleSessionParams
| field | type | description |
|---|
| world_config | FString | World config name that request to join. |
| battle_session_id | FString | The world battle session id to join. |
| payload | FString | The game custom data, which will be passed to the DS (dedicated server). It can be obtained by monitoring the 'OnBattleSessionUpdated' event of the Hosting module: FServerBattleSessionUpdatedEvt.new_player_battle_sessions.payload. |
| team_name | FString | The team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team. |
FPgosClientJoinWorldBattleSessionResult
struct FPgosClientJoinWorldBattleSessionResult
FPgosClientInviteJoinWorldBattleSessionParams
struct FPgosClientInviteJoinWorldBattleSessionParams
| field | type | description |
|---|
| world_config | FString | World config name that request to join. |
| battle_session_id | FString | The world battle session id to join. |
| payload | FString | The game custom data, which will be passed to the DS (dedicated server). It can be obtained by monitoring the Hosting module event (OnBattleSessionUpdatedEvt): BattleSessionUpdatedEvt.new_player_battle_sessions.payload. |
| invited_player_ids | TArray<FString> | Player IDs who will be invited to join the same world battle session. (Must include at least 1 player) These invited players will receive the 'OnJoinWorldInvitationUpdated' event on their game client. Players who accept (AcceptJoinWorldInvitation API) the invitation will be assigned to the same world battle session as the current player. Players who reject (RejectJoinWorldInvitation API) the invitation will skip the invitation and will not be affected. The inviter (current player) will also receive the 'OnJoinWorldInvitationUpdated' event to know the status of the invitation being accepted or rejected. The inviter will automatically accept the invitation. |
| team_name | FString | The team name that the player will join in the world battle session. If empty, the player will be assigned to a [default] team. |
FPgosClientInviteJoinWorldBattleSessionResult
struct FPgosClientInviteJoinWorldBattleSessionResult
| field | type | description |
|---|
| world_config | FString | The world configuration name associated with the invitation ticket. |
| invitation_ticket | FString | The ticket of the join world invitation. |
FPgosClientAcceptJoinWorldInvitationParams
struct FPgosClientAcceptJoinWorldInvitationParams
| field | type | description |
|---|
| invitation_ticket | FString | The ticket of the join world invitation. |
FPgosClientRejectJoinWorldInvitationParams
struct FPgosClientRejectJoinWorldInvitationParams
| field | type | description |
|---|
| invitation_ticket | FString | The ticket of the join world invitation. |
FPgosClientAcceptLeaveWorldInvitationParams
struct FPgosClientAcceptLeaveWorldInvitationParams
| field | type | description |
|---|
| invitation_ticket | FString | The ticket of the leave world invitation. |
FPgosClientRejectLeaveWorldInvitationParams
struct FPgosClientRejectLeaveWorldInvitationParams
| field | type | description |
|---|
| invitation_ticket | FString | The ticket of the leave world invitation. |
FPgosClientQueryMyWorldBattleSessionsParams
struct FPgosClientQueryMyWorldBattleSessionsParams
| field | type | description |
|---|
| world_configs | TArray<FString> | Worlds to query. |
FPgosClientQueryMyWorldBattleSessionsResult
struct FPgosClientQueryMyWorldBattleSessionsResult
| field | type | description |
|---|
| world_battle_sessions | TMap<FString, FPgosClientBattleSessionInfo> | A map from world config name to the battle session. Only contains the worlds that the player has joined. |
FPgosClientQueryPlayerWorldBattleSessionsParams
struct FPgosClientQueryPlayerWorldBattleSessionsParams
| field | type | description |
|---|
| player_id | FString | Player to query. |
| world_configs | TArray<FString> | Worlds to query. |
FPgosClientQueryPlayerWorldBattleSessionsResult
struct FPgosClientQueryPlayerWorldBattleSessionsResult
| field | type | description |
|---|
| world_battle_sessions | TMap<FString, FPgosClientBattleSessionInfo> | A map from world config name to the battle session. Only contains the worlds that the player has joined. |
FPgosClientQueryJoinWorldInvitationParams
struct FPgosClientQueryJoinWorldInvitationParams
| field | type | description |
|---|
| invitation_ticket | FString | The invitation ticket to query. |
FPgosClientJoinWorldInvitationInfo
The join world invitation detail information.
struct FPgosClientJoinWorldInvitationInfo
| field | type | description |
|---|
| world_config | FString | The world configuration name associated with the invitation ticket. |
| inviter | FPgosPlayerInfo | The player who initiated the invitation. |
| invitation_ticket | FString | The ticket of the join world invitation. |
| status | EPgosClientJoinWorldInvitationStatus | The status of the Join World invitation. Typically, the player who accepts the invitation will receive the 'OnWorldBattleSessionUpdated' event after the invitation status is marked as 'Completed'. However, if the player is already in the assigned battle session before the invitation, and has obtained the battle session's IP&port (which means he has received the relevant event of the battle session status being Active), then he may not be pushed the 'OnWorldBattleSessionUpdated' event. |
| error_msg | FString | The error message when the status is 'Error'. |
| my_action_to_invitation | EPgosClientJoinWorldInvitationAction | The current player's action to this join world invitation. Call 'AcceptJoinWorldInvitation' API to accept the invitation and will receive the 'OnJoinWorldInvitationUpdated' event until the status is 'Completed'. Alternatively, call the 'RejectJoinWorldInvitation' API to reject the invitation and stop receiving the 'OnJoinWorldInvitationUpdated' event for this 'invitation_ticket'. Note: Once you have made your choice, you cannot change your decision. |
| accepted_players | TArray<FPgosPlayerInfo> | Players who have accepted the invitation. (including the inviter) |
| rejected_players | TArray<FPgosPlayerInfo> | Players who have rejected the invitation. |
| undecided_players | TArray<FPgosPlayerInfo> | Players who have not yet made a decision. |
| invitation_created_time | int64 | The Unix timestamp(in seconds) when the invitation was created. |
| invitation_timeout | int32 | The maximum time(in seconds) to wait for all invited players to accept/reject. After the time (invitation_created_time+invitation_timeout), the event status will be updated to 'Completed'. |
| battle_session_id | FString | The world battle session joined by the players who accepted the invitation. It will be empty until the 'status' changes to 'JoinWorldInvitationStatus::Completed'. |
FPgosClientLeaveWorldInvitationInfo
The leave world invitation detail information.
struct FPgosClientLeaveWorldInvitationInfo
| field | type | description |
|---|
| world_config | FString | The world configuration name associated with the invitation ticket. |
| inviter | FPgosPlayerInfo | The player who initiated the invitation. |
| invitation_ticket | FString | The ticket of the leave world invitation. |
| status | EPgosClientLeaveWorldInvitationStatus | The status of the leave World invitation. |
| error_msg | FString | The error message when the status is 'Error'. |
| my_action_to_invitation | EPgosClientLeaveWorldInvitationAction | The current player's action to this leave world invitation. Call 'AcceptLeaveWorldInvitation' API to accept the invitation and will receive the 'OnLeaveWorldInvitationUpdated' event until the status is 'Completed'. Alternatively, call the 'RejectLeaveWorldInvitation' API to reject the invitation and stop receiving the 'OnLeaveWorldInvitationUpdated' event for this 'invitation_ticket'. Note: Once you have made your choice, you cannot change your decision. |
| accepted_players | TArray<FPgosPlayerInfo> | Players who have accepted the invitation. (including the inviter) |
| rejected_players | TArray<FPgosPlayerInfo> | Players who have rejected the invitation. |
| undecided_players | TArray<FPgosPlayerInfo> | Players who have not yet made a decision. |
| invitation_created_time | int64 | The Unix timestamp(in seconds) when the invitation was created. |
| invitation_timeout | int32 | The maximum time(in seconds) to wait for all invited players to accept/reject. After the time (invitation_created_time+invitation_timeout), the event status will be updated to 'Completed'. |
FPgosClientQueryJoinWorldInvitationResult
struct FPgosClientQueryJoinWorldInvitationResult
FPgosClientGetRecommendedPlayersParams
struct FPgosClientGetRecommendedPlayersParams
| field | type | description |
|---|
| count | int32 | Specifies the (maximum) number of players to be returned, its value range is: [1~50] |
FPgosClientGetPotentialFriendsParams
struct FPgosClientGetPotentialFriendsParams
| field | type | description |
|---|
| count | int32 | Specifies the (maximum) number of players to be returned, its value range is: [1~50] |
| offset | int32 | Specifies the offset of the first player to be returned. |
FPgosClientWorldBattleSessionUpdatedEvt
struct FPgosClientWorldBattleSessionUpdatedEvt
| field | type | description |
|---|
| world_config | FString | The world configuration name associated with this update. |
| battle_session | FPgosClientBattleSessionInfo | The updated details of the battle session that the current player joined. |
FPgosClientWorldBattlePropertiesUpdatedEvt
struct FPgosClientWorldBattlePropertiesUpdatedEvt
| field | type | description |
|---|
| source_type | EPgosBattleSourceType | The source type of the battle session. |
| configuration_name | FString | World config name. |
| battle_session_id | FString | World battle session id. |
| battle_properties | TArray<FPgosBattleProperty> | |
FPgosClientJoinWorldInvitationUpdatedEvt
struct FPgosClientJoinWorldInvitationUpdatedEvt
FPgosClientLeaveWorldInvitationUpdatedEvt
struct FPgosClientLeaveWorldInvitationUpdatedEvt
FPgosClientLobbyJoinRequestEvt
struct FPgosClientLobbyJoinRequestEvt
| field | type | description |
|---|
| lobby_id | FString | Lobby id. |
| player_id | FString | Player id who request to join the lobby. |
| payload | FString | Payload data from the request player. |
| token | FString | The token required to process this join request, which should be used in ApproveJoinRequest/RejectJoinRequest interface. |
FPgosClientLobbyJoinRequestApprovedEvt
struct FPgosClientLobbyJoinRequestApprovedEvt
FPgosClientLobbyJoinRequestRejectedEvt
struct FPgosClientLobbyJoinRequestRejectedEvt
| field | type | description |
|---|
| lobby_id | FString | Lobby id. |
FPgosClientLobbyGlobalCustomDataUpdatedEvt
struct FPgosClientLobbyGlobalCustomDataUpdatedEvt
| field | type | description |
|---|
| kv_data | TMap<FString, FString> | Global kv data of the lobby. Only owner has the permission to modify it. |
| lobby_id | FString | Lobby id. |
FPgosClientLobbyPlayerCustomDataUpdatedEvt
struct FPgosClientLobbyPlayerCustomDataUpdatedEvt
| field | type | description |
|---|
| player_kv_data | TMap<FString, FString> | Player custom data of each lobby member. The map key is lobby member's player ID, the map value is the lobby member's custom data. Each lobby member could modify it's player kv data. |
| lobby_id | FString | Lobby id. |
FPgosClientApproveJoinLobbyRequestParams
struct FPgosClientApproveJoinLobbyRequestParams
| field | type | description |
|---|
| lobby_id | FString | Lobby id. |
| player_id | FString | Player id who request to join the lobby. |
| token | FString | The token required to process this join request, which could be obtained from LobbyJoinRequestEvt. |
FPgosClientRejectJoinLobbyRequestParams
struct FPgosClientRejectJoinLobbyRequestParams
| field | type | description |
|---|
| lobby_id | FString | Lobby id. |
| player_id | FString | Player id who request to join the lobby. |
| token | FString | The token required to process this join request, which could be obtained from LobbyJoinRequestEvt. |
FPgosClientIncrMyKVDataIdempotentParams
struct FPgosClientIncrMyKVDataIdempotentParams
| field | type | description |
|---|
| increments | TMap<FString, FPgosKVDataValue> | Increments to update, key: kvdata key, value: increment of the value. |
| idempotency_token | FString | [Optional] Used to ensure the idempotence of the function. An idempotent operation produces the same outcome regardless of how many times it's executed, without causing any side effects or altering the system's state. The scope of the idempotent token is for each player. |
FPgosClientIncrMyKVDataIdempotentResult
struct FPgosClientIncrMyKVDataIdempotentResult
| field | type | description |
|---|
| kvdata | TMap<FString, FPgosKVDataValue> | KVData items, key: item key, value: item value. |
| replayed | bool | Whether the request is replayed. When it is True, it indicates that the result of the function is obtained by replaying with the same idempotency_token. This means that the result of the function has been generated in a previous call and is being reused in the current call. |
FPgosClientGetMidasGlobalAddonInfoResult
struct FPgosClientGetMidasGlobalAddonInfoResult
| field | type | description |
|---|
| is_role_id_mapped | bool | The management method for the Midas Role ID in the Midas Global addon. If the value is true, the role_id field will be populated by PGOS with the Role ID assigned to the current logged-in player based on the Midas Global addon configuration. If the value is false, the role_id field will not be populated. Please use the SetMidasGlobalMetaData interface to actively set the Midas Role ID. |
| role_id | FString | |
| partition_id | FString | |
| provider_app_id | FString | |
struct FPgosClientSetMidasGlobalMetaDataParams : public FPgosMidasGlobalMetaData
parent: FPgosMidasGlobalMetaData
struct FPgosClientSetMidasGlobalMetaDataResult
| field | type | description |
|---|
| is_role_id_mapped | bool | Echo back the role ID management mode configured in the Midas Global addon. |
| role_id | FString | Echo back the final adopted role ID. It will be the same as the calling parameter if is_role_id_mapped is false. If is_role_id_mapped is true, PGOS will populate it based on the current player's login information. |
FPgosClientMidasGlobalTransaction
struct FPgosClientMidasGlobalTransaction
| field | type | description |
|---|
| payment_method | FString | Pay method, enumeration values can be filled in: GOOGLE_PLAY, APPLE_STORE, STEAM, EPIC, MICROSOFT_STORE, SWITCH, PLAY_STATION |
| region_code | FString | Region code in uppercase, refer to ISO 3166. |
| currency_code | FString | Currency code, refer to ISO 4217. |
FPgosClientMidasGlobalProductInfo
struct FPgosClientMidasGlobalProductInfo
| field | type | description |
|---|
| midas_unified_product_id | FString | Midas unified product id. |
| store_item_id | FString | PGOS store item that mapped to the Midas product and the Store where it will be listed for sale are need. |
| store_id | FString | PGOS store item that mapped to the Midas product and the Store where it will be listed for sale are need. |
FPgosClientCreateMidasGlobalOrderParams
struct FPgosClientCreateMidasGlobalOrderParams
FPgosClientCreateMidasGlobalOrderResult
struct FPgosClientCreateMidasGlobalOrderResult
| field | type | description |
|---|
| order_id | FString | Order ID. |
| pay_info | FString | Payment informatio, required by the Pay interface provided by the Midas Client SDK. |
FPgosClientGetMidasGlobalBalanceDetailParams
struct FPgosClientGetMidasGlobalBalanceDetailParams
| field | type | description |
|---|
| currency_codes | TArray<FString> | Currency code of a PGOS virtual currency. Note: This interface is only used to query virtual currency with CurrencyType as MidasGlobalToken. |
FPgosClientGetMidasGlobalBalanceDetailResult
struct FPgosClientGetMidasGlobalBalanceDetailResult
FPgosClientActivateP2PBattleSessionParams
struct FPgosClientActivateP2PBattleSessionParams
| field | type | description |
|---|
| battle_session_id | FString | |
FPgosClientAcceptP2PPlayerBattleSessionParams
struct FPgosClientAcceptP2PPlayerBattleSessionParams
| field | type | description |
|---|
| battle_session_id | FString | The id of a P2P battle session |
| player_battle_session_id | FString | The id of player session in the battle, only a Reserved player session id could be accepted. !!! NOT BATTLE SESSION ID !!! |
| player_id | FString | Player id. |
FPgosClientDisconnectP2PPlayerBattleSessionParams
struct FPgosClientDisconnectP2PPlayerBattleSessionParams
| field | type | description |
|---|
| battle_session_id | FString | The id of a P2P battle session |
| player_battle_session_id | FString | The id of player session in the battle, !!! NOT BATTLE SESSION ID !!! |
| player_id | FString | Keep it empty if do not need PGOS to validate it. |
FPgosClientRemoveP2PPlayerBattleSessionParams
struct FPgosClientRemoveP2PPlayerBattleSessionParams
| field | type | description |
|---|
| battle_session_id | FString | The id of a P2P battle session |
| player_battle_session_id | FString | The id of player session in the battle, !!! NOT BATTLE SESSION ID !!! |
| player_id | FString | Keep it empty if do not need PGOS to validate it. |
FPgosClientDescribeP2PPlayerBattleSessionsParams
Request info to describe player battle sessions
struct FPgosClientDescribeP2PPlayerBattleSessionsParams
| field | type | description |
|---|
| battle_session_id | FString | The P2P battle session id. |
| player_battle_session_id | FString | The id of player session in the battle, !!! NOT BATTLE SESSION ID !!! Leave this parameter blank to iterate through all players in the battle session. |
| offset | int32 | The next token |
| count | int32 | The limit of the player battle sessions request. |
FPgosClientDescribeP2PPlayerBattleSessionsResult
Information about the players in the battle session.
struct FPgosClientDescribeP2PPlayerBattleSessionsResult
| field | type | description |
|---|
| next_offset | int32 | The next offset. |
| has_more | bool | If has more players. |
| total_num | int32 | None-completed players count in the battle session. |
| player_battle_sessions | TArray<FPgosClientP2PPlayerBattleSession> | A list of player battle sessions. Empty if there's no more sessions. |
FPgosClientDescribeP2PBattleSessionsResult
struct FPgosClientDescribeP2PBattleSessionsResult
FPgosClientTerminateP2PPlayerBattleSessionParams
struct FPgosClientTerminateP2PPlayerBattleSessionParams
| field | type | description |
|---|
| battle_session_id | FString | The battle session id |
| player_battle_session_id | FString | The player battle session id, !!! NOT BATTLE SESSION ID !!! |
FPgosClientReportHostHealthParams
struct FPgosClientReportHostHealthParams
| field | type | description |
|---|
| battle_session_id | FString | The battle session id |
| player_battle_session_id | FString | The player battle session id of reporter |
| host_player_id | FString | Host player id |
| is_host_healthy | bool | Is the current client considering the host healthy or not |
FPgosClientStartP2PBattleSessionEvt
struct FPgosClientStartP2PBattleSessionEvt
| field | type | description |
|---|
| battle_session | FPgosClientP2PBattleSession | The battle session. |
| battle_source_data | FPgosBattleSourceData | Creation source data of a battle session, contains information about the source type of the battle and player information filled in by the battle creator. |
FPgosClientP2PBattleSessionTerminateEvt
struct FPgosClientP2PBattleSessionTerminateEvt
| field | type | description |
|---|
| battle_session_id | FString | The battle session id |
| termination_time | int64 | PGOS will forcefully terminate the session after waiting this time. |
FPgosClientP2PPlayerBattleSessionsTerminatedEvt
This event is called periodically to notify game DS of those player battle sessions that have been terminated from client side.
struct FPgosClientP2PPlayerBattleSessionsTerminatedEvt
| field | type | description |
|---|
| battle_session_id | FString | The battle session id. |
| player_battle_session_id | FString | The player battle session id that have been terminated. |
FPgosClientP2PBattleSessionUpdatedEvt
struct FPgosClientP2PBattleSessionUpdatedEvt
FPgosClientP2PConnectParams
struct FPgosClientP2PConnectParams
| field | type | description |
|---|
| peer_player_id | FString | The player id. |
| connection_type | EPgosClientP2PConnectionType | The connection type to used. If not specified, PGOS will try to connect via p2p and then via relay. |
| token | FString | The token to be used for authentication by the game client. |
| response_timeout | int32 | The number of milliseconds that the local player waits for a response from the remote player |
FPgosClientP2PConnectResult
struct FPgosClientP2PConnectResult
| field | type | description |
|---|
| peer_player_id | FString | The player id. |
| connection_type | EPgosClientP2PConnectionType | The connection type to used. |
| connection_id | FString | A unique id that represents a A->B connection. |
FPgosClientP2PConnectRequestEvt
Event result of receiving a p2p connection request.
struct FPgosClientP2PConnectRequestEvt
| field | type | description |
|---|
| peer_player_id | FString | The player id of the player who sent the request. |
| connection_id | FString | The connection id of the connection. |
| token | FString | The token to be used for authentication by the game client. |
FPgosClientP2PMessageEvt
Event result of receiving a p2p message.
struct FPgosClientP2PMessageEvt
| field | type | description |
|---|
| peer_player_id | FString | The player id of the player who sent the message. |
| connection_id | FString | The connection id of the connection. |
| message | TArray<uint8> | The message. |
FPgosClientP2PConnectionClosedEvt
Event result when the p2p connection has been closed.
struct FPgosClientP2PConnectionClosedEvt
| field | type | description |
|---|
| peer_player_id | FString | The player id of the player you connect to. |
| connection_id | FString | The connection id of the connection. |
| reason | FPgosResult | The reason of the connection close. Should be ok if the connection is closed by yourself. |
FPgosClientDetectNatTypeResult
struct FPgosClientDetectNatTypeResult
FPgosClientP2PConnectionInfo
The information of P2P connection.
struct FPgosClientP2PConnectionInfo
| field | type | description |
|---|
| peer_player_id | FString | The player id of the player you connect to. |
| peer_nat_type | EPgosClientNatType | The nat type of the peer player. |
| connection_id | FString | The connection id of the connection. |
| connection_type | EPgosClientP2PConnectionType | The connection type to used. |
| is_connected | bool | Whether the connection is connected. |
| is_initiator | bool | Whether the connection is initiated by you. |
| rtt | int32 | The RTT of the connection. -1 if not connected. |
| srtt | int32 | The smoothed RTT of the connection. -1 if not connected. |
| loss_rate | float | The packet loss rate of the connection. -1 if not connected. |
FPgosClientSendP2PMessageParams
struct FPgosClientSendP2PMessageParams
| field | type | description |
|---|
| connection_id | FString | The connection id of the connection. |
| message | TArray<uint8> | The message to be sent. |
FPgosClientTerminateP2PBattleSessionParams
struct FPgosClientTerminateP2PBattleSessionParams
| field | type | description |
|---|
| battle_session_id | FString | P2P battle session id. |
FPgosClientIntoLoginQueueEvt
Event result when the player is placed into the login queue.
struct FPgosClientIntoLoginQueueEvt
| field | type | description |
|---|
| queue_position | int32 | The queue position of the player. |
| estimated_wait_time | int32 | The estimated wait time of the player in seconds. |
FPgosClientLoginQueueUpdatedEvt
Event result when the login queue status is updated.
struct FPgosClientLoginQueueUpdatedEvt : public FPgosClientIntoLoginQueueEvt
parent: FPgosClientIntoLoginQueueEvt
FPgosClientGetInventoryWithFilterParams
Get inventory with filter params.
struct FPgosClientGetInventoryWithFilterParams
FPgosClientGetMutualFriendsCountParams
Get mutual friends count params.
struct FPgosClientGetMutualFriendsCountParams
| field | type | description |
|---|
| player_ids | TArray<FString> | The player ids to get mutual friends count with |
FPgosClientGetMutualFriendsCountResult
Get mutual friends count result.
struct FPgosClientGetMutualFriendsCountResult
| field | type | description |
|---|
| mutual_friends_count | TMap<FString, int32> | The mutual friends count of each target player. |
FPgosClientPotentialFriendInfo
Basic player information of a potential friend
struct FPgosClientPotentialFriendInfo : public FPgosClientPlayerSearchInfo
parent: FPgosClientPlayerSearchInfo
| field | type | description |
|---|
| mutual_friend_count | int32 | The number of mutual friends between this player and the target player. |
FPgosClientGetPotentialFriendsResult
The result of [GetPotentialFriends]
struct FPgosClientGetPotentialFriendsResult
| field | type | description |
|---|
| info_list | TArray<FPgosClientPotentialFriendInfo> | A list of potential friends information |
| has_more | bool | Whether there is more friends or not |
| next_offset | int32 | The starting offset for the next query |
FPgosClientLatencyTestRoundCompletedEvt
Event details when a latency test round is completed.]
struct FPgosClientLatencyTestRoundCompletedEvt
| field | type | description |
|---|
| round_idx | int32 | The index of the test round, specifying which round this is (starting from 0). |
| data | FPgosClientDSHostingLatencies | The latencies from the client to the DS hosting data centers. |