我上CloudMQTT
運行代理收到同一消息的倍數和我的JS代碼如下所示:MQTT.js訂閱從
var mqtt_url = URL.parse('mqtt://m10.cloudmqtt.com:15272' || 'mqtt://localhost:1883');
var auth = (mqtt_url.auth || ':').split(':');
var url = "mqtt://" + mqtt_url.host;
var options = {
port: mqtt_url.port,
clientId: 'mqttjs_' + Math.random().toString(16).substr(2, 8),
username: USERNAME,
password: PASSWORD,
};
// Create a client connection
var client = mqtt.connect(url, options);
client.on('connect', function() { // When connected
// subscribe to a topic
client.subscribe('relay', function() {
// when a message arrives, do something with it
client.on('message', function(topic, message, packet) {
// console.log(packet);
console.log("Received '" + message + "' on '" + topic + "'");
});
});
// subscribe to a topic
client.subscribe('photoresistor', function() {
// when a message arrives, do something with it
client.on('message', function(topic, message, packet) {
console.log("Received '" + message + "' on '" + topic + "'");
});
});
// publish a message to a topic
client.publish('relay', value, function() {
console.log("Message of ", value, " is published");
// client.end(); // Close the connection when published
});
});
我有我的ESP8266
迷上了光敏電阻,它出版光敏電阻值爲photoresistor
,每5秒一次。
那麼,我每5秒鐘就會在我的節點服務器(MeteorJS)上得到四個相同的控制檯日誌。
I20170907-19:33:51.421(-4)? Received '156' on 'photoresistor'
I20170907-19:33:51.423(-4)? Received '156' on 'photoresistor'
I20170907-19:33:51.424(-4)? Received '156' on 'photoresistor'
I20170907-19:33:51.425(-4)? Received '156' on 'photoresistor'
I20170907-19:33:57.741(-4)? Received '39' on 'photoresistor'
I20170907-19:33:57.742(-4)? Received '39' on 'photoresistor'
I20170907-19:33:57.743(-4)? Received '39' on 'photoresistor'
I20170907-19:33:57.743(-4)? Received '39' on 'photoresistor'
I20170907-19:34:05.465(-4)? Received '37' on 'photoresistor'
I20170907-19:34:05.467(-4)? Received '37' on 'photoresistor'
I20170907-19:34:05.468(-4)? Received '37' on 'photoresistor'
I20170907-19:34:05.470(-4)? Received '37' on 'photoresistor'
I20170907-19:34:10.665(-4)? Received '161' on 'photoresistor'
I20170907-19:34:10.667(-4)? Received '161' on 'photoresistor'
I20170907-19:34:10.667(-4)? Received '161' on 'photoresistor'
I20170907-19:34:10.668(-4)? Received '161' on 'photoresistor'
任何想法可能導致client.subscribe
功能或CloudMQTT對同一消息的輸出倍數?
您是否使用其他客戶端(例如mosquitto_sub)檢查是否有多個消息正在發佈? – hardillb
你有沒有到過這個底部?我看到完全相同的問題。有任何想法嗎? –