AM900E MQTTAT指令

AM900E MQTT AT指令

 

------------------------------------------------------------------------------------------------------

V1.0 版


1.1  AT+MQTTCON 

  

MQTT连接命令

设置命令

AT+MQTTCON=”ip”,port,”clientid””userid”,”passwd”,keeplive,Cleansession,willflag,willretain,willqos,”willtopic”,”willmsg”

  

OK/ERROR

主动上送结果码

连接成功:

CONNECT OK

 

 

 

 

 

 

 

参数说明

ip :           mqtt服务器ip地址

port :         mqtt服务器端口号

clientid :     设备id,1~64字节

userid :       用户名,无用户名可缺省(填””),1~64字节

passwd :       密码,无密码可缺省(填””),1~64字节

keeplive :     保活时间,0~65535秒

Cleansession : 清理会话标志,=1服务器服务器会清除会话,=0则保留会话

Willflag :     遗嘱标志位,=0,后面所有will参数可以缺省不填;=1,需要添加。

Willretain :   遗嘱保留标志位,=1,服务器会将遗嘱消息作为保留消息保存,=0不做保存。

Willqos :      遗嘱服务质量等级,与publish发布消息服务质量等级用法一致,可参看mqtt官方协议文档。

Willtopic :    遗嘱标题

Willmsg :      遗嘱消息

 

  

  注:带“”的数据表示,传入参数需为字符串,不带“”的传入参数为数字。

【举例】

 

连接中移动onenet的MQTT:

 

在中移动onenet建立的接入协议为MQTT的设备信息如下:

clientid :31059572

userid : 138013

passwd : PUB123456

不带遗嘱消息的命令如下:

AT+CGATT=1

 

OK

AT+CGDCONT=1,"IP","cmmtm"

 

OK

 

AT+CGACT=1,1

 

OK

 

AT+MQTTCONN="183.230.40.39",6002,"31059572","138013","PUB123456",120,1,0

 

OK

 

CONNECT OK

 

CONNACK session present 0, rc 0

 

OK

 

 

1.2  AT+MQTTPUB

  

发布消息命令

设置命令

AT+MQTTPUB=”payload”, payloadlen, qos, dup, retain, topic, packid

  

OK/ERROR

 

 

 

参数说明

Payload :    有效载荷(需要上传的有效数据)

Payloadlen : 有效载荷长度

Qos :        服务质量

Dup :        重发标志

Retain :     保留标志位

Topic :      标题(0~100字节)

Packid :     报文标识符(0~65535)

 

 

  注:带“”的数据表示,传入参数需为字符串,不带“”的传入参数为数字。

【举例】

 

AT+MQTTPUB="{\"sensor\":\"1\"}",14,2,0,0,"$dp",3

 

OK

 

PUBREC dup 0, packet id 3

 

OK

 

 

1.3  AT+MQTTPUBACK

  

收到发布消息确认

执行命令

AT+MQTTPUBACK=packid

  

OK/ERROR

参数说明

Packid :     报文标识符(0~65535)

 

 

 

1.4  AT+MQTTPUBREC

  

发布消息收到

执行命令

AT+MQTTPUBREC=packid

  

OK/ERROR

参数说明

Packid :     报文标识符(0~65535)

 

 

1.5  AT+MQTTPUBREL

  

发布消息释放

执行命令

AT+MQTTPUBREL=packid

  

OK/ERROR

参数说明

Packid :     报文标识符(0~65535)

 

 

1.6  AT+MQTTPUBCOMP

  

发布消息完成

执行命令

AT+MQTTPUBCOMP=packid

  

OK/ERROR

参数说明

Packid :     报文标识符(0~65535)

 

 

 

1.7  AT+MQTTSUB

  

订阅请求

设置命令

AT+MQTTSUB=dup, packid, count,"topicfilter", qos

  

OK/ERROR

 

 

参数说明

Dup :         重发标志

Packid :      报文标识符(0~65535)

Count :       订阅数量

Topicfilter : 主题名(是否支持通配符过滤由服务器端决定)

Qos :         服务质量

 

  

注:带“”的数据表示,传入参数需为字符串,不带“”的传入参数为数字。

【举例】

 

AT+MQTTSUB=1,1,1,"sensor1",0

 

OK

 

SUBACK packet id 1 count 1 granted qos 0

 

OK

 

 

1.8  AT+MQTTUNSUB

  

取消订阅

设置命令

AT+MQTTUNSUB=packid, count, "topicfilter", dup

  

OK/ERROR

 

 

参数说明

Dup :         重发标志

Packid :      报文标识符(0~65535)

Count :       订阅数量

Topicfilter : 主题名(是否支持通配符过滤由服务器端决定)

 

  注:带“”的数据表示,传入参数需为字符串,不带“”的传入参数为数字。

【举例】

 

AT+MQTTUNSUB=1,1,"sensor1",0

 

OK

 

UNSUBACK packet id 1

 

OK

 

1.9  AT+MQTTPING

  

客户端发送PING(连接保活)命令

设置命令

AT+MQTTPING

  

OK/ERROR

  

【举例】

 

AT+MQTTPING

 

OK

 

PINGRESP

 

OK

 

 

1.10  AT+MQTTDISCONN

  

断开连接

设置命令

AT+MQTTDISCONN

  

OK/ERROR

 

 

【举例】

AT+MQTTDISCONN

 

OK

 

OK

 ------------------------------------------------------------------------------------------------------------------------------------------


V2.0版


1.11  MQTT连接命令 AT+AMMQTTCONN

  

MQTT连接命令

设置命令

AT+AMMQTTCONN=<host>,<port>,<clientid>,<keepalive>,<cleansession>,

[username],[password]

  

OK/ERROR

主动上送结果码

连接成功:

OK

 

 

 

参数说明

host:          mqtt服务器ip地址或域名

port :         mqtt服务器端口号

clientid :     设备id,1~64字节

userid :       用户名,无用户名可缺省(填””),1~64字节

passwd :       密码,无密码可缺省(填””),1~64字节

keeplive :     保活时间,0~65535秒

Cleansession : 清理会话标志,=1服务器服务器会清除会话,=0则保留会话

 

【举例】

 

AT+AMMQTTCONN="218.11.0.64",1883,"FESA234FBDS24|securemode=3,signmethod=hmacsha1,timestamp=789|",120,0,"AM21E01&a1VzBnXvVEz","b4570fd627b5bde316e6012d6a86918336fb5a74"

 

OK

 

 

1.12  AT+AMMQTTSUBUNSUB

  

订阅/取消订阅 命令

设置命令

AT+MQTTSUBUNSUB=<topic>,<sub flag>,<qos>

  

OK/ERROR

 

 

 

参数说明

qos :        服务质量

sub flag:    订阅取消订阅标志:0取消订阅,1订阅

Topic :      标题(0~24字节)

 

 

 

【举例】

AT+AMMQTTSUBUNSUB="/sys/a1VzBnXvVEz/AM21E01/thing/service/property/set",1,1

OK

1.13  AT+AMQTTPUB

  

发布消息命令

设置命令

AT+MQTTPUB=<topic>,<message>,<qos>,<duplicate>,<retain>

  

OK/ERROR

 

 

 

参数说明

topic :      标题(0~24字节)

message:     发布数据,0~512字节

qos :        服务质量

duplicate:        重发标志

retain:     保留标志位

 

 

【举例】

AT+AMMQTTPUB="/sys/a1VzBnXvVEz/AM21E01/thing/event/property/post","{\"id\":\"789\",\"version\":\"1.0\",\"params\":{\"LightSwitch\":0},\"method\":\"thing.event.property.post\"}",1,0,0

 

OK

1.14 AT+AMQTTDISCONN

  

断开连接

设置命令

AT+AMMQTTDISCONN

  

OK/ERROR

 

 

【举例】

AT+AMMQTTDISCONN

 

OK