Subscribe登録

対象のクライアントハンドルSubscribeインスタンスを指定して、Subscribeの登録を行います。

Subscribeの登録はManagerクラスを通じて行われます。

詳細

クラス 関数名
Manager RegisterPubSub_Subscriber
要否 引数名 説明
任意 client ClientHandle クライアントハンドル
必須 sub PubSub_Subscriber Subscribeインスタンス
戻り値(型) 説明
PubSubRegisterStatus Subscribe登録リクエスト結果

tips用アイコン

  • 任意のクライアントハンドルを使用してリクエストを行う場合は第1引数にクライアントハンドルを指定してください。
  • デフォルトクライアントを使用する場合はクライアントハンドルの指定は不要です。その際は必ず CreateClient の第5引数でデフォルトクライアントを有効にしてください。
  • Subscribe登録は 接続 時に指定したクライアントハンドル(接続先)毎に行います。
  • Subscribe登録はMQTT接続が確立している状態で実行してください。
    MQTT未接続の状態で登録を行う事はできません。
  • Subscribe登録リクエスト結果はSubscribe登録リクエスト実行に対する結果です。
    Subscribe登録完了の確認は、 コールバック(Subscribe登録完了) もしくは Subscribe登録状況の確認 で行ってください。

実装例

//コールバック(接続)
void ConnectCallback(Clienthandle client, Manager.PubSubConnectStatus status)
{
    //コールバック(接続)処理
}

//コールバック(切断)
void DisconnectCallback(Clienthandle client, Manager.PubSubDisConnectStatus status)
{
    //コールバック(切断)処理
} 

//クライアントハンドル生成
Magellan.ClientHandle client = Magellan.Manager.Instance.CreateClient(“example.com”,1883,”CONSUMER_KEY”,”CONSUMER_SECRET”);

//初期化
Magellan.Manager.Instance.InitializePubSub(client, “0.0.1”);

//Consumer Secretを使用した接続
Magellan.Manager.Instance.ConnectPubSub(client, 30, ConnectCallback,DisconnectCallback);

//トークン文字列を使用した接続
Magellan.Manager.Instance.ConnectPubSub(client,“Token”,30, ConnectCallback,DisconnectCallback);
:
:(※省略)
:
//Subscribeインスタンス生成
PubSub_Subscriber subscriber = new PubSub_Subscriber(“Topic”,PubSubQos.FireAndForget);

//Subscribe登録
Magellan.PubSubRegisterStatus status = Magellan.Manager.Instance.RegisterPubSub_Subscriber(client, subscriber);