三、NT35E标准MQTT

      用户在使用CAT1模组MQTT协议对接自己的服务器,有时会遇到设备无法连接服务器问题(比如提示+ECMTCON:0,0,5连接服务器被拒绝,认证失败)。此时可以通过标准的MQTT服务器进行对比,因为用户自己的服务器一般加入校验信息,导致模组&MQTT服务器无法连接。

       Eclipse Mosquitto是一个开源消息代理,实现了MQTT协议版本3.1和3.1.1,这里使用该服务器进行测试。针对该服务器更详细的介绍也可以参考//www.greatytc.com/p/b6a75bfbe82f

       MQTT有个重要的参数QOS,因下面使用较多,这里列出便于后续查看:

示例一般使用0或者2

一、使用指令解析

1.1 建立TCP连接

AT+ECMTOPEN=<tcpconnectID>,“<host_name>”,<port>

<tcpconnectID> 整型。 MQTT Socket 标识符。范围: 0~4

<host_name>  IP 地址或域名

<port> 整型。服务器端口

示例:AT+ECMTOPEN=0, "test.mosquitto.org",1883   //建立 tcp

返回值:+ECMTOPEN:<tcpconnectID>,<result> 

<tcpconnectID> Integer type,MQTT socket identifier. The value is 0

<result> 1 Failed to open network,0 Opened network successfully

1.2 创建MQTT连接

AT+ECMTCONN=<tcpconnectID>,“<clientID>”[,“<username>”[,“<password>”]]

<tcpconnectID> MQTT socket identifier. The value is 0

“<clientID>” 用户不指定标准服务器会自行创建

“<username>”,“<password>” 标准MQTT服务器不使用

示例:AT+ECMTCONN=0   //在 mosquitto 平台上注册设备

返回值:+ECMTCONN:<tcpconnectID>,<result>[,<ret_code>]

返回值说明,result为2正常

1.3 订阅

AT+ECMTSUB=<tcpconnectID>,<msgID>,“<topic>”,<qos>

<tcpconnectID> MQTT socket identifier. The value is 0

<msgID> 任意填写,Message identifier of packet. The range is 1-65535

<topic> String type,Topic that the client wants to subscribe to or unsubscribe from.

<qos> Message QoS, can be 0,1 or 2

示例:AT+ECMTSUB=0,1,”test”,2 //订阅 topic

返回值:+ECMTSUB:<tcpconnectID>,<msgID>,<result>[,<value>]

返回值:1正常 

额外指令:AT+ECMTUNS=0,4, “test” //取消订阅 topic

1.4 发布

AT+ECMTPUB=<tcpconnectID>,<msgID>,<qos>,<retain>,“<topic>”,“<payload>"

<tcpconnectID> MQTT socket identifier. The value is 0

<msgID> Message identifier of packet.

<qos> Message QoS, can be 0,1 or 2

<retain> 0 Server should not retain the message   1 Server should retain the message

<topic> String type

<payload> String type

示例:AT+ECMTPUB=0,0,0,0,"test","hello" //发送数据给 mosquitto 平台

+ECMTPUB:<tcpconnectID>,<msgID>,<result>[,<value>]

关注result

额外指令:AT+ECMTDISC=0  //删除 mqtt client 和 mqtt 连接

二、模组通信示例

模组订阅自己发送的内容示例
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容