MQTT使用流程
## 1 MQTT client 参数配置
AT+MQTTCFG="183.230.40.39",6002,"528123244",60,"245878","123465",1
//配置服务器及账户信息
## 2 连接-订阅-推送-取消订阅
AT+MQTTOPEN=1,1,1,1,1,"","" 发送连接建立请求
OK
+MQTTOPEN:OK 连接成功
AT+MQTTSUB="topic",1 订阅主题 topic
+MQTTSUBACK:1,1,pyr 订阅成功响应
AT+MQTTPUB="topic",1,1,0,0,"abc" 发布数据,数据内容为字符串 abc
+MQTTPUBACK:1,0 发布数据响应,发布成功
AT+MQTTPUB="topic",1,0,0,3,"7E7A7A"
向已订阅主题 topic发布数据,输入十六进
制模式,此时终端将收到服务器下发的
publish 数据
+MQTTPUBACK:3,0 发布数据响应
+MQTTPUBLISH:0,1,0,1,topic,3,~zz 同时接收到订阅主题 topic下发数据
AT+MQTTPUB="topic",1,0,0,0,"abcdef" 向订阅主题发布数据,输入字符串数据
+MQTTPUBACK:4,0 收到发布响应
+MQTTPUBLISH:0,1,0,1,topic,6,abcdef 收发主题 topic下发消息
AT+MQTTUNSUB="topic" 取消订阅
+MQTTUNSUBACK:5,topic 取消订阅响应
AT+MQTTPUB="topic",1,0,0,0,"abcdef" 再次向 topic发布数据
+MQTTPUBACK:6,0 发布响应,此时不再收到 topic下发消息
## 3 断开连接-销毁参数配置
AT+MQTTDISC 断开连接
AT+MQTTDEL 释放资源,之后可以再次使用+MQTTCFG 进行配置
## 4 关于连接断开问题的说明
在使用模组 MQTT 功能时,如果在连接登录状态下模组在不做数据业务时(即未检测到服务
器下发数据),将按照+MQTTCFG 中配置的 KeepAlive 参数间隔时间触发发送心跳包,以检测
连接状态,当心跳连续三次(每次间隔 KeepAlive)不可达,将触发重连机制,每隔一定时
间重连一次,重连三次不成功即放弃重连,后续策略需要根据应用场景制定,一定时间间隔
如重启模组或重新发送+MQTTOPEN 发起连接请求。如果通过 AT+MQTTDISC 命令主动断开,将
不会触发重连。
+MQTTPINGRESP:OK 收到心跳响应
+MQTTPINGRESP:OK 收到心跳响应
+MQTTTO:5 第一次心跳超时
+MQTTTO:5 第二次心跳超时
+MQTTTO:5 第三次心跳超时
+MQTTREC:0 第一次重连
+MQTTREC:1 第二次重连
+MQTTREC:2 第三次重连
+MQTTDISC:OK 重连失败,断开提示