独自サーバーの処理を行うライブラリです。 [詳解]
#include <RendezVous/Services/Jugem/IndependentServer/src/Client/IndependentServer.h>
公開メンバ関数 | |
IndependentServer () | |
コンストラクタです。 | |
virtual | ~IndependentServer () |
デストラクタです。 | |
qInt32 | GetLastErrorCode () const |
認証トークンの要求処理で発生したネットワークエラーコードを取得します。 [詳解] | |
qResult | RequestAuthenticationToken (ProtocolCallContext *pContext, qUnsignedInt32 gameServerId, const qChar8 *pKeyHash, qChar8 *pAuthToken, qBool checkParentalControl=true) |
独自サーバーの認証トークンを要求します。 [詳解] | |
静的公開メンバ関数 | |
static qBool | GetServerTime (DateTime *pServerTime) |
サーバー時刻(UTC)を取得します。 [詳解] | |
静的公開変数類 | |
static const qUnsignedInt32 | AUTH_TOKEN_SIZE = 256 |
認証トークン取得時に必要なバッファサイズです。認証トークンのNULL終端文字分を含みます。 | |
独自サーバーの処理を行うライブラリです。
内部で nn::os::Event オブジェクトを一つ使用します。
非同期処理が行われている間は定期的にScheduler::Dispatch() を呼び出す必要があります。
qResult nn::nex::IndependentServer::RequestAuthenticationToken | ( | ProtocolCallContext * | pContext, |
qUnsignedInt32 | gameServerId, | ||
const qChar8 * | pKeyHash, | ||
qChar8 * | pAuthToken, | ||
qBool | checkParentalControl = true |
||
) |
独自サーバーの認証トークンを要求します。
認証サーバーでゲームの認証処理を行った後、認証トークンの取得を行います。 本体が プリンシパル ID 未取得の場合、本関数の非同期処理中にフレンドサーバへのアクセスを行い プリンシパル ID を取得します。
本関数はライブラリ内部で nn::friends ライブラリの非同期処理を呼び出します。 本関数の非同期処理実行中に nn::friends::Login() などの nn::friends ライブラリの 非同期処理を呼びださないでください。
本関数では、 ProtocolCallContext::SetTimeout() や ProtocolCallContext::Cancel() の指定は無効です。これらの操作を行わないでください。
非同期処理の結果は CallContext::GetOutcome() で成功・失敗の判断を行います。 失敗の場合、ネットワークエラーコードは GetLastErrorCode() で取得して下さい。
checkParentalControl が false の場合、「他のユーザーとのインターネット通信」のペアレンタルコントロールの チェックを行いません。そのため、サービス内容に応じて正しく設定するようにしてください。
[in,out] | pContext | 呼び出し情報。 |
[in] | gameServerId | ゲームサーバ ID。 |
[in] | pKeyHash | キーハッシュ値。 |
[out] | pAuthToken | 認証トークンを受け取るバッファ。 バッファサイズは AUTH_TOKEN_SIZE 以上にして下さい。 |
[in] | checkParentalControl | ペアレンタルコントロールのチェックを行うかどうか。 |
"QSUCCESS(Core,Success)" 処理の起動に成功。
"QERROR(Core,InvalidArgument)" 引数が不正。
"QERROR(Core,CallInitiationFailure)" CallContext の状態が不正。
"QERROR(FPD,NotInitialized)" フレンドライブラリが初期化されていない。
"QERROR(FPD,NotConnected)" NFS にログインしていない。(SDK 3.2より前のSDKを使用している場合)
qInt32 nn::nex::IndependentServer::GetLastErrorCode | ( | ) | const |
認証トークンの要求処理で発生したネットワークエラーコードを取得します。
RequestAuthenticationToken() の非同期処理に失敗した場合にのみ有効な値がセットされます。