本文介绍如何通过 AT
指令对接阿里云 IoT 物联网平台.
AT+MQTT
指令说明参考 AT+MQTT 介绍
当前阿里云 IoT 物联网平台 iotkit-embedded 支持三种 MQTT
方式接入阿里云, 分别是:
MQTT
基于设备秘钥认证方式 (包括一机一密,一型一密,子设备动态注册)MQTT
基于 ID2 认证方式MQTT
基于 X.509 证书认证方式本文以 AT+MQTT
基于设备秘钥认证方式,展示一机一密具体过程。
读者需根据 阿里云物联网平台文档中心, 获取 MQTT 连接参数:
ClientID
用户名
密码
服务器地址
服务器端口
建议:
多阅读几遍 阿里云物联网平台文档中心, 实际操作, 加深印象, 尤其是下面文档:
当前 AT+MQTT
连接阿里云,是基于设备秘钥认证方式, 基于 TCP, 无证书认证方式。
MQTT 连接需要使用上述准备阶段中的: ClientID
, 用户名
, 密码
, 服务器地址
, 服务器端口
.
AT+CWMODE=1
AT+CWJAP="ssid","password"
AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"
AT+CIPSNTPTIME?
AT+MQTTUSERCFG=0,1,"","","",0,0,""
AT+MQTTUSERNAME=0,"esp-at-001&a1nYdyIs7du"
AT+MQTTPASSWORD=0,"02CE99D94D22B22CD2A6033098B96C0ED157C3F127CFBBE41D5A131A5B0B1886"
AT+MQTTCLIENTID=0,"a1nYdyIs7du.esp-at-001|timestamp=2524608000000\,_v=sdk-c-3.0.1\,securemode=3\,signmethod=hmacsha256\,lan=C\,gw=0\,ext=0|"
AT+MQTTCONN=0,"a1nYdyIs7du.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1
AT+MQTTSUB=0,"/a1nYdyIs7du/esp-at-001/user/get",1
AT+MQTTPUB=0,"/a1nYdyIs7du/esp-at-001/user/get","hello\, aliyun!",1,0
注意:
AT+MQTTUSERCFG
中第二参数为 1, 即基于 TCP, 无证书校验的方式AT+MQTTCLIENTID
中第二参数为准备阶段的 ClientID
AT+MQTTUSERNAME
中第二参数为准备阶段的 用户名
AT+MQTTPASSWORD
中第二参数为准备阶段的 密码
AT+MQTTCONN=0,"",1883,1
中, endpoint
为准备阶段的 服务器名称
, 端口 1883
不可更改MQTT topic
, 注意阅读 自定义Topic 中介绍MQTT
消息, 需用户 配置 AMQP 服务端订阅 等方式去接收正常交互 LOG 如下: