
# 使用前必读
 #### MQTT概述
MQTT标准规范参见《[mqtt-v3.1.1-os.pdf](https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/)》。
![](https://support.huaweicloud.com/qs-iotps/public_sys-resources/note_3.0-zh-cn.png)
MQTT的语法和接口细节，请以此标准为准。设备发放目前仅支持MQTTS/HTTPS这种安全接入的设备进行发放，暂不支持MQTT/HTTP这种非安全接入的设备进行发放。
MQTT消息分为固定报头（Fixed header）、可变报头（Variable header）和有效载荷（Payload）部分。
固定报头（Fixed header）和可变报头（Variable header）格式的填写直接MQTT标准规范。有效载荷（Payload）部分在PUB消息中可以由应用定义，即设备和设备发放平台之间自己定义。
下面主要介绍CONNECT、SUB和PUB消息格式的填写。
- CONNECT - Client requests a connection to a server 有效载荷（Payload）中的主要参数填写，具体参见[MQTT CONNECT连接鉴权](https://support.huaweicloud.com/qs-iotps/iot_03_0003.html)。
  
- SUBSCRIBE - Subscribe to named topics 有效载荷（Payload）中的主要参数填写：Topic name，填写为设备想要订阅的主题消息，目前填写为设备自己的topic，具体参见[Topic说明]。
  
- PUBLISH - Publish message
  - 可变报头（Variable header）：Topic name，设备发往设备发放平台时，为平台的Topic name，设备接收消息时，为设备的Topic name，具体参见[Topic说明]。
  
  - 有效载荷（Payload）中的主要参数填写：为完整的数据上报和命令下发的消息内容，目前是一个JSON对象。
   
 
 #### Topic说明
- 设备发放平台作为消息接收方时，已默认订阅了相关Topic，设备只要向对应Topic发送消息，设备发放平台就可以接收。
- 设备作为消息接收方时，需要先订阅相关Topic，这样设备发放平台向对应Topic发送消息时，设备才能接收到。设备需要根据具体实现的业务来决定订阅哪些Topic。
  表1设备发放Topic 
  | Topic                                      | 消息发送方 （Publisher） | 消息接收方 （Subscriber） | 说明                      |
  |:---|:---|:---|:---|
  | $oc/devices/{device_id}/sys/bootstrap/up   | 设备                                                                                    | 设备发放平台                                                                                   | 设备向发放服务请求对应设备接入实例的引导信息。 |
  | $oc/devices/{device_id}/sys/bootstrap/down | 设备发放平台                                                                                | 设备                                                                                       | 设备接收发放服务下发的引导信息。        |
     
  
 
#### 场景示例矩阵
表2示例列表 
| 注册/注册组 | 认证类型  | 策略类型      | 示例                                                                                      |
|:---|:---|:---|:---|
| 注册     | 证书认证  | 证书策略      | [MQTT X.509证书认证设备使用证书策略发放示例](https://support.huaweicloud.com/qs-iotps/iot_03_0007.html) |
| 注册     | 密钥认证  | 静态策略      | [MQTT 密钥设备使用静态策略发放示例](https://support.huaweicloud.com/qs-iotps/iot_03_0006.html)        |
| 注册组    | 证书认证  | 自定义策略     | [MQTT 注册组自定义策略发放示例](https://support.huaweicloud.com/qs-iotps/iot_03_0008.html)          |
| 注册组    | 云证书认证 | 证书策略      | [MQTT 华为云证书注册组发放示例](https://support.huaweicloud.com/qs-iotps/iot_03_00010.html)         |
| 注册组    | 证书认证  | 自定义策略     | [MQTT 注册组自定义策略发放示例](https://support.huaweicloud.com/qs-iotps/iot_03_0008.html)          |
| 注册     | 密钥认证  | 静态策略（跨账号） | [MQTT 密钥设备跨账号使用静态策略发放示例](https://support.huaweicloud.com/qs-iotps/iot_03_00013.html)    |
   
