MQTT是一种基于公布/订阅(publish/subscribe)模式的"轻量级"通信协定,该协定构建于TCP/IP协定上,由IBM在1999年公布。MQTT最大长处在于,能够以极少的代码和无限的带宽,为连贯近程设施提供实时牢靠的音讯服务。作为一种低开销、低带宽占用的即时通讯协定,使其在物联网、小型设施、挪动利用等方面有较宽泛的利用。
一.引入mqtt
npm install mqtt -g
二.应用
1.注册
var alias = Math.random().toString(16).substr(2, 8) client = mqtt.connect(process.env.MQTT, { //注册地址username: process.env.MQ_NAME, //注册mqtt 用户名password: process.env.MQ_PD, //注册mqtt 明码protocolVersion: 4,protocolId: 'MQTT',clientId: alias, // 要保障全局惟一clean: true // 管制是否授受离线音讯,false能够承受离线音讯})
2.注册主题*(主题mqtt发送音讯的对象)
client.on('connect', function () { client.subscribe(userName, function (err) { if (!err) { console.log('Hello mqtt') client.publish('presence', 'Hello mqtt') } }) })
userName 为主题名(例如:username)
3.承受音讯
client.on('message', function (topic, message) { // console.log(topic) // console.log(message.toString()) msg = message
})
4.敞开mqtt
client.on('end', function (err) { client.end()})
参考文献(https://github.com/mqttjs/MQT...)