# Command
设备命令字段。
# 数据格式
| 字段名 | 类型 | 说明 |
|---|---|---|
| cmdId | String | 命令唯一标识 |
| userKey | String | 接收设备所属用户唯一Key |
| productKey | String | 接收设备所属产品唯一Key |
| deviceKey | String | 接收设备唯一Key |
| timeReq | Long | 时间戳,精确到毫秒 |
| timeDue | Long | 命令有效时间戳,精确到毫秒 |
| timeSend | Long | 命令什么时候下发给设备的时间戳,精确到毫秒 |
| timeAck | Long | 待确认 |
| timeCpl | Long | 待确认 |
| state | Integer | 命令所处状态,具体请看下面状态列表 |
| type | Integer | 命令数据类型 |
| data | String | 输入参数 |
| output | String | 输出参数 |
# 命令状态列表
| 状态 | 状态值 | 说明 |
|---|---|---|
| SAVED | 1 | 保存到平台,但未发送给设备 |
| SENDED | 2 | 已经发送给设备,但未收到设备响应 |
| ACKED | 3 | 已经发送给设备,并收到ack响应,该ack是mqtt协议的响应 |
| EXPIRED | 4 | 命令已经发送给设备,但未收到ack响应 |
| COMPLETE | 5 | 设备push了 cmdack到平台告知命令执行完成 |
| FAILED | -1 | 命令发送失败 |
| CANCELED | -2 | 命令被强制取消 |
# 命令类型列表
| 命令类型 | 类型值 |
|---|---|
| json | 1 |
| int | 2 |
| string | 3 |
| double | 4 |
| bin | 5 |
| invalid | 0 |