云服务器内容精选
-
使用限制 上行Topic是指设备向平台发送请求,或上报数据,或回复响应。 下行Topic是指平台向设备下发指令,或回复响应。 设备与平台建立连接后,需要订阅下行Topic(华为云平台中具有隐式订阅功能,若通信质量为Qos0,平台的系统topic无需订阅。),否则无法收到平台下发的指令或回复的响应。应用侧接口的调用,需要设备侧的配合,例如应用侧下发命令,设备侧需要先订阅“平台命令下发”的下行Topic,否则设备无法收到平台命令,应用下发命令的接口也会报超时。
-
主要控制报文类型 常见MQTT消息类型主要有CONNECT、SUBSCRIBE、PUBLISH、PINGREQ。 CONNECT:指客户端请求和服务端连接。有效载荷(Payload)的主要参数,参考设备连接鉴权填写。 SUBSCRIBE:订阅包括主题筛选器(Topic Filter)和最大服务质量(QoS),一个会话可以进行多个订阅。向平台订阅可以参考:Topic定义。 PUBLISH:是指从客户端向服务端或者服务端向客户端传输一个应用消息。 可变报头(Variable header)中的主要参数“Topic name”,指服务端或客户端的发布主题。详细请参考Topic定义。 有效载荷(Payload)中的主要参数为完整的数据上报和命令下发的消息内容,一般是一个JSON或字符串对象。 PINGREQ:指客户端发给服务端的心跳请求。主要用于告知服务端客户端还活着、确认网络连接没有断开。约定的发送周期由协商的Keep Alive决定。
-
数据包组成 MQTT消息由固定报头(Fixed header)、可变报头(Variable header)和有效载荷(Payload)三部分组成。在MQTT规范中有说明,建议使用设备侧SDK进行接入。 其中固定报头(Fixed header)和可变报头(Variable header)格式的填写请参考MQTT标准规范。有效载荷(Payload)的格式由应用定义,即设备和 物联网平台 之间的定义。 固定报头:每个 MQTT 控制报文都包含一个固定报头可变报头,用于决定控制报文类型、在PUBLISH中还用于决定最大服务质量(QoS),如:建链、订阅、发布。 可变报头:某些 MQTT 控制报文包含一个可变报头部分。它在固定报头和负载之间。可变报头的内容根据报文类型的不同而不同。包含可变报头的报文标识符(Packet Identifier),用于区分同一链路的不同数据包。 有效载荷:某些 MQTT 控制报文在报文的最后部分包含一个有效载荷,对于 PUBLISH 来说有效载荷就是应用消息(由用户自己定义)。 MQTT的语法和接口细节,请以MQTT标准规范为准。
-
Topic定义 设备使用MQTT协议接入平台时,平台和设备通过Topic进行通信。平台预置的topic列表如下: Topic分类 Topic Publisher(发布者) Subscriber(订阅者) 用途 设备消息相关Topic $oc/devices/{device_id}/sys/messages/up 设备 平台 设备消息上报 $oc/devices/{device_id}/sys/messages/down 平台 设备 平台下发消息 设备命令相关Topic $oc/devices/{device_id}/sys/commands/request_id={request_id} 平台 设备 平台下发命令 $oc/devices/{device_id}/sys/commands/response/request_id={request_id} 设备 平台 设备返回命令响应 设备属性相关Topic $oc/devices/{device_id}/sys/properties/report 设备 平台 设备上报属性 $oc/devices/{device_id}/sys/gateway/sub_devices/properties/report 设备 平台 网关批量上报属性 $oc/devices/{device_id}/sys/properties/set/request_id={request_id} 平台 设备 平台设置设备属性 $oc/devices/{device_id}/sys/properties/set/response/request_id={request_id} 设备 平台 属性设置的响应结果 $oc/devices/{device_id}/sys/properties/get/request_id={request_id} 平台 设备 平台查询设备属性 $oc/devices/{device_id}/sys/properties/get/response/request_id={request_id} 设备 平台 属性查询响应结果 $oc/devices/{device_id}/sys/shadow/get/request_id={request_id} 设备 平台 设备侧主动获取平台的设备影子数据 $oc/devices/{device_id}/sys/shadow/get/response/request_id={request_id} 平台 设备 设备侧主动获取平台设备影子数据的响应 设备事件相关Topic $oc/devices/{device_id}/sys/events/up 设备 平台 设备事件上报与平台事件下发,可用于:设备网关管理、软固件升级、文件上传/下载、设备时间同步、设备信息上报、设备日志收集、远程配置 $oc/devices/{device_id}/sys/events/down 平台 设备 {device_id}用于标识Topic路由的目标设备,设备侧订阅该topic或往topic推送消息时,该值需要替换为设备与平台建立MQTT连接时使用的设备ID参数值。 {request_id}用于唯一标识这次请求。设备侧发起的消息带该参数时,需要保证设备侧该参数值的唯一性,可以用递增的数字或者UUID来实现。当设备收到平台下发的topic中包含request_id时,设备侧响应的request_id需要跟平台下发的保持一致。 设备侧订阅带{request_id}参数的topic时,可以使用通配#。如设备侧订阅命令下发请求的topic $oc/devices/{device_id}/sys/commands/request_id={request_id}时,可以用$oc/devices/{device_id}/sys/commands/#。 平台采用了隐式订阅的功能,对于下行的系统topic,设备无需订阅,平台默认该设备订阅了qos为0的系统topic。如果需要qos为1的下行系统topic,需要设备自行订阅。 除了device_id、request_id其他均为系统字段。 父主题: 设备侧MQTT/MQ TTS 接口参考
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格