実装したいシナリオは、まずサービスがmqttブローカーに接続します。ブローカーの私のmqttクライアントが接続され、他のブローカーに接続しました。これはnodejsライブラリーを使って行うことができますか?nodejsを使用して別のブローカーから切断した後、mqttブローカーに接続します。
var mqtt = require('mqtt')
var client = mqtt.connect('mqtt://192.168.100.3')
client.on('connect', function() {
console.log("connected to broker")
client.subscribe('mqtt_node_subscribe')
client.publish('mqtt_node_publish', 'Hello mqtt')
})
client.on('close',function(){
console.log("connection closed")
})
client.on('message', function (topic, message) {
// message is Buffer
console.log("message arrived")
client.end()
client = mqtt.connect('mqtt://192.168.100.14')
}})
切断コンソールメッセージがされた後、私は、現在のブローカーから切断することができたが、他の1に接続することができません:
connected to broker
message arrived
connection closed
'close''イベントの中で2番目の' connect() 'を置き換えてみてください。また、そうでなければ 'error'イベントを監視するのが良いでしょう。 – alalp