CTR NEX API Reference
nn::nex::MessagingClient クラス

インスタントメッセージ機能を利用するためのクラスです [詳解]

#include <RendezVous/Services/Messaging/src/Client/MessagingClient.h>

+ nn::nex::MessagingClient の継承関係図

公開メンバ関数

 MessagingClient ()
 コンストラクタです
 
virtual qBool Bind (Credentials *pCredentials)
 サービスを利用するための証明書を登録します。 [詳解]
 
CredentialsGetCredentials () const
 Bind() された Credentials オブジェクトを取得します。 [詳解]
 
void RegisterMessagingNotificationHandler (MessagingNotificationHandler *pHandler)
 メッセージハンドラを登録します [詳解]
 
qBool SendChat (ProtocolCallContext *pContext, GatheringID gid, const UserMessageDataHolder &oUserMessage)
 ギャザリングの参加者全員にインスタントメッセージを送信します [詳解]
 
qBool SendInstant (ProtocolCallContext *pContext, PrincipalID pid, const UserMessageDataHolder &oUserMessage)
 インスタントメッセージを送信します [詳解]
 
void SetDefaultCredentials (Credentials *pCredentials)
 
virtual qBool Unbind ()
 証明書の登録を解除します。 [詳解]
 
void UnregisterMessagingNotificationHandler ()
 登録されているメッセージハンドラを削除します。
 

詳解

インスタントメッセージ機能を利用するためのクラスです

関数詳解

qBool nn::nex::MessagingClient::SendInstant ( ProtocolCallContext pContext,
PrincipalID  pid,
const UserMessageDataHolder oUserMessage 
)

インスタントメッセージを送信します

Reliable 通信を使用して、指定したユーザーにゲームサーバー経由でインスタントメッセージを送信します。 非同期処理は、インスタントメッセージがゲームサーバーまで到達した段階で成功を返します。 そのため、メッセージが送信先に到達したかは非同期処理の結果からは分かりません。 ゲームサーバーまで到達したメッセージは、送信先がゲームサーバーと切断されていなければ到達性が保証されます。

引数
[in]pContext呼び出し情報。
[in]pid送信先の プリンシパル ID
[in]oUserMessageメッセージデータ


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

参照
MessagingNotificationHandler
qBool nn::nex::MessagingClient::SendChat ( ProtocolCallContext pContext,
GatheringID  gid,
const UserMessageDataHolder oUserMessage 
)

ギャザリングの参加者全員にインスタントメッセージを送信します

Reliable 通信を使用して、指定したギャザリングの参加者全員にゲームサーバー経由でインスタントメッセージを送信します。 非同期処理は、インスタントメッセージがゲームサーバーまで到達した段階で成功を返します。 そのため、メッセージが送信先に到達したかは非同期処理の結果からは分かりません。 ゲームサーバーまで到達したメッセージは、送信先がゲームサーバーと切断されていなければ到達性が保証されます。

永続ギャザリングに対して本関数を使用する場合は、永続ギャザリングの最大参加人数を PERSISTENT_GATHERING_CHAT_PARTICIPANTS_MAX 以下に設定する必要があります。

引数
[in]pContext呼び出し情報。
[in]gid送信先のギャザリングの ID
[in]oUserMessageメッセージデータ


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

参照
MessagingNotificationHandler
void nn::nex::MessagingClient::RegisterMessagingNotificationHandler ( MessagingNotificationHandler pHandler)

メッセージハンドラを登録します

メッセージハンドラを登録します。ハンドラーが登録されると通知メッセージを受信するたびに メッセージがハンドラーへ送られ、MessagingNotificationHandler::DeliverInstantMessage() が呼び出されます。

引数
[in]pHandlerメッセージハンドラ
void nn::nex::ServiceClient::SetDefaultCredentials ( Credentials pCredentials)
inherited
引数
pCredentialsThe default Credentials for this service.
注釈
It is up to each ServiceClient to use this method to set the current Credentials in each of his protocols.
virtual qBool nn::nex::ServiceClient::Bind ( Credentials pCredentials)
virtualinherited

サービスを利用するための証明書を登録します。

サービスを利用するための証明書をセットします。 機能を利用する前にセットする必要があります。NgsFacade::Login() の非同期処理に成功後、 NgsFacade::GetCredentials() で取得した証明書を引数に指定してください。 Bind() で証明書をセットした後もう一度 Bind() を呼び出すと証明書を差し替える事ができます。

引数
[in]pCredentialsサービスにアクセスするための証明書。


戻り値一覧:

true 成功。pCredentials が NULL でない場合は必ず成功します。

false pCredentials に NULL が指定された。

virtual qBool nn::nex::ServiceClient::Unbind ( )
virtualinherited

証明書の登録を解除します。

Bind() でセットされた証明書を解除します。Bind() が呼び出されていなくても本関数を呼び出すことができます。 本オブジェクトを破棄する際に自動的に Unbind() と同等の処理行われるため、明示的に呼び出す必要はありません。


戻り値一覧:

true 証明書の解除を行った。

false Bind() が行われていないため何も行わなかった。

Credentials* nn::nex::ServiceClient::GetCredentials ( ) const
inherited

Bind() された Credentials オブジェクトを取得します。

戻り値
Bind() された Credentials オブジェクト。Bind() されていない場合、NULL を返します。