实例:使用MQTT进行交互

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实例:使用MQTT进行交互相关的知识,希望对你有一定的参考价值。

参考技术A 最近在着手研究使用网页控制硬件的交互过程,发现mqtt协议有很多种语言的封装,整个思路也很清晰,就是一个客户端进行发布和订阅+服务器中间代理的过程,于是开始学习使用MQTT框架搭建交互平台。
客户端使用了MQTT.js,服务器使用mosca(基于nodejs)。

QoS在MQTT中有(摘自 MQ 遥测传输 (MQTT) V3.1 协议规范 ):

MQTT.js只是支持了MQTT协议,并没有支持QoS,也就是说,只支持最低级别的“至多一次”(QoS0)。

在MQTT协议中,一个MQTT数据包由:固定头(Fixed header)、可变头(Variable header)、消息体(payload)三部分构成。
这里只了解消息体,固定头和可变头并不需要我们手动写。
payload消息体包含CONNECT、SUBSCRIBE、SUBACK、UNSUBSCRIBE四种类型的消息:

(1)Connect    与服务器建立连接。
(2)Disconnect    与服务器断开TCP/IP会话。
(3)Subscribe    订阅。
(4)UnSubscribe    取消订阅。
(5)Publish    发送消息请求,发送完成后返回应用程序线程。
二、实现(具体的API稍后呈现)

以上是关于实例:使用MQTT进行交互的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu 16.04安装测试MQTT Mosquitto

如何在 symfony 中实例化多个 mqtt 客户端

mqtt第一次接触

org.eclipse.paho.mqtt.java-1.0.2 怎么用

微信硬件平台 1 ESP8266通过mqtt交互消息

使用springmvc和ajax进行前后端交互的简单实例