芯步4路控制器支持通过HTTP接口进行批量控制,核心是使用batch命令在一次请求中同时操作多个线路。以下是完整的二次开发方案。
一、 技术原理与准备
芯步的智能控制器(以UNI-KZQ-ZM-4型号为例)提供了标准的HTTP API接口。二次开发的核心逻辑是:您的业务系统 -> 芯步云平台 -> 设备。
接口地址
https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}请求方式:POST (Content-Type: application/json)
核心参数:
device(设备ID) 和order(控制指令) 。
在开始开发前,请准备以下三项信息:
AppId: 在芯步控制台创建应用后获取。
开发者密码: 用于生成接口签名(Sign),保障安全性。
设备ID: 在控制台设备列表或通过接口拉取获得 。
二、 核心解决方案:实现“批量开关控制”
要实现“一键全开/全关”或“分组开关”,最推荐的方式是利用接口的 Batch(批量控制) 功能。相比循环调用4次单路指令,Batch指令作为原子操作,延迟更低(约80-120ms),且能避免多指令间的网络延迟误差 。
1. 接口签名规则 (Sign)
为了安全,每次请求需携带签名。芯步的签名生成逻辑如下(通用标准):
Sign = md5( md5(开发者密码) + "." + 当前时间戳(ts) )
注意:时间戳(ts)需精确到秒,且为了防止重放攻击,通常该时间戳与服务器时间误差不能太大。
2. 请求示例:一键全开 / 全关
以下是通过 batch 命令控制4路照明的核心 JSON 示例:
场景 A:一键开启所有照明(第1、2、3、4路全部闭合)
场景 B:一键关闭所有照明
场景 C:自定义组合(例如仅开启1、3路,关闭2、4路)
说明:非批量控制(场景C)同样适用于一次HTTP请求,设备会同时执行这4条指令,效果上等同于批量。
三、 代码实现片段
无论您使用何种编程语言,只要支持 HTTP 请求即可。以下是两种主流环境下的实现逻辑。
1. Node.js 后端实现 (适合服务端)
2. 微信小程序 / 前端实现 (适合移动端)
注意:前端调用需注意签名安全,将签名逻辑放在后端,前端仅触发调用。
注:实际生产环境中,URL需拼接动态的 sign 和 ts 参数,此处为简化示意。
四、 进阶功能:时序控制与联动
除了简单的开/关,该开放接口还支持高级逻辑,这在批量控制中非常实用:
顺序通电 (reset):当批量开启多路大功率照明时,瞬时电流可能过大。可以利用
reset命令,让各路照明逐一间隔启动。命令示例
{"reset":{"relay":[1,2,3,4],"interval":500}}效果:先接通线路1,500毫秒后接通线路2,再500毫秒后接通线路3... 有效保护电路 。
场景联动 (与传感器结合)如果您购买了芯步的人体传感器,可以通过二次开发接口实现“人来全亮,人走全灭”。
逻辑:接收传感器的状态回调 -> 判断为“有人” -> 调用上述批量全开API -> 执行照明开启。
五、 总结
通过对芯步4路控制器接口的二次开发,您可以轻松实现 “一键全开/全关”、“自定义分组控制” 以及 “顺序启动保护” 等功能。整个过程无需复杂的硬件电路改造,仅需向 api.thingboot.com 发送标准的 JSON 数据包,即可将普通的照明电路集成到您的 SaaS 系统或 App 中 。