Я использую этот код в файле node.js, а мой mqtt-сервер - cloudmqtt.
В результате выполнения скрипта mqtt возникла проблема.
Я должен написать clientid и нажать «Очистить сессию»button.
Если я этого не сделал, сообщения не могут приходить друг к другу.
Я пытаюсь найти mqtt для пакетов npm, но я не могу найти что-то, что можеточистить сеансы.
Можете ли вы научить меня, как можно отправить сообщение?
****** результат записи *****
λ узел test_cloudmqtt.js mqtt2 подключенТриггер mqtt1 с именем 0 триггер mqtt1 с именем1 триггер mqtt1 с именем2 триггер mqtt1 с именем триггера 3 mqtt1 с именем триггера 5 Триггер mqtt1 с вызовом триггера mqtt1 с именем7 триггер 1 mqtt1 с именем 9 mqtt1 подключенный0 mqtt1 подключенный 1 mqtt1 связанный mqtt1 подключенный mqt1 подключен mq связанный 1 mqt1 подключенMSG: Привет mqtt0 MSG: Привет mqtt1 MSG: Привет mqtt2 MSG: Привет mqtt3 MSG: Привет mqtt4 MSG: Привет mqtt5 MSG: Онllo mqtt6 MSG: привет mqtt7 MSG: привет mqtt8 MSG: привет mqtt9
var client1 = mqtt.connect(cloudmqtt.mqttHost, {
port: cloudmqtt.MQTTPORT,
username: cloudmqtt.mqttMasterId,
password: cloudmqtt.mqttMasterPw});
function testmqtt(param) {
console.log("mqtt1 trigger called" + param.toString());
client1.on('connect', function () {
client1.publish('/kym_test', 'Hello mqtt' + param.toString());
console.log("mqtt1 connected" + param.toString());
/*client1.end(function () {
console.log("mqtt1 disconnect");
});*/
});
client1.on('error', function () {
console.log("mqtt1 error");
});
}
var client2 = mqtt.connect(cloudmqtt.mqttHost, {
port: cloudmqtt.MQTTPORT,
username: 'kym2',
password: 'xxxx'});
client2.on('connect', function () {
console.log("mqtt2 connected");
client2.subscribe('/kym_test');
});
client2.on('message', function (topic, message) {
console.log("MSG : " + message.toString());
});
for(var a=0; a < 10; a++) {
setTimeout(testmqtt, 1000, a); //
}