Skip to main content

Client Lobby API Reference

The Lobby Service works with the DS Hosting and Management service and provides a way for the game to gather players together to start a battle. A player can create a private lobby to play battles with specific people or create an open lobby which anyone can join. The Lobby Service also provides lobby management, search, text chat, and other features.

API List

APIDescription
CreateLobbyCreate a new lobby
GetLobbyDetailInfoGet detail information of a lobby
GetLobbyBriefInfoGet brief information of a lobby
BatchGetLobbyBriefInfoGet brief information of lobby in batch (max 100 lobbies)
EditLobbyInfoEdit detail information of a lobby, only available for lobby owner
SearchLobbySearch the lobby list @param params The optional filter information when searching the lobby list. Note: If these data are not filled (lobby_id, lobby_config, status, protection), all existing lobbies will be returned.
JoinLobbyJoin the specified lobby
QuickJoinLobbyPGOS will attempt to place the player into a lobby instance that meets the lobby global kv data data filtering conditions, note that this operation does not guarantee success. Only Lobby instances with 1) status as Waiting, 2) LobbyPrivacy as Visible, and 3) LobbyProtection as FreeAccess can be quickly joined.
JoinLobbyWithGroupsJoin the specified group in the specified lobby. Try to join the specified groups in the lobby according to the specified priority value from small to large. Slot selection within the group follows the Team Selection Strategy configuration on the portal. The portal's lobby configuration needs to be switched to advanced mode.
JoinLobbyWithTeamsJoin the specified team in the specified lobby. Try to join the specified teams in the lobby according to the specified priority value from small to large. When multiple teams have the same priority, slot selection follows the Team Selection Strategy configuration on the portal. The portal's lobby configuration needs to be switched to advanced mode.
LeaveLobbyLeave current lobby
DismissLobbyDismiss current lobby, only available for lobby owner
KickOutMemberKick out a lobby member, only available for lobby owner
InvitePlayerInvite a player to current lobby
SwitchTeamSlotSwitch to another slot. The operation will be failed if the target slot is already occupied Note that the team slot index starts form 1.
RequestSwitchTeamSlotSwitch team slot with another lobby member. The operation will be failed if the target slot is empty. Note that the team slot index starts form 1.
ConfirmSwitchTeamSlotAgree to swap slots with a lobby member at the specified position. The interface will return a failure if the position of either party in the swap request changes.
RejectSwitchTeamSlotReject a team slot switch request.
TransferOwnershipTransfer the ownership of a lobby to another member, only available for lobby owner
SetLobbyDataUpdate lobby data, only available for lobby owner
SetLobbyGlobalDataUpdate lobby global data, only available for lobby owner
SetLobbyPlayerDataUpdate player lobby data, lobby members can only modify their own custom data.
StartBattleTry to start a battle that contains all lobby members, only available for lobby owner
ReadyForBattleSwitch the READY flag of current lobby member
GetCurrentLobbyDetailGet latest lobby detail information from SDK local cache
SendLobbyChatTextMsgSend a message to the lobby's chat channel. Only enable_chatting in CreateLobbyParams is True when the lobby was created
SendLobbyChatCustomMsgSend a message to the lobby's chat channel. Only enable_chatting in CreateLobbyParams is True when the lobby was created
ApproveJoinLobbyRequestApprove a lobby join request. The interface is for lobby owner use only. Each request is valid for 10 minutes.
RejectJoinLobbyRequestApprove a lobby join request. The interface is for lobby owner use only. Each request is valid for 10 minutes.
GetPlayerLobbyInfoGet the player's current lobby information from server.

Event List

EventDescription
OnLobbyMemberJoinedThe event will be triggered when someone joined current lobby.
OnLobbyMemberLeftThe event will be triggered when someone left current lobby.
OnLobbyTeamUpdatedThe event will be triggered when team struct of current lobby changed.
OnLobbyInvitationThe event will be triggered when receive lobby invitations.
OnLobbyDismissThe event will be triggered when current lobby is dismissed.
OnLobbyOwnerTransferredThe event will be triggered when lobby ownership is transferred.
OnLobbyInfoUpdatedThe event will be triggered when current lobby options is changed.
OnLobbyDataUpdatedThe event will be triggered when custom lobby data is changed.
OnLobbyStatusChangedThe event will be triggered when current lobby's status changed.
OnBattleSessionUpdatedThe event will be triggered when the battle session started by current lobby has updated.
OnReceiveLobbyChatMsgThe event will be triggered when receive chat messages from current lobby's chat channel.
OnLobbySwitchTeamSlotRequestThe event will be triggered when another lobby member send a team-slot switch request.
OnLobbySwitchTeamSlotRequestConfirmedThe event will be triggered when a switch request when a team-slot switch request has been confirmed.
OnLobbySwitchTeamSlotRequestRejectedThe event will be triggered when a team-slot switch request has been rejected.
OnLobbyJoinRequestThe event will be triggered when a player request to join a lobby with protection type LobbyProtection::ApplicationNeeded.
OnLobbyJoinRequestApprovedThe event will be triggered when a join request has been approved by lobby owner.
OnLobbyJoinRequestRejectedThe event will be triggered when a join request has been reject by lobby owner.
OnLobbyGlobalCustomDataUpdatedThe event will be triggered when lobby global custom data updated.
OnLobbyPlayerCustomDataUpdatedThe event will be triggered when lobby player custom data updated.

API Details

CreateLobby

Create a new lobby

/// <summary>Create a new lobby</summary>
/// <param name="pgos_params">The information needed to create the lobby.</param>
public void CreateLobby(CreateLobbyParams pgos_params, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
pgos_paramsCreateLobbyParamsThe information needed to create the lobby.
callbackLobbyDelegate0

Return: void

GetLobbyDetailInfo

Get detail information of a lobby

/// <summary>Get detail information of a lobby</summary>
/// <param name="lobby_id">The lobby id to query.</param>
public void GetLobbyDetailInfo(string lobby_id, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
lobby_idstringThe lobby id to query.
callbackLobbyDelegate0

Return: void

GetLobbyBriefInfo

Get brief information of a lobby

/// <summary>Get brief information of a lobby</summary>
/// <param name="lobby_id">The lobby id to query.</param>
public void GetLobbyBriefInfo(string lobby_id, LobbyDelegate1 callback);

Parameters:

ParamTypeDescription
lobby_idstringThe lobby id to query.
callbackLobbyDelegate1

Return: void

BatchGetLobbyBriefInfo

Get brief information of lobby in batch (max 100 lobbies)

/// <summary>Get brief information of lobby in batch  (max 100 lobbies)</summary>
/// <param name="lobby_ids">List of lobby id to query.</param>
public void BatchGetLobbyBriefInfo(List<string> lobby_ids, LobbyDelegate2 callback);

Parameters:

ParamTypeDescription
lobby_idsList<string>List of lobby id to query.
callbackLobbyDelegate2

Return: void

EditLobbyInfo

Edit detail information of a lobby, only available for lobby owner

/// <summary>Edit detail information of a lobby, only available for lobby owner</summary>
/// <param name="pgos_params">
/// The lobby information that needs to be updated.
/// these data will overwrite the previous data.
/// </param>
public void EditLobbyInfo(EditLobbyInfoParams pgos_params, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
pgos_paramsEditLobbyInfoParamsThe lobby information that needs to be updated. these data will overwrite the previous data.
callbackLobbyDelegate0

Return: void

SearchLobby

Search the lobby list @param params The optional filter information when searching the lobby list. Note: If these data are not filled (lobby_id, lobby_config, status, protection), all existing lobbies will be returned.

/// <summary>
/// Search the lobby list
/// @param params The optional filter information when searching the lobby list.
/// Note: If these data are not filled (lobby_id, lobby_config, status, protection),
/// all existing lobbies will be returned.
/// </summary>
public void SearchLobby(SearchLobbyParams pgos_params, LobbyDelegate3 callback);

Parameters:

ParamTypeDescription
pgos_paramsSearchLobbyParams
callbackLobbyDelegate3

Return: void

JoinLobby

Join the specified lobby

/// <summary>Join the specified lobby</summary>
/// <param name="pgos_params">The information needed when join the lobby</param>
public void JoinLobby(JoinLobbyParams pgos_params, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
pgos_paramsJoinLobbyParamsThe information needed when join the lobby
callbackLobbyDelegate0

Return: void

QuickJoinLobby

PGOS will attempt to place the player into a lobby instance that meets the lobby global kv data data filtering conditions, note that this operation does not guarantee success. Only Lobby instances with 1) status as Waiting, 2) LobbyPrivacy as Visible, and 3) LobbyProtection as FreeAccess can be quickly joined.

/// <summary>
/// PGOS will attempt to place the player into a lobby instance that meets the lobby global kv data data filtering conditions, note that this operation does not guarantee success.
/// Only Lobby instances with 1) status as Waiting, 2) LobbyPrivacy as Visible, and 3) LobbyProtection as FreeAccess can be quickly joined.
/// </summary>
public void QuickJoinLobby(QuickJoinLobbyParams pgos_params, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
pgos_paramsQuickJoinLobbyParams
callbackLobbyDelegate0

Return: void

JoinLobbyWithGroups

Join the specified group in the specified lobby. Try to join the specified groups in the lobby according to the specified priority value from small to large. Slot selection within the group follows the Team Selection Strategy configuration on the portal. The portal's lobby configuration needs to be switched to advanced mode.

/// <summary>
/// Join the specified group in the specified lobby. Try to join the specified groups in the lobby according to the specified priority value from small to large.
/// Slot selection within the group follows the Team Selection Strategy configuration on the portal.
/// The portal's lobby configuration needs to be switched to advanced mode.
/// </summary>
/// <param name="pgos_params">The information needed when join the lobby.</param>
public void JoinLobbyWithGroups(JoinLobbyWithGroupsParams pgos_params, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
pgos_paramsJoinLobbyWithGroupsParamsThe information needed when join the lobby.
callbackLobbyDelegate0

Return: void

JoinLobbyWithTeams

Join the specified team in the specified lobby. Try to join the specified teams in the lobby according to the specified priority value from small to large. When multiple teams have the same priority, slot selection follows the Team Selection Strategy configuration on the portal. The portal's lobby configuration needs to be switched to advanced mode.

/// <summary>
/// Join the specified team in the specified lobby. Try to join the specified teams in the lobby according to the specified priority value from small to large.
/// When multiple teams have the same priority, slot selection follows the Team Selection Strategy configuration on the portal.
/// The portal's lobby configuration needs to be switched to advanced mode.
/// </summary>
/// <param name="pgos_params">The information needed when join the lobby.</param>
public void JoinLobbyWithTeams(JoinLobbyWithTeamsParams pgos_params, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
pgos_paramsJoinLobbyWithTeamsParamsThe information needed when join the lobby.
callbackLobbyDelegate0

Return: void

LeaveLobby

Leave current lobby

/// <summary>Leave current lobby</summary>
public void LeaveLobby(LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
callbackLobbyDelegate4

Return: void

DismissLobby

Dismiss current lobby, only available for lobby owner

/// <summary>Dismiss current lobby, only available for lobby owner</summary>
public void DismissLobby(LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
callbackLobbyDelegate4

Return: void

KickOutMember

Kick out a lobby member, only available for lobby owner

/// <summary>Kick out a lobby member, only available for lobby owner</summary>
/// <param name="member_player_id">The player id of the lobby member.</param>
public void KickOutMember(string member_player_id, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
member_player_idstringThe player id of the lobby member.
callbackLobbyDelegate0

Return: void

InvitePlayer

Invite a player to current lobby

/// <summary>Invite a player to current lobby</summary>
/// <param name="player_id">The invited player id.</param>
public void InvitePlayer(string player_id, LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
player_idstringThe invited player id.
callbackLobbyDelegate4

Return: void

SwitchTeamSlot

Switch to another slot. The operation will be failed if the target slot is already occupied Note that the team slot index starts form 1.

/// <summary>
/// Switch to another slot. The operation will be failed if the target slot is already occupied
/// Note that the team slot index starts form 1.
/// </summary>
/// <param name="target_team_name">The name of team to switch to.</param>
/// <param name="target_team_slot">The slot of team to switch to.</param>
public void SwitchTeamSlot(string target_team_name, UInt32 target_team_slot, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
target_team_namestringThe name of team to switch to.
target_team_slotUInt32The slot of team to switch to.
callbackLobbyDelegate0

Return: void

RequestSwitchTeamSlot

Switch team slot with another lobby member. The operation will be failed if the target slot is empty. Note that the team slot index starts form 1.

/// <summary>
/// Switch team slot with another lobby member. The operation will be failed if the target slot is empty.
/// Note that the team slot index starts form 1.
/// </summary>
/// <param name="target_team_name">The name of team to switch to.</param>
/// <param name="target_team_slot">The slot index of team to switch to.</param>
public void RequestSwitchTeamSlot(string target_team_name, UInt32 target_team_slot, LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
target_team_namestringThe name of team to switch to.
target_team_slotUInt32The slot index of team to switch to.
callbackLobbyDelegate4

Return: void

ConfirmSwitchTeamSlot

Agree to swap slots with a lobby member at the specified position. The interface will return a failure if the position of either party in the swap request changes.

/// <summary>
/// Agree to swap slots with a lobby member at the specified position.
/// The interface will return a failure if the position of either party in the swap request changes.
/// </summary>
/// <param name="request_id">Team slot switch request id.</param>
public void ConfirmSwitchTeamSlot(string request_id, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
request_idstringTeam slot switch request id.
callbackLobbyDelegate0

Return: void

RejectSwitchTeamSlot

Reject a team slot switch request.

/// <summary>Reject a team slot switch request.</summary>
/// <param name="request_id">Team slot switch request id.</param>
public void RejectSwitchTeamSlot(string request_id, LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
request_idstringTeam slot switch request id.
callbackLobbyDelegate4

Return: void

TransferOwnership

Transfer the ownership of a lobby to another member, only available for lobby owner

/// <summary>Transfer the ownership of a lobby to another member, only available for lobby owner</summary>
/// <param name="new_owner_player_id">The target player id.</param>
public void TransferOwnership(string new_owner_player_id, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
new_owner_player_idstringThe target player id.
callbackLobbyDelegate0

Return: void

SetLobbyData

Update lobby data, only available for lobby owner

Deprecated, use SetLobbyGlobalData instead.

/// <summary>Update lobby data, only available for lobby owner</summary>
/// <param name="kv_data">Lobby data.</param>
public void SetLobbyData(Dictionary<string, string> kv_data, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
kv_dataDictionary<string, string>Lobby data.
callbackLobbyDelegate0

Return: void

SetLobbyGlobalData

Update lobby global data, only available for lobby owner

/// <summary>Update lobby global data, only available for lobby owner</summary>
/// <param name="lobby_global_data">
/// 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).
/// </param>
public void SetLobbyGlobalData(Dictionary<string, string> lobby_global_data, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
lobby_global_dataDictionary<string, string>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).
callbackLobbyDelegate0

Return: void

SetLobbyPlayerData

Update player lobby data, lobby members can only modify their own custom data.

/// <summary>Update player lobby data, lobby members can only modify their own custom data.</summary>
/// <param name="lobby_player_data">Lobby player data.</param>
public void SetLobbyPlayerData(string lobby_player_data, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
lobby_player_datastringLobby player data.
callbackLobbyDelegate0

Return: void

StartBattle

Try to start a battle that contains all lobby members, only available for lobby owner

/// <summary>Try to start a battle that contains all lobby members, only available for lobby owner</summary>
public void StartBattle(LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
callbackLobbyDelegate0

Return: void

ReadyForBattle

Switch the READY flag of current lobby member

/// <summary>Switch the READY flag of current lobby member</summary>
/// <param name="ready">The READY flag.</param>
public void ReadyForBattle(bool ready, LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
readyboolThe READY flag.
callbackLobbyDelegate0

Return: void

GetCurrentLobbyDetail

Get latest lobby detail information from SDK local cache

/// <summary>Get latest lobby detail information from SDK local cache</summary>
/// <param name="dst">The latest lobby detail information</param>
public bool GetCurrentLobbyDetail(ref LobbyDetailInfo dst);

Parameters:

ParamTypeDescription
dstref LobbyDetailInfoThe latest lobby detail information

Return: bool

false if not in a lobby, or don't get the detail information of the current lobby

SendLobbyChatTextMsg

Send a message to the lobby's chat channel. Only enable_chatting in CreateLobbyParams is True when the lobby was created

/// <summary>
/// Send a message to the lobby's chat channel.
/// Only enable_chatting in CreateLobbyParams is True when the lobby was created
/// </summary>
/// <param name="pgos_params">Request struct for sending lobby chat message</param>
public void SendLobbyChatTextMsg(SendLobbyChatMsgParams pgos_params, LobbyDelegate5 callback);

Parameters:

ParamTypeDescription
pgos_paramsSendLobbyChatMsgParamsRequest struct for sending lobby chat message
callbackLobbyDelegate5

Return: void

SendLobbyChatCustomMsg

Send a message to the lobby's chat channel. Only enable_chatting in CreateLobbyParams is True when the lobby was created

/// <summary>
/// Send a message to the lobby's chat channel.
/// Only enable_chatting in CreateLobbyParams is True when the lobby was created
/// </summary>
/// <param name="pgos_params">Request struct for sending lobby chat message</param>
public void SendLobbyChatCustomMsg(SendLobbyChatMsgParams pgos_params, LobbyDelegate5 callback);

Parameters:

ParamTypeDescription
pgos_paramsSendLobbyChatMsgParamsRequest struct for sending lobby chat message
callbackLobbyDelegate5

Return: void

ApproveJoinLobbyRequest

Approve a lobby join request. The interface is for lobby owner use only. Each request is valid for 10 minutes.

/// <summary>
/// Approve a lobby join request.
/// The interface is for lobby owner use only. Each request is valid for 10 minutes.
/// </summary>
/// <param name="pgos_params">
/// </param>
public void ApproveJoinLobbyRequest(ApproveJoinLobbyRequestParams pgos_params, LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
pgos_paramsApproveJoinLobbyRequestParams
callbackLobbyDelegate4

Return: void

RejectJoinLobbyRequest

Approve a lobby join request. The interface is for lobby owner use only. Each request is valid for 10 minutes.

/// <summary>
/// Approve a lobby join request.
/// The interface is for lobby owner use only. Each request is valid for 10 minutes.
/// </summary>
/// <param name="pgos_params">
/// </param>
public void RejectJoinLobbyRequest(RejectJoinLobbyRequestParams pgos_params, LobbyDelegate4 callback);

Parameters:

ParamTypeDescription
pgos_paramsRejectJoinLobbyRequestParams
callbackLobbyDelegate4

Return: void

GetPlayerLobbyInfo

Get the player's current lobby information from server.

/// <summary>Get the player's current lobby information from server.</summary>
public void GetPlayerLobbyInfo(LobbyDelegate0 callback);

Parameters:

ParamTypeDescription
callbackLobbyDelegate0

Return: void

Event Details

OnLobbyMemberJoined

The event will be triggered when someone joined current lobby.

/// <summary>The event will be triggered when someone joined current lobby.</summary>
public event LobbyDelegate6 OnLobbyMemberJoined;

Type Reference:

OnLobbyMemberLeft

The event will be triggered when someone left current lobby.

/// <summary>The event will be triggered when someone left current lobby.</summary>
public event LobbyDelegate7 OnLobbyMemberLeft;

Type Reference:

OnLobbyTeamUpdated

The event will be triggered when team struct of current lobby changed.

/// <summary>The event will be triggered when team struct of current lobby changed.</summary>
public event LobbyDelegate8 OnLobbyTeamUpdated;

Type Reference:

OnLobbyInvitation

The event will be triggered when receive lobby invitations.

/// <summary>The event will be triggered when receive lobby invitations.</summary>
public event LobbyDelegate9 OnLobbyInvitation;

Type Reference:

OnLobbyDismiss

The event will be triggered when current lobby is dismissed.

/// <summary>The event will be triggered when current lobby is dismissed.</summary>
public event LobbyDelegate10 OnLobbyDismiss;

Type Reference:

OnLobbyOwnerTransferred

The event will be triggered when lobby ownership is transferred.

/// <summary>The event will be triggered when lobby ownership is transferred.</summary>
public event LobbyDelegate11 OnLobbyOwnerTransferred;

Type Reference:

OnLobbyInfoUpdated

The event will be triggered when current lobby options is changed.

/// <summary>The event will be triggered when current lobby options is changed.</summary>
public event LobbyDelegate12 OnLobbyInfoUpdated;

Type Reference:

OnLobbyDataUpdated

The event will be triggered when custom lobby data is changed.

/// <summary>The event will be triggered when custom lobby data is changed.</summary>
public event LobbyDelegate13 OnLobbyDataUpdated;

Type Reference:

OnLobbyStatusChanged

The event will be triggered when current lobby's status changed.

/// <summary>The event will be triggered when current lobby's status changed.</summary>
public event LobbyDelegate14 OnLobbyStatusChanged;

Type Reference:

OnBattleSessionUpdated

The event will be triggered when the battle session started by current lobby has updated.

/// <summary>The event will be triggered when the battle session started by current lobby has updated.</summary>
public event LobbyDelegate15 OnBattleSessionUpdated;

Type Reference:

OnReceiveLobbyChatMsg

The event will be triggered when receive chat messages from current lobby's chat channel.

/// <summary>The event will be triggered when receive chat messages from current lobby's chat channel.</summary>
public event LobbyDelegate16 OnReceiveLobbyChatMsg;

Type Reference:

OnLobbySwitchTeamSlotRequest

The event will be triggered when another lobby member send a team-slot switch request.

/// <summary>The event will be triggered when another lobby member send a team-slot switch request.</summary>
public event LobbyDelegate17 OnLobbySwitchTeamSlotRequest;

Type Reference:

OnLobbySwitchTeamSlotRequestConfirmed

The event will be triggered when a switch request when a team-slot switch request has been confirmed.

/// <summary>The event will be triggered when a switch request when a team-slot switch request has been confirmed.</summary>
public event LobbyDelegate18 OnLobbySwitchTeamSlotRequestConfirmed;

Type Reference:

OnLobbySwitchTeamSlotRequestRejected

The event will be triggered when a team-slot switch request has been rejected.

/// <summary>The event will be triggered when a team-slot switch request has been rejected.</summary>
public event LobbyDelegate19 OnLobbySwitchTeamSlotRequestRejected;

Type Reference:

OnLobbyJoinRequest

The event will be triggered when a player request to join a lobby with protection type LobbyProtection::ApplicationNeeded.

/// <summary>The event will be triggered when a player request to join a lobby with protection type LobbyProtection::ApplicationNeeded.</summary>
public event LobbyDelegate20 OnLobbyJoinRequest;

Type Reference:

OnLobbyJoinRequestApproved

The event will be triggered when a join request has been approved by lobby owner.

/// <summary>The event will be triggered when a join request has been approved by lobby owner.</summary>
public event LobbyDelegate21 OnLobbyJoinRequestApproved;

Type Reference:

OnLobbyJoinRequestRejected

The event will be triggered when a join request has been reject by lobby owner.

/// <summary>The event will be triggered when a join request has been reject by lobby owner.</summary>
public event LobbyDelegate22 OnLobbyJoinRequestRejected;

Type Reference:

OnLobbyGlobalCustomDataUpdated

The event will be triggered when lobby global custom data updated.

/// <summary>The event will be triggered when lobby global custom data updated.</summary>
public event LobbyDelegate23 OnLobbyGlobalCustomDataUpdated;

Type Reference:

OnLobbyPlayerCustomDataUpdated

The event will be triggered when lobby player custom data updated.

/// <summary>The event will be triggered when lobby player custom data updated.</summary>
public event LobbyDelegate24 OnLobbyPlayerCustomDataUpdated;

Type Reference:

All Delegates

public delegate void LobbyDelegate0(PgosResult a0, LobbyDetailInfo a1);
public delegate void LobbyDelegate1(PgosResult a0, LobbyBriefInfo a1);
public delegate void LobbyDelegate2(PgosResult a0, List<LobbyBriefInfo> a1);
public delegate void LobbyDelegate3(PgosResult a0, SearchLobbyResult a1);
public delegate void LobbyDelegate4(PgosResult a0);
public delegate void LobbyDelegate5(PgosResult a0, ChatMsgInfo a1);
public delegate void LobbyDelegate6(LobbyMemberJoinedEvt a0);
public delegate void LobbyDelegate7(LobbyMemberLeftEvt a0);
public delegate void LobbyDelegate8(LobbyTeamUpdatedEvt a0);
public delegate void LobbyDelegate9(LobbyInvitationEvt a0);
public delegate void LobbyDelegate10();
public delegate void LobbyDelegate11(LobbyOwnerTransferredEvt a0);
public delegate void LobbyDelegate12(LobbyInfoUpdatedEvt a0);
public delegate void LobbyDelegate13(LobbyDataUpdatedEvt a0);
public delegate void LobbyDelegate14(LobbyStatusChangedEvt a0);
public delegate void LobbyDelegate15(BattleSessionUpdatedEvt a0);
public delegate void LobbyDelegate16(ReceiveLobbyChatMsgEvt a0);
public delegate void LobbyDelegate17(LobbySwitchTeamSlotRequestEvt a0);
public delegate void LobbyDelegate18(LobbySwitchTeamSlotRequestConfirmedEvt a0);
public delegate void LobbyDelegate19(LobbySwitchTeamSlotRequestRejectedEvt a0);
public delegate void LobbyDelegate20(LobbyJoinRequestEvt a0);
public delegate void LobbyDelegate21(LobbyJoinRequestApprovedEvt a0);
public delegate void LobbyDelegate22(LobbyJoinRequestRejectedEvt a0);
public delegate void LobbyDelegate23(LobbyGlobalCustomDataUpdatedEvt a0);
public delegate void LobbyDelegate24(LobbyPlayerCustomDataUpdatedEvt a0);

Type Reference: