# 智能墙壁插座16A-S1 Plus-WiFi (型号:GSPW1P1) - 开发者指令
## 产品基本描述
老外观模具,主控芯片升级为ESP32
## 产品主要特点
WiFi网络,电流电压视在功率电量采集
AC110-250V,宏发继电器,
最大阻性负载3500W
AC110-250V,宏发继电器,
最大阻性负载3500W
## 产品图
<https://smart-bird-oss.smart-bird.cn/images/2025/11/21/1510202523654220.png>
## 官网产品资料
### 品牌信息说明
品牌LOGO <https://smart-bird-oss.smart-bird.cn/images/2026/02/18/1722133698642421.png>
智鸟科技GemeOpen专注为软件开发者提供商用智能设备,软件工程师通过简单的测试即可完成项目设备选型,使用标准的MQTT/TCP协议,发送JSON指令控制设备通断电、查询设备用电信息。能够极大节省项目实施时间与自研设备风险,与厂商云解耦,搭建私有化MQTT服务,完全掌控设备且无任何捆绑与隐性成本!
### 如何购买产品
全网搜索 智鸟科技、GemeOpen 可查询官网信息,或者 京东搜索 **GEMEOPEN官方旗舰店** 、淘宝搜索 **GemeOpen** 、 **智鸟科技**
### 产品详细信息
<null>
### 淘宝购买网址
<null>
### 京东购买网址
<null>
### 开发者文档
<https://www.smart-bird.cn/doc/product/GSPW/device/GSPW1P1/command>
## 客户常见问题
### 设备可以连接到自己的阿里云服务器吗,数据不需要通过您那边中转吧?
是的,配置MQTT参数,即可连接到指定的服务器,数据完全不经过厂商
### 二次开发对接要额外收费吗?
不收费。接入自己的平台没有额外费用。
### 自定义 MQTT 配置好了为什么不生效?
自定义 MQTT 必须重启设备后才生效(拔插电源,或在配置首页点「重新启动」)。只在配置页点保存不会生效。
### 设备是否支持连接TSL加密服务器?是否支持mqtts?
该功能正在研发中,即将更新。可在自定义 MQTT 中配置 mqtts / TLS 加密连接,端口与证书参数按开发文档设置,配置后重启设备生效。
### 为什么控制台上一直显示设备离线/未激活?
请先确认:
1、设备是否已经配置了单频的2.4G WiFi,或者4G物联网卡是否正常;
2、是否进行过自定义MQTT操作,自定义MQTT的设备会和控制台MQTT断开连接,此时控制台显示设备离线或未激活是正常的
### 支持二次开发写入我们自己内部的运维平台吗?
支持。设备开放 MQTT / TCP协议与指令文档,可直接连接用户自有服务器平台,接入不收取额外费用。
### 能接入哪些系统或平台?支持接入米家/华为生态/涂鸦吗?
1、【支持】自建服务器 / 自建平台:你自己的 MQTT Broker(Mosquitto、EMQX、HiveMQ 等)+ 自研业务系统;
2、【支持】第三方物联网云平台:阿里云 IoT、华为云 IoT、腾讯云 IoT等;
3、【支持】开源 / 第三方平台:ThingsBoard、Home Assistant、
4、【不支持】暂不支持接入米家、华为 HiLink、涂鸦等第三方公有生态;
总结:设备面向开发者免费开放MQTT/TCP协议,适合接入自建平台做深度集成。
### 可不可以连接我们的内网服务器?
可以。
1、WiFi设备:连接您的内网WiFi后,自定义 MQTT 直连您的内网服务器;
2、4G设备:可安装使用您自己专网卡,自定义MQTT后直连您的内网服务器。
配置完成后重启设备生效,数据不经过厂商。
### 能不能按我提供的MQTT信息批量写入到设备里?
支持。可联系工作人员获取批量配置表格。在表单内填写您的服务器参数信息后,由技术人员上传表格至智鸟ERP系统生效。
后续我们还将提供客户运维管理系统(vip.smart-bird.cn),企业客户可通过该平台自己批量维护。
### 是否需要连接网关?
不需要。设备WiFi/4G正常通信后,通过协议直连您的服务器平台,无需网关。
### 支持API调用吗?
可通过HTTP调用GemeOpen控制台接口。控制台仅供用户测试使用,不能保证稳定性,常会因为其他用户极限测试,影响平台设备正常使用。
如果您是做商用项目,建议通过MQTT/TCP接入您自己搭建的服务器平台,更稳定,更便于后续二次开发。
### 我们是做商用项目的,GemeOpen可不可以提供中性产品?
开关、插座类强制认证过的产品,不支持提供中性产品。所有信息均在认证机构做过照片备案,无法修改。
其他非强制认证类产品,外壳支持自定义打标,可修改为用户自有品牌型号信息。
### 自定义mqtt后,客户端发布消息,为什么收不到订阅回复?
常见原因:
①订阅/发布的主题与开发文档定义不一致,可尝试将订阅主题发布主题交换位置填写;
②修改自定义 MQTT 后未重启设备;
③服务器参数填写错误,服务器端 ACL 未放行。
## 产品电气参数
---
| 参数名 | 参数值 |
|------|------|
| 品牌 | GemeOpen |
| 上市日期 | 未上市 |
| 产品类型 | 智能墙壁插座16A-S1 Plus-WiFi |
| 产品型号 | GSPW1P1 |
| 产品尺寸 | 86mm * 86mm * 32mm |
| 输入电压 | AC 85~265V |
| 最大负载电流 | 16A |
| 待机功率 | <3W |
| 额定功率 | MAX 4000W |
| 继电器 | 16A 宏发继电器 |
| 工作温度 | -5℃ ~ +40℃ |
| 通信方式 | 2.4GHz WiFi |
| 通讯模块 | 乐鑫ESP32 |
| 控制协议 | MQTT、TCP、HTTP、蓝牙 |
| 传输距离 | 物联网云平台可全球远程控制 |
| 屏幕显示 | 无 |
| 3C证书编号 | - |
---
## 全部指令
### null
*controller-event*
通断器、空开、10A-86插座、16A-86插座、10A转换器插座、16A转换器插座等单路设备的通电或断电操作
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| messageId | String | 消息ID字段 | geekopen1234 |
| type | String | 控制设备开关固定传"event" | event |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| bssid | String | 路由器 MAC 地址 | 742ad779046 |
| commandName | String | 指令名称 | controller-event |
| ip | String | 设备连接WIFI后获取的IP | 192.168.1.200 |
| key | int | 继电器通断电状态,0:断电,1:通电 | 1 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| mac | String | 设备MAC,唯一标识 | 28372fcbbbb8 |
| messageId | String | 如果发送json中,发送了messageId,返回的json中就返回发送时确定的值,如果发送json中没有值,此处为空 | geekopen1234 |
| onState | int | 设备上电的默认状态,0:记忆;1:关闭;2:开启,即通电,默认=1 | 1 |
| signal | int | 信号强度,显示规则为: signal<= 0 && signal>= -50
//信号最好 signal< -50 && signal>= -70
//信号较好 signal< -70 && signal>= -80
//信号一般 signal<-80 && signal>= -100
//信号较差 signal没有在0~(-100)之间,表示无信号 | -75 |
| source | String | 指令回复“command" | command |
| ssid | String | 设备当前连接的WIFI名称 | GeekOepn |
| timerEnable | int | 设备电量信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 电量信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 控制继电器通断,固定返回"event" | event |
| version | String | 当前固件版本号 | 3.0_1.1.0 |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---
### null
*controller-reset*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| system | String | 重置/恢复出厂设置默认填"reset" | reset |
| type | String | 设备设置固定传”setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | controller-reset |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| message | String | 执行返回结果 | ok |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果 | true |
---
### null
*controller-restart*
软重启后,通过指令设置的参数将生效,同时设备将重新连接Wifi/4G网络,注意设备IP地址可能发生变化
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| system | String | 设备软重启固定传"restart" | restart |
| type | String | 设备设置固定传"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | controller-reset |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| message | String | 执行返回结果 | ok |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果 | true |
---
### null
*device-timer-interval*
设置定时上报电量信息
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| timerEnable | int | 设备电量信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 电量信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 设备设置固定传"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| bssid | String | 路由器 MAC 地址 | 742ad779046 |
| commandName | String | 指令名称 | device-timer-interval |
| ip | String | 设备连接WIFI后获取的IP | 192.168.122.119
|
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| signal | int | 信号强度,显示规则为: signal<= 0 && signal>= -50
//信号最好 signal< -50 && signal>= -70
//信号较好 signal< -70 && signal>= -80
//信号一般 signal<-80 && signal>= -100
//信号较差 signal没有在0~(-100)之间,表示无信号 | -75 |
| source | String | 指令回复“command" | command |
| ssid | String | 设备当前连接的WIFI名称 | GeekOpen |
| timerEnable | int | 设备电量信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 设备类型 | GSPW1P1 |
| version | String | 当前固件版本号 | 3.0_1.1.0 |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---
### null
*energy-clear*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| system | String | energy-clear 电量清零 | energy-clear |
| type | String | 设置设备固定传"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | energy-clear |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| message | String | 执行返回结果 | ok |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果 | true |
---
### null
*info-all*
包含设备的网络状态、继电器状态、自动上报设置、版本号等信息
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 如果发送json中,发送了messageId,返回的json中就返回发送时确定的值,如果发送json中没有值,此处为空 | Abcd123456 |
| type | String | 获取设备基本信息固定传"info" | info |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| bssid | String | 路由器 MAC 地址 | 742ad779046 |
| commandName | String | 指令名称 | info-all |
| ip | String | 设备连接WIFI后获取的IP | 192.168.122.119 |
| key | int | 插座通断电状态,0:断电,1:通电 | 1 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| mac | String | 设备MAC,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 如果发送json中,发送了messageId,返回的json中就返回发送时确定的值,如果发送json中没有值,此处为空 | Abcd123456 |
| onState | int | 设备上电的默认状态,0:记忆;1:关闭;2:开启,即通电,默认=1 | 0 |
| signal | int | 设备网络信号强度, | -47 |
| source | String | 指令回复“command" | command |
| ssid | String | 设备当前连接的WIFI名称 | GeekOpen |
| timerEnable | int | 设备电量信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 设备类型:Socket-86:86型智能插座,Socket-mini:随意插 | Socket-mini |
| version | String | 当前固件版本号 | 3.0_1.1.0 |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---
### null
*info-protocol*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| type | String | 获取设备通讯协议固定传protocol | protocol |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| clientId | String | 自定义MQTT客户端ID注意:不可重复
| test-iot |
| commandName | String | 指令名称 | info-protocol |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| port | String | 端口号 | 1883 |
| protocol | String | 协议类型,MQTT协议固定传"mqtt" | MQTT |
| publish | String | 自定义MQTT发布主题 注意:不可重复 | /rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe |
| server | String | 自定义MQTT服务器地址 | broker.emqx.io |
| source | String | 指令回复“command" | command |
| subcribe | String | 自定义MQTT订阅主题注意:不可重复 | /rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/publish |
| username | String | 自定义MQTT服务器用户名 | admin
|
---
### null
*info-statistic*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| type | String | 获取设备电量信息固定传"statistic" | statistic |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | info-statistic |
| current | float | 当前电流,单位A,保留三位小数 | 15.027 |
| energy | float | 累计用电量,单位KW*H,保留三位小数,断电后不会归零,重置后会归零 | 25.047 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| power | float | 当前功率,单位W,保留三位小数 | 2921.511 |
| source | String | 指令回复“command" | command |
| voltage | float | 当前电压,单位V,保留三位小数 | 226.024 |
---
### null
*info-timer-task-query*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| action | String | 固定值timerTaskQuery | timerTaskQuery |
| messageId | String | 消息ID字段 | 202201241610366046 |
| type | String | 设备设置固定传"event" | event |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| action | String | 学习红外码指令默认填"learn" | learn |
| commandName | String | 指令名称 | info-timer-task-query |
| list | List | list为列表,参数带year、month、day是定时按年月日时分执行一次,参数不带year、month、day则是每天按时分循环执行,发送指令不带list参数,则返回当前设备的list参数,key1、key2、key3含义同event指令 | |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| type | String | 设备设置固定传"event" | event |
---
### null
*setting-key-lock*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| type | String | 设备设置固定传’setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| bssid | String | 路由器 MAC 地址 | 742ad779046 |
| commandName | String | 指令名称 | setting-key-lock |
| ip | String | 设备连接WIFI后获取的IP | 192.168.122.119
|
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| signal | int | 信号强度,显示规则为: signal<= 0 && signal>= -50
//信号最好 signal< -50 && signal>= -70
//信号较好 signal< -70 && signal>= -80
//信号一般 signal<-80 && signal>= -100
//信号较差 signal没有在0~(-100)之间,表示无信号 | -75 |
| source | String | 指令回复“command" | command |
| ssid | String | 设备当前连接的WIFI名称 | GeekOpen |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 设备类型 | GSPW1P1 |
| version | String | 当前固件版本号 | 3.0_1.1.0 |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---
### null
*setting-mqtt*
设备支持自定义MQTT,注意:在通过MQTT自定义MQTT信息后,需要将设备断电重启或者向设备发送重启命令才可生效。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"clientId" : "admin",
"messageId" : "202201241610366046",
"password" : "123456",
"port" : "1883",
"protocol" : "mqtt",
"publish" : "/rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe
",
"server" : "broker.emqx.io",
"subcribe" : "/topic/qos1",
"type" : "custom",
"username" : "admin"
}
"clientId" : "admin",
"messageId" : "202201241610366046",
"password" : "123456",
"port" : "1883",
"protocol" : "mqtt",
"publish" : "/rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe
",
"server" : "broker.emqx.io",
"subcribe" : "/topic/qos1",
"type" : "custom",
"username" : "admin"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| clientId | String | 自定义MQTT客户端ID注意:不可重复
| admin |
| messageId | String | 消息ID字段 | 202201241610366046 |
| password | String | 密码 | 123456 |
| port | String | 端口号 | 1883 |
| protocol | String | 协议类型,MQTT协议固定传"mqtt" | mqtt |
| publish | String | 自定义MQTT发布主题 注意:不可重复 | /rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe
|
| server | String | 自定义MQTT服务器地址 | broker.emqx.io |
| subcribe | String | 自定义MQTT订阅主题注意:不可重复 | /topic/qos1 |
| type | String | 自定义配置固定传“custom” | custom |
| username | String | 自定义MQTT服务器用户名 | admin |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"clientId" : "admin",
"commandName" : "setting-mqtt",
"mac" : "4CEBD60BFD62",
"messageId" : "202201241610366046",
"password" : "123456",
"port" : "1883",
"protocol" : "mqtt",
"publish" : "/rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe",
"server" : "broker.emqx.io",
"source" : "command",
"subcribe" : "/topic/qos1",
"username" : "admin"
}
"clientId" : "admin",
"commandName" : "setting-mqtt",
"mac" : "4CEBD60BFD62",
"messageId" : "202201241610366046",
"password" : "123456",
"port" : "1883",
"protocol" : "mqtt",
"publish" : "/rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe",
"server" : "broker.emqx.io",
"source" : "command",
"subcribe" : "/topic/qos1",
"username" : "admin"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| clientId | String | 自定义MQTT客户端ID注意:不可重复
| admin |
| commandName | String | 指令名称 | setting-mqtt |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| password | String | 密码 | 123456 |
| port | String | 端口号 | 1883 |
| protocol | String | 协议类型,MQTT协议固定传"mqtt" | mqtt |
| publish | String | 自定义MQTT发布主题 注意:不可重复 | /rqlMqR/GYofdXmMpHQa/8cce4e51e2c7/subscribe |
| server | String | 自定义MQTT服务器地址 | broker.emqx.io |
| source | String | 指令回复“command" | command |
| subcribe | String | 自定义MQTT订阅主题注意:不可重复 | /topic/qos1 |
| username | String | 自定义MQTT服务器用户名 | admin |
---
### null
*setting-on-state*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 业务流水号。由请求方生成的唯一标识,响应方原样回显,用于请求与响应的关联匹配。
| 20260520 |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| type | String | 设备设置固定传"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| bssid | String | 路由器 MAC 地址 | 742ad779046 |
| commandName | String | 指令名称 | setting-on-state |
| ip | String | 设备连接WIFI后获取的IP | 192.168.122.119
|
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| signal | int | 信号强度,显示规则为: signal<= 0 && signal>= -50
//信号最好 signal< -50 && signal>= -70
//信号较好 signal< -70 && signal>= -80
//信号一般 signal<-80 && signal>= -100
//信号较差 signal没有在0~(-100)之间,表示无信号 | -75 |
| source | String | 指令回复“command" | command |
| ssid | String | 设备当前连接的WIFI名称 | GeekOpen |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 设备类型 | GSPW1P1 |
| version | String | 当前固件版本号 | 3.0_1.1.0 |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---
### null
*setting-tcp*
设备支持通过MQTT方式自定义TCP信息,注意:通过MQTT自定义TCP信息后,需要将设备断电重启或者向设备发送重启命令才可生效。
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
{
"messageId" : "202201241610366046",
"port" : "8080",
"protocol" : "tcp",
"server" : "192.168.0.66",
"type" : "custom"
}
"messageId" : "202201241610366046",
"port" : "8080",
"protocol" : "tcp",
"server" : "192.168.0.66",
"type" : "custom"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| port | String | 自定义TCP服务器端口 | 8080 |
| protocol | String | TCP协议固定传"tcp" | tcp |
| server | String | 自定义TCP服务器地址 | 192.168.0.66 |
| type | String | 设备自定义固定传"custom" | custom |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
{
"commandName" : "setting-tcp",
"mac" : "4CEBD60BFD62",
"messageId" : "202201241610366046",
"port" : "8080",
"protocol" : "tcp",
"server" : "192.168.0.66",
"source" : "command"
}
"commandName" : "setting-tcp",
"mac" : "4CEBD60BFD62",
"messageId" : "202201241610366046",
"port" : "8080",
"protocol" : "tcp",
"server" : "192.168.0.66",
"source" : "command"
}
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-tcp |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| port | String | 端口号 | 8080 |
| protocol | String | TCP协议固定传"tcp" | tcp |
| server | String | 自定义TCP服务器地址 | 192.168.0.66 |
| source | String | 指令回复“command" | command |
---
### null
*setting-timer-countdown*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| countdownSecond | int | 倒计时总时间 | 10 |
| finishCommand | Object | 完成任务 | |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| task | String | 固定值“countdown" | countdown |
| timerInterval | int | 倒计时信息上报时间间隔(单位秒),取值范围5-86400 | 20 |
| type | String | 设备设置固定传"setting" | setting |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-countdown |
| countdownSecond | int | 倒计时总时间 | 10
|
| finishCommand | Object | 完成任务 | |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| task | String | 固定值“countdown" | countdown |
| timerInterval | int | 倒计时信息上报时间间隔(单位秒),取值范围5-86400 | 20 |
| type | String | 设备设置固定传"setting" | setting |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
---
### null
*setting-timer-countdown-clear*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| task | String | 固定值"countdown-clear" | countdown-clear |
| type | String | 设备设置固定传"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-countdown-clear |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| message | String | 执行返回结果 | ok |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果 | true |
---
### null
*setting-timer-delete*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| action | String | 固定值delete | delete |
| messageId | String | 消息ID字段 | 202201241610366046 |
| number | int | 任务编号 | 1 |
| type | String | 设备设置固定传"setting" | setting |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| commandName | String | 指令名称 | setting-timer-delete |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| message | String | 执行返回结果 | ok |
| messageId | String | 消息ID字段 | 202201241610366046 |
| source | String | 指令回复“command" | command |
| success | boolean | 执行结果 | true |
---
### null
*setting-timer-task*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| command | Object | 定时触发的事件,key为0,触发是断电;key为1,触发是通电 | |
| hour | int | 小时0~23 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| minute | int | 分钟0~60 | 0 |
| number | int | 任务编号 | 1 |
| repeat | String | 重复week:按周重复,day:按天重复,oneof:一次任务 | oneof |
| task | String | 固定值timer | timer |
| type | String | 设备设置固定传"setting" | setting |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| command | Object | 指令 | |
| commandName | String | 指令名称 | setting-timer-task |
| hour | int | 小时0~23 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| minute | int | 分钟0~60 | 0 |
| number | int | 任务编号 | 1 |
| repeat | String | 重复week:按周重复,day:按天重复,oneof:一次任务 | oneof |
| source | String | 指令回复“command" | command |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
| type | String | 设备设置固定传"event" | event |
---
### null
*setting-wifi-lock*
**向设备发送指令(服务端向设备订阅topic发送消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| messageId | String | 消息ID字段 | 202201241610366046 |
| type | String | 设备设置固定传"setting" | setting |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---
**设备返回信息(设备向服务端订阅topic上报消息)**
```json
```
#### 字段属性
---
| 字段名称 | 字段类型 | 字段说明 | 示例值 |
|------|------|------|------|
| bssid | String | 路由器 MAC 地址 | 742ad779046 |
| commandName | String | 指令名称 | setting-wifi-lock |
| ip | String | 设备连接WIFI后获取的IP | 192.168.122.119
|
| key | int | 插座通断电状态,0:断电,1:通电 | 0 |
| keyLock | int | 按键锁,0:关闭,1:开启 | 0 |
| mac | String | wifi设备MAC地址或4G设备的IMEI号,唯一标识 | 4CEBD60BFD62 |
| messageId | String | 消息ID字段 | 202201241610366046 |
| onState | int | 设备上电的默认状态:
0:记忆;是指记忆最后一次设备断电前的状态,如断电前设备是通电状态(指示灯是蓝的),设备下次上电默认是通电状态(指示灯是蓝的)。
1:关闭,即断电状态(指示灯是灭的),如断电前,设备是通电状态(指示灯是蓝的),设备下次上电默认是依旧是断电状态(指示灯是灭的)。需要手动/远程开启通电状态。
2:开启,即通电状态(指示灯是蓝色的),是指设备上电之后,默认是通电状态,此刻需要注意,插在设备上的负载会通电运行,会有安全风险,所以建议是默认上电状态为关闭。 | 1 |
| signal | int | 信号强度,显示规则为: signal<= 0 && signal>= -50
//信号最好 signal< -50 && signal>= -70
//信号较好 signal< -70 && signal>= -80
//信号一般 signal<-80 && signal>= -100
//信号较差 signal没有在0~(-100)之间,表示无信号 | -75 |
| source | String | 指令回复“command" | command |
| ssid | String | 设备当前连接的WIFI名称 | GeekOpen |
| timerEnable | int | 设备统计信息定时上报状态,0:关闭;1:开启 | 1 |
| timerInterval | int | 设备统计信息上报时间间隔(单位秒),取值范围5-86400 | 15 |
| type | String | 设备类型 | GSPW1P1 |
| version | String | 当前固件版本号 | 3.0_1.1.0 |
| wifiLock | int | 配网锁,0:关闭,1:开启 | 0 |
---






