The matchmaking analysis feature supports debugging by analyzing the matchmaking processes of the application. We recommend using this analysis feature after you have implemented the application's set of matchmaking specifications.
This feature is disabled by default. To enable the feature, make the following settings.
// Setting for the DebugSetting structure.
nn::pia::session::Session::DebugSetting debugSetting; // Setting for the matchmaking analysis feature. debugSetting.isEnableMatchmakeAnalysis = true; result = nn::pia::session::Session::SetDebugSetting(debugSetting); if ( result.IsFailure() ) { // Error handling. // Will not fail if called at the appropriate time. } // After this process succeeds, call Session::CreateInstance to create an instance of the Session class. //This enables the matchmaking analysis feature. |
After you have enabled the matchmaking analysis feature, the following analysis (problem detection) can be conducted.
The feature allows you to detect inconsistencies in the callbacks for session join-in approval. If all of the following conditions are met, a warning log is output to the host.
In the production environment, where there are multiple users, ResultJoinRequestDenied can happen often if the specification exists for the session join-in approval callback to return a determination of denial when sessions are open. This kind of potential problem in the application can be detected with a warning.
Even after host migration, the new host continues to detect inconsistencies.
If you are using an identification token for the join-in approval callback, you can use the following API to set which identification token to use for the inconsistency check.
// The identification token to use for the inconsistency check.
nn::pia::transport::Station::IdentificationToken token; // Set the identification token for the inconsistency check. nn::pia::session::Session::GetInstance()->SetMatchmakeAnalysisToken(&token); |