This section describes the API calls that occur during communication with the game server using the PiaSession API.
The server API has restrictions. The restriction on frequency of calls, for example, is described in the restrictions on game server access in the guidelines. For more information about the restrictions when recording the API call history, see Chapter 9 Debugging Helpers in the NEX Programming Manual: Server Services.
The following table shows calls made by the Pia client application and their corresponding server calls. The recorded server API name is the name recorded by the NEX debugging function nn::nex::DebugClient::GetApiCallSummary.
Pia Library APIs | API Name in NEX Library | Recorded Server API Name |
---|---|---|
Session::JoinRandomSessionAsync | MatchmakeExtensionClient::AutoMatchmake | MatchmakeExtensionProtocol::AutoMatchmakeWithParam_Postpone |
MatchmakeExtensionClient::AutoMatchmake | MatchmakeExtensionProtocol::AutoMatchmakeWithSearchCriteria_Postpone | |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::BrowseSessionAsync | MatchmakeExtensionClient::BrowseMatchmakeSession | MatchmakeExtensionProtocol::BrowseMatchmakeSession |
Session::CreateSessionAsync | ConnectivityManager::StartNatSession() (only the first time after login) | NATTraversalReportInternalProtocol::ReportNATProperties |
MatchmakeExtensionClient::CreateMatchmakeSession | MatchmakeExtensionProtocol::CreateMatchmakeSession | |
Session::JoinSessionAsync | ConnectivityManager::StartNatSession() (only the first time after login) | NATTraversalReportInternalProtocol::ReportNATProperties |
MatchmakeExtensionClient::JoinMatchmakeSession | MatchmakeExtensionProtocol::JoinMatchmakeSessionEx | |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::LeaveSessionAsync | MatchMakingClient::EndParticipation | MatchMakingExtProtocolServer::EndParticipation |
MatchMakingClient::UnregisterGathering | MatchMakingClient::UnregisterGathering | |
Session::OpenParticipationAsync | MatchmakeExtensionClient::OpenParticipation | MatchmakeExtensionProtocol::OpenParticipation |
Session::CloseParticipationAsync | MatchmakeExtensionClient::CloseParticipation | MatchmakeExtensionProtocol::CloseParticipation |
Session::ModifyAttributeAsync | MatchmakeExtensionClient::ModifyMatchmakeSessionAttribute | MatchmakeExtensionProtocol::ModifyMatchmakeSessionAttribute |
MatchmakeExtensionClient::ModifyMatchmakeSessionAttribute | MatchmakeExtensionProtocol::ModifyCurrentGameAttribute | |
Joint Session Feature | ||
Session::JoinRandomJointSessionAsync |
MatchmakeExtensionClient::AutoMatchmake | MatchmakeExtensionProtocol::AutoMatchmakeWithParam_Postpone |
MatchmakeExtensionClient::AutoMatchmake | MatchmakeExtensionProtocol::AutoMatchmakeWithSearchCriteria_Postpone | |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::CreateJointSessionAsync |
MatchmakeExtensionClient::CreateMatchmakeSession | MatchmakeExtensionProtocol::CreateMatchmakeSessionWithParam |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::JoinJointSessionAsync |
MatchmakeExtensionClient::JoinMatchmakeSession | MatchmakeExtensionProtocol::JoinMatchmakeSessionEx |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::DestroyJointSessionAsync | MatchMakingClient::EndParticipation | MatchMakingExtProtocolServer::EndParticipation |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::LeaveJointSessionAsync | MatchMakingClient::EndParticipation | MatchMakingExtProtocolServer::EndParticipation |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
Session::OpenJointSessionAsync | MatchmakeExtensionClient::OpenParticipation | MatchmakeExtensionProtocol::OpenParticipation |
Session::CloseJointSessionAsync | MatchmakeExtensionClient::CloseParticipation | MatchmakeExtensionProtocol::CloseParticipation |
The following table indicates processes that automatically occur as a result of PiaSession system processes, and the corresponding server API names that might be called within those processes.
Pia Library Automatic Processes | API Name in NEX Library | Recorded Server API Name |
---|---|---|
NAT traversal during connection between stations | Note: Not indicated in the corresponding table in the NEX manual. (Indicated as an API function called automatically by the library.) |
SecureConnectionInternalProtocol::UpdateConnectionProperties |
SecureConnectionInternalProtocol::ReplaceConnectionProperties | ||
NATTraversalReportInternalProtocol::ReportNATTraversalResult | ||
NATTraversalReportInternalProtocol::ReportNATTraversalResultDetail | ||
Automatic cleanup process when asynchronous processes fail or errors occur. | MatchMakingClient::UnregisterGathering | MatchMakingClient::UnregisterGathering |
MatchMakingClient::EndParticipation | MatchMakingExtProtocolServer::EndParticipation | |
Joint Session Feature | ||
Joint session process started passively on instruction from the session host. |
Note: Not indicated in the corresponding table in the NEX manual. | MatchmakeExtensionClient::FindMatchmakeSessionByGatheringIdDetail |
MatchMakingClient::GetSessionURLs | MatchMakingProtocolServer::GetSessionURLs | |
MatchMakingClient::EndParticipation | MatchMakingExtProtocolServer::EndParticipation | |
Host migration due to the leaving of the joint session host. | MatchmakingClient::FindByID |