完了フラグによる監視(Publish)

publishインスタンスにはPublish送信完了を表すプロパティが用意されており、このフラグを監視することで送信完了を判断することができます。

詳細

クラス 関数名
MQTTPublishRequest isDone
引数名 説明
なし - -
戻り値(型) 説明
bool 送信完了状態

tips用アイコン

  • QoS設定 0の場合はPublish送信リクエスト実行時にフラグがtrue設定されます。
  • 送信状態に応じて以下の戻り値が返却されます。
    • 送信完了true
    • 送信中false

実装例

//MagellanManagerインスタンス取得
MagellanManager *mng = MagellanManager::getInstance();

//クライアントハンドル生成
MagellanClientHandle mHandle = mng->createClient(“example.com”, 443,”CONSUMER_KEY”,”CONSUMER_SECRET”);

//初期化
bool result = mng->initializePubsub(mHandle, “1.0.0”, “pubsubClientID”);
:
:(※省略)
:
//Publishインスタンス生成
PubSub_PublishRequest *pub = new PubSub_PublishRequest("Topic", MQTT_QOS_FIRE_AND_FORGET);

const char *data = "送信データ";

//Publishデータ設定
pub->setPublishData(data, strlen(data)); 

//Publishリクエスト送信
mng->sendPubSub_PublishRequest(mHandle, pub);
:
:(※省略)
:
//完了フラグによる監視
if(pub->isDone())
{
	//リクエスト処理完了した際の処理
}