nn::nex::MatchmakeExtensionClient::JoinPersistentGathering Member Function

Syntax

qBool JoinPersistentGathering(
     ProtocolCallContext * pContext,
     GatheringID gatheringId,
     const String & strMessage = _T(""),
     const String & strPassword = _T("")
);

Parameters

Name Description
in pContext Call information.
in gatheringId ID of the persistent gathering to join.
in strMessage Message that the participant can uniquely register. The maximum string length is specified by MATCHMAKE_STRING_MAX_LENGTH.
in strPassword Password for the persistent gathering. Only enabled when the persistent gathering type is PasswordLock.

Return Values



Value Description
true Call initialization succeeded.
false Failure.

Description

Joins a persistent gathering.

Joins the persistent gathering with the specified ID. PERSISTENT_GATHERING_PARTICIPATION_MAX defines the maximum number of persistent gatherings that any one user can join. Remains until the MatchMakingClient::EndParticipation function is used to explicitly leave the persistent gathering.

The following results may be returned as a result of asynchronous operation. Use the application to handle these results.

QERROR(RendezVous, PersistentGatheringParticipationMax): The limit on persistent gathering participants was exceeded.
QERROR(RendezVous, SessionVoid): Nonexistent persistent gathering.
QERROR(RendezVous, SessionFull): The session has already reached the maximum number of participants.
QERROR(RendezVous, InvalidGatheringPassword): The password does not match the persistent gathering password.
QERROR(RendezVous, AlreadyParticipatedGathering): Already joined that gathering.
QERROR(RendezVous, WithoutParticipationPeriod): Not within the available participation period.

Pass the following error to the Error/EULA applet. This error must be removed during debugging.
QERROR(Core, InvalidArgument): An attempt was made to send a string longer than MATCHMAKE_STRING_MAX_LENGTH.

You can choose to either handle the following error in the application or pass it to the error/EULA applet.

QERROR(RendezVous, GameServerMaintenance): This error occurs when the function is called between the GameServerMaintenance notification event and when game server maintenance takes place.

Revision History

2014/04/08
Corrected QERROR(Core, InvalidArgment) to QERROR(Core, InvalidArgument) and QERROR(Core, GameServerMaintenance) to QERROR(RendezVous, GameServerMaintenance) in the description.
2013/11/28
Corrected the description so that QERROR(Core, InvalidArgment) is not handled by the application, but the error is passed to the error/EULA applet.
2013/05/31
Added a note indicating that QERROR(Core, GameServerMaintenance) is returned when the function is called between the GameServerMaintenance notification event and when game server maintenance takes place.
2013/01/11
Initial version.

CONFIDENTIAL