芯步的8路控制器开放标准HTTP接口,支持单路、批量、延时序列等多种控制模式。以下方案基于其公开API文档,说明如何通过二次开发实现包间内多路设备的电源控制。
芯步8路包间控制器二次开发解决方案
1. 概述
本方案的目标是指导开发者利用芯步提供的开放HTTP API接口,对“智能包间控制器”或“8路智能控制器”进行二次开发。通过编程方式,实现对包间内多个用电设备(如灯光、麻将机、空调、门锁、排风扇等)的独立电源控制、批量场景联动及延时通断控制。
适用设备:
智能包间控制器 Max/Mini
智能控制器 8路|交流电压版
2. 核心开发资源
接口协议: HTTP/HTTPS
请求方式: POST
数据格式: JSON
API 地址:
https://api.thingboot.com/{AppID}/device/control/鉴权方式: MD5 双重加密签名 (Sign)
3. 关键控制逻辑与参数
该设备的8路继电器彼此独立,开发者通过构建不同的 order JSON 参数来控制每一路的通断。
以下是8路继电器的标准控制指令对照表:
| 线路编号 | 开启指令 | 关闭指令 | 典型负载场景 (包间) |
|---|---|---|---|
| 第1路 | {"power1":"1"} | {"power1":"0"} | 照明灯/射灯 |
| 第2路 | {"power2":"1"} | power2":"0"} | 灯带/装饰灯 |
| 第3路 | {"power3":"1"} | {"power3":"0"} | 排气扇/新风机 |
| 第4路 | {"power4":"1"} | {"power4":"0"} | 饮水机/茶吧机 |
| 第5路 | {"power5":"1"} | {"power5":"0"} | 麻将机/娱乐设备 |
| 第6路 | {"power6":"1"} | {"power6":"0"} | 音响/投影仪 |
| 第7路 | {"power7":"1"} | {"power7":"0"} | 门锁/电磁锁 (直流) |
| 第8路 | {"power8":"1"} | {"power8":"0"} | 空调(注意负载匹配) |
负载提示:第4、5、6路通常为16A接口,适合接麻将机、饮水机等大功率设备;第8路适合接空调。普通照明接1-3路。
4. 接口二次开发实现
4.1 鉴权签名生成
在进行任何控制前,需要在请求URL中携带 sign 和 ts 参数。签名算法如下
Sign = md5( md5(开发者密码) + ts )
开发者密码:在芯步控制台获取。ts:当前Unix时间戳(秒),如1715328000。md5():标准的32位小写MD5加密。
签名生成示例步骤假设 AppSecret = "123abc", ts = 1715328000
计算
str1 = md5("123abc")->e10adc3949ba59abbe56e057f20f883e拼接
str2 = str1 + ts->e10adc3949ba59abbe56e057f20f883e1715328000计算最终签名
sign = md5(str2)
4.2 单路独立控制开发
需求场景:当客人按下小程序中的“开灯”按钮,单独打开第1路灯光。
请求URL
POST https://api.thingboot.com/YourAppID/device/control/?sign=xxxxx&ts=1715328000请求Body (JSON)
关键代码逻辑 (伪代码)
4.3 包间场景联动开发
需求场景:“一键开台”模式:开启灯光(第1路)、开启排风(第3路)、开启空调(第8路)。需同时发送命令以减少响应时间。
控制指令:使用
batch批处理指令。请求Body (JSON)
注:此指令将一次性指定1、3、8路继电器吸合(开启),相比逐条发送速度更快,体验更好。
需求场景:“一键清台”模式:关闭所有设备,准备迎接下一波客人。
控制指令:全关指令。
请求Body (JSON)
4.4 高级时序控制
需求场景:智能门锁联动。客人订单生效后,先开启门锁(第7路)5秒,让客人进门,随后门锁自动吸回,再自动开启总电源。
控制指令:使用
point(先通后断) 或reset(先断后通)。核心逻辑
需求场景:关闭空调时保护压缩机。通常空调关机后需延迟几分钟才能再开,但直接断电没关系;这里指风机盘管?通常控制器用于通断控制。
5. 设计与集成
业务系统对接开发者的后端服务(Server)应封装芯步的API。前端(小程序/App)不要直接调用设备API,应由业务后端统一调用,以保证
AppSecret的安全性。状态同步机制(可选)
查询:调用设备状态查询接口获取当前各路通断状态。
推送:配置芯步平台的“消息推送”回调地址,当设备状态发生变化时,平台会主动通知你的服务器,保证本地数据库与设备状态实时一致。
本地化/局域网控制若对响应速度要求比较高(如本地中控屏),可考虑开启局域网控制功能,直接向设备局域网IP发送HTTP指令,减少云转发延迟。
6. 注意事项
负载功率:严禁超载。8路虽然可控制多个设备,但总负载不超过4400W(交流版),单路阻性负载不超过2200W,感性负载需降额使用。
WiFi环境:设备仅支持2.4G WiFi,确保包间内信号覆盖良好。
频率限制:API接口有单设备 1次/秒 的访问频率限制,避免短时间内频繁下发指令。
通过以上接口开发,你可以轻松地将8路控制器无缝集成进现有的包间管理系统,实现远程开台、计时断电、客人自助通电等自动化管理功能。