下载地址:
链接: https://pan.baidu.com/s/1kevCjKW0DrOexVihF6lfnw
提取码: jtda
订阅发布
订阅包含主题筛选器(Topic Filter)和最大服务质量(QoS)。订阅会与一个会话(Session)关联。一个会话可以包含多个订阅。每一个会话中的每个订阅都有一个不同的主题筛选器。例如,如果客户端2订阅了主题A上的消息,则当客户端1发送关于该主题的消息时,它会收到通知。如果客户端3订阅了主题A和主题B,则它将接收有关这两个主题上的消息的通知。
会话
每个客户端与服务器建立连接后就是一个会话,客户端和服务器之间有状态交互。会话存在于一个网络之间,也可能在客户端和服务器之间跨越多个连续的网络连接。
主题
连接到一个应用程序消息的标签,该标签与服务器的订阅相匹配。服务器会将消息发送给订阅所匹配标签的每个客户端。
主题筛选
一个对主题名通配符筛选器,在订阅表达式中使用,表示订阅所匹配到的多个主题。这里通配略过。
负载
消息订阅者所具体接收的内容。
Qt MQTT
概述
Qt MQTT能够创建可以通过MQ遥测传输(MQTT)协议进行通信的应用程序和设备。它完全符合MQTT协议规范。Qt MQTT模块提供了MQTT协议规范的符合标准的实现。它使应用程序可以充当遥测显示器,并充当发布遥测数据的设备。支持的版本是MQTT 3.1,MQTT 3.1.1和MQTT 5.0。
Qt MQTT是不包含代理的客户端解决方案。它特别适合开发嵌入式设备的遥测应用。但是,Qt MQTT没有外部依赖性,因此,已实现的客户端可以在所有受支持的Qt平台上运行。
下载QtMqtt
github地址:https://github.com/qt/qtmqtt
git clone https://codereview.qt-project.org/qt/qtmqtt
编译QtMqtt
mingw或msvc均可构建qtmqtt.pro
搭建环境
将构建出来的lib文件夹除了.a、.so、.lib、.dll文件外全部删除;将src内所有头文件提取,头文件修改为Qt引用类类型。
详细配置如上文件方式,自行了解。
代码测试
// 简易链接,具体查看官方文档 QMqttClient *m_client = new QMqttClient; m_client->setHostname(xxx); m_client->setPort(yyy); m_client->connectToHost(); // signal 数据接收 // QMqttClient::messageReceived
https://download.csdn.net/download/automoblie0/11812878