## 控制采集
### 远程控制设备
*controller-event*
通断器、空开、10A-86插座、16A-86插座、10A转换器插座、16A转换器插座等单路设备的通电或断电操作
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"key1" : 0,
"key2" : 0,
"messageId" : "$messageId",
"type" : "event"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 0 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 0 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| type | String | 固定值"event" | event |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"code" : "GSMM2B-DC-4G",
"commandName" : "controller-event",
"iccid" : "89860319940273285175",
"imei" : "863434087185242",
"key1" : 0,
"key2" : 0,
"keyLock" : 0,
"messageId" : "$messageId",
"onState" : 2,
"signal" : 18,
"source" : "command",
"timerEnable" : 0,
"timerInterval" : 5,
"version" : "1.0.0"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| code | int | 错误码,0表示成功,其他值代表失败 | 0 |
| code | String | 设备型号代码 | GSMM2B-DC-4G |
| commandName | String | 指令名称 | controller-event |
| iccid | String | SIM-卡ICCID值 | 89860319940273285175 |
| imei | String | 设备唯一标识 | 863434087185242 |
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 0 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 2 |
| signal | int | 信号强度,显示规则为: signal int 信号强度,取值范围(0~31),值越大越好 | 18 |
| source | String | 指令回复“command" | command |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 0 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 5 |
| version | String | 当前固件版本号 | 1.0.0 |
---
### 设置数据自动上报频率
*device-timer-interval*
配置设备数据的定时上报参数,包括是否上报与上报频率。启用后,设备按设定频率周期上报电流、开关状态等数据至服务器。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "202201241610366046",
"timerEnable" : 1,
"timerInterval" : 10,
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| 202201241610366046 |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 10 |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"code" : "GSMM2B-DC-4G",
"commandName" : "device-timer-interval",
"iccid" : "89860319940273285175",
"imei" : "863434087185242",
"key1" : 1,
"key2" : 1,
"keyLock" : 0,
"messageId" : "202201241610366046",
"onState" : 2,
"signal" : 19,
"source" : "command",
"timerEnable" : 1,
"timerInterval" : 10,
"version" : "1.0.0"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| code | String | 设备型号代码 | GSMM2B-DC-4G |
| commandName | String | 指令名称 | device-timer-interval |
| iccid | String | SIM-卡ICCID值 | 89860319940273285175 |
| imei | String | 设备唯一标识 | 863434087185242 |
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 1 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 1 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| 202201241610366046 |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 2 |
| signal | int | 信号强度,显示规则为: signal int 信号强度,取值范围(0~31),值越大越好 | 19 |
| source | String | 指令回复“command" | command |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 10 |
| version | String | 当前固件版本号 | 1.0.0 |
---
### 查看数据自动上报格式
*device-timer-task*
查看设备定时上报数据的 JSON 格式,供服务器端对接解析设备上报的数据。是否上报与上报频率由"设置数据定时上报频率"指令配置,配置后设备按周期将数据发布至约定主题(topic),设备端无订阅行为(仅发布),服务端订阅该发布主题后即可接收上报数据。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"current_key1": "0.000",
"voltage": "40.000",
"imei": "863434087185242",
"power_key1": "0.000",
"commandName": "device-timer-task",
"messageId": "auto",
"source": "auto",
"key1": 1,
"key2": 1,
"energy_key2": "0.000",
"power_key2": "0.000",
"current_key2": "0.000",
"energy_key1": "0.000"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | device-timer-task |
| imei | String | 设备唯一标识 | 863434087185242 |
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 1 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 1 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| auto |
| source | String | 指令回复“command" | auto |
| voltage | float | 当前电压,单位V,保留三位小数 | 40.000 |
---
### 获取设备统计信息
*info-statistic*
获取设备当前的运行状态与电气数据:开关状态、瞬时电流等。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "$messageId",
"type" : "statistic"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| type | String | 固定值"statistic" | statistic |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"code" : "GSMM2B-DC-4G",
"commandName" : "info-statistic",
"currentKey1" : 0.000,
"currentKey2" : 0.000,
"energyKey1" : 0.000,
"energyKey2" : 0.000,
"iccid" : "89860319940273285175",
"imei" : "863434087174691",
"key1" : 1,
"key2" : 1,
"keyLock" : 0,
"messageId" : "auto",
"onState" : 2,
"powerKey1" : 0.000,
"powerKey2" : 0.000,
"signal" : 21,
"source" : "command",
"timerEnable" : 0,
"timerInterval" : 5,
"version" : "1.0.0",
"voltage" : 40.000
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| code | String | 设备型号代码 | GSMM2B-DC-4G |
| commandName | String | 指令名称 | info-statistic |
| currentKey1 | float | 第一路电流 | 0.000 |
| currentKey2 | float | 第二路电流 | 0.000 |
| energyKey1 | float | 第一路累计用电量 | 0.000 |
| energyKey2 | float | 第二路累计用电量 | 0.000 |
| iccid | String | SIM-卡ICCID值 | 89860319940273285175 |
| imei | String | 设备唯一标识 | 863434087174691 |
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 1 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 1 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| auto |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 2 |
| powerKey1 | float | 第一路功率 | 0.000 |
| powerKey2 | float | 第二路功率 | 0.000 |
| signal | int | 信号强度,显示规则为: signal int 信号强度,取值范围(0~31),值越大越好 | 21 |
| source | String | 指令回复“command" | command |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 0 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 5 |
| version | String | 当前固件版本号 | 1.0.0 |
| voltage | float | 当前电压,单位V,保留三位小数 | 40.000 |
---
### 设置按键控制
*setting-key-lock*
功能按键锁定后,设备仅能通过MQTT/TCP协议操作,不能通过物理按键来控制。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"keyLock" : 1,
"messageId" : "202201241610366046",
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| keyLock | int | 按键锁,0:关闭,1:开启 | 1 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| 202201241610366046 |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"code" : "GSMM2B-DC-4G",
"commandName" : "setting-key-lock",
"iccid" : "89860319940273285175",
"imei" : "863434087174691",
"key1" : 0,
"key2" : 0,
"keyLock" : 1,
"messageId" : "$messageId",
"onState" : 2,
"signal" : 17,
"source" : "command",
"timerEnable" : 1,
"timerInterval" : 10,
"version" : "1.0.0"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| code | String | 设备型号代码 | GSMM2B-DC-4G |
| commandName | String | 指令名称 | setting-key-lock |
| iccid | String | SIM-卡ICCID值 | 89860319940273285175 |
| imei | String | 设备唯一标识 | 863434087174691 |
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 0 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 1 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 2 |
| signal | int | 信号强度,显示规则为: signal int 信号强度,取值范围(0~31),值越大越好 | 17 |
| source | String | 指令回复“command" | command |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 10 |
| version | String | 当前固件版本号 | 1.0.0 |
---
## 定时任务
### 设备定时任务查询
*info-timer-task-query*
查询设备已设置的定时通断电任务列表及详情。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"action" : "timerTaskQuery",
"messageId" : "$messageId",
"type" : "event"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| action | String | 设备定时任务查询默认填"timerTaskQuery" | timerTaskQuery |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| type | String | 固定值"event" | event |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"action" : "timerTaskQuery",
"commandName" : "info-timer-task-query",
"imei" : "863434087174691",
"list" : {},
"messageId" : "$messageId",
"source" : "command",
"type" : "event"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| action | String | 设备定时任务查询默认填"timerTaskQuery" | timerTaskQuery |
| commandName | String | 指令名称 | info-timer-task-query |
| imei | String | 设备唯一标识 | 863434087174691 |
| list | List | list为列表,参数带year、month、day是定时按年月日时分执行一次,参数不带year、month、day则是每天按时分循环执行,发送指令不带list参数,则返回当前设备的list参数,key1、key2、key3含义同event指令 | {} |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| source | String | 指令回复“command" | command |
| type | String | 固定值"event" | event |
---
### 设计倒计时任务
*setting-timer-countdown*
设置倒计时任务——指定时长与到点动作(关闭/开启)。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"countdownSecond" : 10,
"finishCommand" :
{
"duty1" : 100,
"duty2" : 100,
"duty3" : 100,
"type" : "event"
},
"messageId" : "$messageId",
"task" : "countdown",
"timerInterval" : 1,
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| countdownSecond | int | 倒计时总时间 | 10 |
| duty1 | int | 输出占空比 范围0-100 | 100 |
| duty2 | int | 输出占空比 范围0-100 | 100 |
| duty3 | int | 输出占空比 范围0-100 | 100 |
| finishCommand | Object | 完成任务 | {"duty1":100,"duty2":100,"duty3":100,"type":"event"} |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| task | String | 固定值“countdown" | countdown |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 1 |
| type | String | 固定值"event" | event |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"commandName" : "setting-timer-countdown",
"countdownSecond" : 10,
"finishCommand" :
{
"duty1" : 100,
"duty2" : 100,
"duty3" : 100,
"type" : "event"
},
"imei" : "863434087185242",
"messageId" : "$messageId",
"source" : "command",
"task" : "countdown",
"timerInterval" : 1,
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-countdown |
| countdownSecond | int | 倒计时总时间 | 10 |
| duty1 | int | 输出占空比 范围0-100 | 100 |
| duty2 | int | 输出占空比 范围0-100 | 100 |
| duty3 | int | 输出占空比 范围0-100 | 100 |
| finishCommand | Object | 完成任务 | {"duty1":100,"duty2":100,"duty3":100,"type":"event"} |
| imei | String | 设备唯一标识 | 863434087185242 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| source | String | 指令回复“command" | command |
| task | String | 固定值“countdown" | countdown |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 1 |
| type | String | 固定值"event" | event |
| type | String | 固定值"setting" | setting |
---
### 查看倒计时状态上报格式
*setting-timer-countdown-active*
查看设备倒计时状态上报的 JSON 格式定义,供服务端对接解析设备上报的倒计时状态数据。上报频率由"设置倒计时任务"指令配置,配置后设备按周期将数据发布至约定主题(topic),设备端无订阅行为(仅发布),服务端订阅该发布主题后即可接收上报数据。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"state": 1,
"countdownSecond": 10,
"remainingSecond": 9,
"source": "auto",
"commandName": "setting-timer-countdown-active",
"imei": "863434087185242"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-countdown-active |
| countdownSecond | int | 倒计时总时间 | 10 |
| imei | String | 设备唯一标识 | 863434087185242 |
| remainingSecond | int | 倒计时剩余时间,单位S | 9 |
| source | String | 指令回复“command" | auto |
| state | int | 任务状态:0:待启动,1:正在进行,2:结束 | 1 |
---
### 清除倒计时任务
*setting-timer-countdown-clear*
清除倒计时任务
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "202201241610366046",
"task" : "countdown-clear",
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| 202201241610366046 |
| task | String | 固定值“countdown" | countdown-clear |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"commandName" : "setting-timer-countdown-clear",
"imei" : "863434087174691",
"message" : "ok",
"messageId" : "202201241610366046",
"source" : "command",
"success" : true
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-countdown-clear |
| imei | String | 设备唯一标识 | 863434087174691 |
| message | String | 执行结果描述:对命令执行结果的文本说明。执行完成且无异常:ok ;如果出现异常,返回异常结果描述。 | ok |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| 202201241610366046 |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果,执行成功:true;执行失败:false | true |
---
### 删除定时任务
*setting-timer-delete*
删除设备中已设置的单条定时通断电任务,删除为不可逆操作,删除后需重新设置。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"action" : "delete",
"messageId" : "$messageId",
"number" : 1,
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| action | String | 学习红外码指令默认填"learn" | delete |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| number | int | 任务编号 | 1 |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"commandName" : "setting-timer-delete",
"imei" : "863434087185242",
"message" : "ok",
"messageId" : "$messageId",
"source" : "command",
"success" : true
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-delete |
| imei | String | 设备唯一标识 | 863434087185242 |
| message | String | 执行结果描述:对命令执行结果的文本说明。执行完成且无异常:ok ;如果出现异常,返回异常结果描述。 | ok |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果,执行成功:true;执行失败:false | true |
---
### 设置定时任务
*setting-timer-task*
新增或编辑定时通断电任务,设置后到点执行开启/关闭操作。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"command" :
{
"duty1" : 100,
"duty2" : 100,
"duty3" : 100,
"type" : "event"
},
"hour" : 12,
"messageId" : "$messageId",
"minute" : 30,
"number" : 1,
"repeat" : "week",
"task" : "timer",
"type" : "setting",
"week" : "1"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| command | Object | 指令 | {"duty1":100,"duty2":100,"duty3":100,"type":"event"} |
| duty1 | int | 输出占空比 范围0-100 | 100 |
| duty2 | int | 输出占空比 范围0-100 | 100 |
| duty3 | int | 输出占空比 范围0-100 | 100 |
| hour | int | 小时0~23 | 12 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| minute | int | 分钟0~60 | 30 |
| number | int | 任务编号 | 1 |
| repeat | String | 重复weekdays:按周重复,day:按天重复,oneof:一次任务 | week |
| task | String | 固定值“countdown" | timer |
| type | String | 固定值"setting" | setting |
| type | String | 固定值"event" | event |
| week | String | 按周重复时填写,例如星期一、星期二重复,则值为"1,2 " | 1 |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"command" :
{
"duty1" : 100,
"duty2" : 100,
"duty3" : 100,
"type" : "event"
},
"commandName" : "setting-timer-task",
"hour" : 12,
"imei" : "863434087185242",
"messageId" : "$messageId",
"minute" : 30,
"number" : 1,
"repeat" : "week",
"source" : "command",
"week" : "1"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| command | Object | 指令 | {"duty1":100,"duty2":100,"duty3":100,"type":"event"} |
| commandName | String | 指令名称 | setting-timer-task |
| duty1 | int | 输出占空比 范围0-100 | 100 |
| duty2 | int | 输出占空比 范围0-100 | 100 |
| duty3 | int | 输出占空比 范围0-100 | 100 |
| hour | int | 小时0~23 | 12 |
| imei | String | 设备唯一标识 | 863434087185242 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| minute | int | 分钟0~60 | 30 |
| number | int | 任务编号 | 1 |
| repeat | String | 重复weekdays:按周重复,day:按天重复,oneof:一次任务 | week |
| source | String | 指令回复“command" | command |
| type | String | 固定值"event" | event |
| week | String | 按周重复时填写,例如星期一、星期二重复,则值为"1,2 " | 1 |
---
## 设备维护
### 重置/恢复出厂设置
*controller-reset*
重置/恢复出厂设置
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "$messageId",
"system" : "reset",
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| system | String | 重置/恢复出厂设置默认填"reset" | reset |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"success": true,
"source": "command",
"imei": "863434087185242",
"message": "ok",
"commandName": "controller-reset",
"messageId": "$messageId"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | controller-reset |
| imei | String | 设备唯一标识 | 863434087174691 |
| message | String | 执行返回结果 | ok |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| auto |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果,执行成功:true;执行失败:false | true |
---
### 软重启
*controller-restart*
设备软重启
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "$messageId",
"system" : "restart",
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| system | String | 重启默认填"restart" | restart |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"success": true,
"source": "command",
"imei": "863434087185242",
"message": "ok",
"commandName": "controller-restart",
"messageId": "$messageId"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | controller-restart |
| imei | String | 设备唯一标识 | 863434087174691 |
| message | String | 执行返回结果 | ok |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| auto |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果,执行成功:true;执行失败:false | true |
---
### 获取设备通讯信息
*info-protocol*
获取设备通讯信息
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "$messageId",
"type" : "protocol"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| type | String | 固定值"protocol" | protocol |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"clientId" : "863434087174691",
"commandName" : "info-protocol",
"messageId" : "$messageId",
"port" : "1883",
"protocol" : "mqtt",
"publish" : "/KIduUf/SBcCGLrVoxOv/863434087174691/publish",
"server" : "mqtt.smart-bird.cn",
"source" : "command",
"subcribe" : "/KIduUf/SBcCGLrVoxOv/863434087174691/subscribe",
"username" : "SBcCGLrVoxOv"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| clientId | String | 自定义MQTT客户端ID注意:不可重复
| 863434087174691 |
| commandName | String | 指令名称 | info-protocol |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| port | String | 端口号 | 1883 |
| protocol | String | 协议类型 | mqtt |
| publish | String | 自定义发布主题 注意:不可重复 | /KIduUf/SBcCGLrVoxOv/863434087174691/publish |
| server | String | 自定义服务器地址 | mqtt.smart-bird.cn |
| source | String | 指令回复“command" | command |
| subcribe | String | 自定义订阅主题,注意:不可重复 | /KIduUf/SBcCGLrVoxOv/863434087174691/subscribe |
| username | String | 自定义服务器用户名 | SBcCGLrVoxOv |
---
### 电量清零
*setting-energy-clear*
电量清零
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "$messageId",
"system" : "energy-clear",
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| system | String | 电量清零默认填"energy-clear" | energy-clear |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"success": true,
"source": "command",
"imei": "863434087185242",
"message": "ok",
"commandName": "energy-clear",
"messageId": "$messageId"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | energy-clear |
| imei | String | 设备唯一标识 | 863434087174691 |
| message | String | 执行返回结果 | ok |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果,执行成功:true;执行失败:false | true |
---
### 自定义MQTT
*setting-mqtt*
修改设备的 MQTT 服务器连接参数,使设备接入客户指定的MQTT 服务器(自建服务器、第三方平台等)。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
---
### 设置上电默认状态
*setting-on-state*
设置设备上电的默认状态:<br/>0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。<br/>1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。<br/>2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "$messageId",
"onState" : 1,
"type" : "setting"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| type | String | 固定值"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"code" : "GSMM2B-DC-4G",
"commandName" : "setting-on-state",
"iccid" : "89860319940273285175",
"imei" : "863434087174691",
"key1" : 0,
"key2" : 0,
"keyLock" : 0,
"messageId" : "$messageId",
"onState" : 1,
"signal" : 17,
"source" : "command",
"timerEnable" : 1,
"timerInterval" : 10,
"version" : "1.0.0"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| code | String | 设备型号代码 | GSMM2B-DC-4G |
| commandName | String | 指令名称 | setting-on-state |
| iccid | String | SIM-卡ICCID值 | 89860319940273285175 |
| imei | String | 设备唯一标识 | 863434087174691 |
| key1 | int | 控制设备一路通断 0:关灯,1:开灯 | 0 |
| key2 | int | 控制设备二路通断 0:关灯,1:开灯 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| $messageId |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| signal | int | 信号强度,显示规则为:signal int 信号强度,取值范围(0~31),值越大越好 | 17 |
| source | String | 指令回复“command" | command |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 10 |
| version | String | 当前固件版本号 | 1.0.0 |
---
### 设置重置锁
*setting-reset-lock*
锁定/解锁设备的物理按键重置入口。锁定后,长按开关键无法触发恢复出厂(重置)操作,防止误触或现场人员擅自重置设备。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
---