MQTT
- 建立标准mqtt连接
- 订阅一个topic
- 取消已经订阅的Topic
- 发布消息
- 重新连接mqtt
- 断开mqtt连接
- Topic接收到消息
建立标准mqtt连接
建立mqtt连接。
请求方式:
"|4|1|1|host|port|iotid|iotpwd|\r"
参数:
host
port
mqtt连接的端口
iotid
物联网账号
iotpwd
物联网账号密码
返回值:
"|4|1|1|1|\r"
mqtt连接状态:连接成功
"|4|1|1|2|reason|\r"
mqtt连接状态:连接失败,字符串reason表示失败的原因
Arduino样例:
softSerial.print("|4|1|1|iot.dfrobot.com.cn|1883|Skv3zKyNb|r1lD3ztJ4b|\r");
订阅一个topic
物联网有很多设备,通过订阅设备的topic可以监听物联网设备接收到的消息。
请求方式:
"|4|1|2|topic|\r"
参数:
topic
设置订阅的topic,获取设备topic可参考教程
返回值:
"|4|1|2|1|\r"
订阅成功
"|4|1|2|2|1|\r"
topic订阅达到上限(一个OBLOQ最多订阅5个topic),订阅失败
"|4|1|2|2|2|\r"
topic订阅失败
Arduino样例:
softSerial.print("|4|1|2|BJpHJt1VW|\r");
取消已经订阅的Topic
一个OBLOQ最多同时订阅5个topic,可以对已经订阅的topic进行取消订阅。
请求方式:
"|4|1|6|topic|\r"
参数:
topic
取消订阅的topic,获取设备topic可参考教程
返回值:
"|4|1|6|1|\r"
取消订阅成功
"|4|1|6|2|2|\r"
取消订阅失败
"|4|1|6|2|1|\r"
topic不存在,取消订阅失败
Arduino样例:
softSerial.print("|4|1|6|BJpHJt1VW|\r");
发布消息
物联网有很多设备,通过这条指令可以向某个特定的物联网设备发送特定的消息内容。
请求方式:
"|4|1|3|topic|message|"
参数:
topic
设置订阅的topic,获取设备topic可参考教程
message
发布消息的内容
返回值:
"|4|1|3|1|\r"
消息发送成功
"|4|1|3|2|\r"
消息发送失败
Arduino样例:
softSerial.print("|4|1|3|BJpHJt1VW|hello|\r");
重新连接mqtt
重新建立mqtt连接,前提是必须已经通过Iot_id,Iot_pwd建立过一次mqtt连接。
请求方式:
"|4|1|5|\r"
返回值:
"|4|1|1|1|\r"
mqtt连接状态:连接成功
"|4|1|1|2|reason|\r"
mqtt连接状态:连接失败,字符串reason表示失败的原因
Arduino样例:
softSerial.print("|4|1|5|\r");
断开mqtt连接
断开mqtt连接,前提是必须已经通过Iot_id,Iot_pwd建立过一次mqtt连接。
请求方式:
"|4|1|4|\r"
返回值:
"|4|1|4|1|\r"
断开成功
"|4|1|4|2|\r"
断开失败
Arduino样例:
softSerial.print("|4|1|4|\r");
Topic接收到消息
当订阅的topic接收到消息后,会返回接收到的消息数据。
请求方式:
无
返回值:
"|4|1|5|topic|message|\r"
返回接收到的消息
参数
topic
返回消息的topic
message
返回的消息内容
希望对你有帮助。