芯步的86型智能墙壁开关开放了完整的HTTP API接口,支持远程控制、状态保持、先通后断等丰富指令。以下方案涵盖对接流程、签名算法、核心命令示例及自定义联动逻辑的实现思路。
解决方案:基于芯步开放接口对接1路86型智能墙壁开关实现自定义联动
1. 概述与准备
本方案的目标是指导开发者如何利用芯步开放的HTTP API接口,对接1路86型智能墙壁开关,并在此基础上根据业务需求(如传感器触发、定时任务、场景联动)实现自定义控制逻辑。
核心准备:
硬件设备:芯步 1路86型智能墙壁开关(需接入2.4GHz Wi-Fi网络)。
平台凭证:登录芯步控制台,获取
AppID(应用ID)和AppSecret(开发者密码)。设备ID:在控制台获取目标设备的唯一标识
Device ID。
2. 接口鉴权与签名机制
芯步采用动态签名验证身份,所有API请求均需携带签名。签名规则采用双重MD5加密:
将
AppSecret进行一次MD5加密得到Secret_MD5。将
Secret_MD5与当前时间戳ts(秒级)拼接。将拼接后的字符串再次进行MD5加密,得到最终签名
sign。
签名公式:sign = MD5( MD5(AppSecret) + ts )
请求地址:https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}
注意:时间戳需为秒级整数,服务器会校验时间戳的有效性,防止请求伪造。
3. 1路开关核心控制命令
针对1路智能墙壁开关,接口交互协议完全一致。主要通过 order 参数中的不同字段实现特定功能。
| 功能场景 | 命令示例 (order JSON) | 适用场景描述 |
|---|---|---|
| 简单开关 | {"power":1} 或 {"power":0} | 基础远程控制,直接开启或关闭电路。 |
| 状态保持 | {"power":{"keep":"1","revert":"5"}} | 用于安防或特定场景联动。例如:开门触发开灯,但5秒后自动恢复关灯状态。 |
| 点动触发 | {"point":"1000"} | 控制门禁开门按钮或电器复位。开关将会接通,持续1秒后自动断开。 |
参数详解:
power:控制线路通断。keep:锁定状态("1"=锁定开启,"0"=锁定关闭)。revert:自动恢复时间(单位:秒)。point:先通后断时长(单位:毫秒)。
4. 实现自定义联动操作
自定义联动的核心逻辑由用户(开发者)的服务器承载,而不是依赖云平台内置的规则引擎。通过接收其它设备上报的数据或定时任务,向开关发送指令。
典型联动:
触发源感知:接收传感器(如温湿度、人体雷达)上报的数据,或识别系统中的特定事件(如闹钟响起、日落时间)。
业务逻辑处理:后端服务器根据预设规则(例如:温度 > 30度 且 时间 = 18:00)生成控制指令。
下发指令:后端服务器携签名调用API,向目标开关下发
order命令。
场景示例:人来灯亮,人走灯灭(配合传感器)假设服务器接收到“人体传感器”上报的「有人移动」消息:
5. 配网与安装指南
物理安装:采用标准86型底盒,直接替换传统开关。接线需区分火线(L)和零线(N),并确保在该区域内安装电容以防灯光闪烁。
网络配置(SoftAP模式)
开关断电后重新上电,等待指示灯快速闪烁(表示进入配网模式)。
利用小程序或控制台,将WiFi名称和密码广播给设备。
注意:仅支持 2.4GHz 频段Wi-Fi,不支持5GHz。
6. 高级自定义策略
利用上述接口,开发者可以实现超越普通定时的高级功能:
防护模式:触发报警后,命令开关执行
{"power":{"keep":"1","revert":"0"}}(永久锁定开启),只有解除警报才恢复。脉冲控制:配合自动化机械装置,下发
{"point":"500"}(0.5秒脉冲),避免长时间通电导致电机损坏。场景组合:在代码层面实现“离家模式”。通过循环调用不同设备的接口,一键关闭家中所有1路、2路开关。
7. 总结
芯步开放的HTTP接口通过标准的JSON格式和简单的MD5签名机制,极大降低了对接门槛。开发者无需关心底层硬件协议,只需在业务服务器中处理好触发源与开关指令的逻辑映射,即可轻松完成自定义联动操作。