受信メッセージ

メッセージイベントを処理することによってメッセージが受信されます。形式は以下の通りです:

function (topic, message, packet) {}

以下に示すのは例示コードです:

//handle incoming messages
client.on('message',function(topic, message, packet){
	console.log("message is "+ message);
	console.log("topic is "+ topic);
	console.log("packet =" +JSON.stringify(packet));
	console.log("packet retain =" +packet.retain);
});

メッセージにはテキストメッセージが含まれ、パケットオブジェクトには、以下に示すように、リテインフラグなどのメッセージプロパティに加えて、メッセージがバッファオブジェクトとして含まれています

message is {"volts":240}
topic is testtopic
packet ={"cmd":"publish","retain":false,"qos":0,"dup":false,"length":27,"topic":"testtopic","payload":{"type":"Buffer","data":[123,34,118,111,108,116,115,34,58,50,52,48,125]},"properties":{"subscriptionIdentifier":1}}

サンプルコード

次のコードは on.message() 関数の一部です。

メッセージが保持されているかを検出する

メッセージからサブスクリプション識別子を抽出します

受信したJSONペイロードで作業する

受信したJSONペイロードを使用するには、まず次を使用してペイロードをJavaScriptオブジェクトに変換する必要があります:

受信したメッセージの例です

電圧を得るために、私たちは以下のことを行います

ペイロードがJSONでない可能性があるため、テストする必要があります。以下に示すように、try catchシーケンス(参照)を使用するのが最も簡単な方法です。

Last updated