CATALOG

芯步智能触摸墙壁开关3路(UNI-KG-CM-3)开放标准HTTP接口,可直接通过WiFi(2.4G)远程控制三路照明或设备,无需网关 。以下是完整的接入方案:

1. 准备工作:获取凭证与设备ID

在开始编码前,你需要在芯步控制台获取以下三个关键信息:

  • AppID(开发者ID)AppSecret(开发者密码):注册并登录芯步官网,进入“工作台” -> “物联网控制台” -> “开发设置”页面获取

  • 设备ID(Device ID):将智能触摸墙壁开关3路接通电源并连接至WiFi(仅支持2.4G网络),然后在控制台的“设备列表”页面查看该设备的ID

2. 接口鉴权:签名计算规则

芯步的开放接口通过双重MD5加密方式进行鉴权,这是保证接口安全的核心步骤

核心公式

sign = md5( md5(AppSecret) + ts )

参数说明

  • AppSecret:你的开发者密码。

  • ts:当前Unix时间戳(秒),必须是10位数字。

计算步骤

  1. AppSecret 进行一次 MD5 加密,得到32位小写字符串 sign_a

  2. sign_a 与时间戳 ts 进行字符串拼接,得到 sign_b

  3. sign_b 再次进行 MD5 加密,得到最终的 sign

示例假设 AppSecret = "123456", ts = "1698732000"

  • sign_a = md5("123456") = "e10adc3949ba59abbe56e057f20f883e"

  • sign_b = "e10adc3949ba59abbe56e057f20f883e" + "1698732000"

  • sign = md5(sign_b) = "49981a0e0dacb7101a5ecfddb973a5f2"

3. 核心接口:远程控制指令

本方案的核心是通过HTTP请求向特定URL下发JSON指令

  • 请求URLhttps://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

  • 请求方法POST

  • 请求头Content-Type: application/json

  • 请求体

4. 详细命令参数(Order 对象详解)

对于“智能触摸墙壁开关3路”型号(UNI-KG-CM-3),我们通过 order 中的不同字段来控制三个独立的线路

4.1 基础开关控制

控制三路照明或设备的独立开关,适用于标准的远程开启/关闭场景。

功能描述Order 命令示例说明
打开第1路{"power1": 1}1为开
关闭第1路{"power1": 0}0为关
打开第2路{"power2": 1}-
关闭第2路{"power2": 0}-
打开第3路{"power3": 1}-
关闭第3路{"power3": 0}-

4.2 状态保持功能(防误触/场景联动)

此功能用于保持线路状态。例如,在无人值守场景下,强制某路保持关闭,用户手动打开后会在规定时间内自动恢复。

  • keep"0" 保持关,"1" 保持开。

  • revert:恢复时间(秒)。例如用户触发相反动作后,间隔几秒复原。

4.3 脉冲控制模式(点动/门禁)

适用于控制门禁电插锁、排风扇、报警器等需要通电一段时间后自动断电的设备

功能Order 命令示例效果说明
第1路先通后断{"point1": "2000"}立即通电,2000毫秒(2秒)后自动断开
第2路先通后断{"point2": "3000"}立即通电,3秒后断开
第1路先断后通{"reset1": "1000"}立即断电,1秒后自动恢复通电
第3路先断后通{"reset3": "5000"}立即断电,5秒后恢复

5. 实战代码示例

以下是三种最常见的接入方式示例。

5.1 Linux / Mac 系统 (使用 CURL)

在终端中直接运行,无需编译,适合快速测试或嵌入Shell脚本

5.2 微信小程序 / JavaScript (前后端通用)

如果你的前端应用(如小程序、网页)需要控制设备,强烈将以下逻辑放在你自己的后端服务器执行,以保护 AppSecret 不被泄露。

5.3 Python 语言实现

适合嵌入式开发板或后端服务集成。

6. 高级选项与排错

6.1 MQTT 接入(推荐高实时性场景)

如果轮询请求过于频繁,使用 MQTT 协议可以获得更高的实时性和更低的服务器负载

  • Host: mapi.thingboot.com

  • Port: 1883

  • Username: 你的 AppID

  • Password: 你的 AppSecret(无需MD5加密)

  • 发布主题: api/{AppID}/device/control

{"device":"设备ID", "order":{...}} JSON字符串发布到上述主题即可,设备端会实时响应。

6.2 私有化部署(局域网场景)

芯步支持私有化部署,如果你的开关和服务器处于同一局域网且不希望经过外网,可以将域名 api.thingboot.com 替换为部署在内网的私有服务器地址,并开启设备的局域网通信模式

6.3 常见错误排查

错误代码原因解决方案
5003ts 时间戳错误确保服务器时间为中国标准时间(CST),且 ts 为10位秒数
5006sign 签名错误检查 AppSecret 是否正确,特别是MD5计算是否为32位小写,注意拼接顺序。
5009请求过于频繁单个设备指令频率限制为 1次/秒。若实现“长按”或“连续调节”,需在代码中增加节流或延迟控制