芯步AC4-10A这款智能通断器支持完整的HTTP API接口,可以通过二次开发把它集成到你自己的系统里。下面我整理了一份实操指南,涵盖接口原理、签名算法、代码示例和常见命令,你可以直接参考。
一、准备工作与核心概念
在开始写代码之前,我们先来点轻松的准备工作。AC4-10A这款开关其实就是一个小型电脑,通过WiFi联网,等待你的指令。
二次开发的核心就是调用芯步的开放API接口,发送HTTP请求控制开关。整个过程就像发短信:你编写程序发送特定内容到指定号码,开关收到后执行命令。
你需要准备三样东西:
一个AC4-10A智能开关(配好网,让它能上网)
芯步的开发者账号(登录控制台拿到AppID和AppSecret,相当于你的“账号密码”)
一个能跑代码的环境(可以是Python、PHP、Java,甚至是Shell脚本)
二、接口鉴权与原理(别看晕,很简单)
芯步的接口非常安全,每次请求都需要一个叫做 sign(签名) 的东西来证明是你本人在操作。这个签名生成规则是固定的,明白了之后你会发现其实一点都不难。
签名的生成规则是:sign = md5( md5(AppSecret) + ts )
拆解一下就是:
把你拿到的
AppSecret进行MD5加密,得到一串字符。把当前的时间戳(比如
1678888888)拼接到这串字符的后面。把拼接好的新字符串再进行一次MD5加密,结果就是
sign。
这样做主要是为了防止别人盗用你的请求,同时也防止恶意攻击。时间戳 ts 也让签名每秒都在变化,安全性很高。
三、实操:用代码控制开关通断
理论说完了,我们来点真格的。这里我用最常见的 cURL 命令在Linux命令行里演示,你在任何编程语言里思路都是一样的。
1. 控制开关“打开”
假设要让开关接通电路,给电器供电。
解读:
device=你的设备ID:告诉服务器你要控制哪个开关(可以在控制台查看到)。order={"power":"1"}:1代表开,0代表关。
2. 控制开关“关闭”
把上面的 order 参数里改成 {"power":"0"} 就行了:
3. “一键开关”或“点动模式”(很有趣的功能)
这个功能非常实用。比如你想控制车库门或者电脑开机按钮(只需要一个脉冲信号),可以用 point 命令。
类似的还有 reset 命令,作用是先断电,再自动通电,比如远程重启路由器,只需发送{"reset":"10000"}(断电10秒后恢复)。
四、进阶玩法和需要注意的点
当你掌握了基本的开关控制,可以玩点更有趣的。
批量控制
device参数支持一次传多个设备ID,用逗号隔开就行了。比如device=DEV001,DEV002,DEV003,一条指令就能关掉整个办公室的灯。获取设备状态:除了控制,还可以通过查询接口获取设备当前是开还是关。
局域网控制(私有化部署):芯步也支持局域网控制。如果你对公网延迟或数据安全非常敏感,可以把设备配置进局域网模式,直接通过本地IP调用接口,速度飞快。
一点小提醒:虽然额定功率有2200W,但要控制电机、LED灯这类感性负载时,功率要控制在300W以内,否则有损坏风险。
五、总结
AC4-10A的二次开发非常简单,核心三步:
算签名:按规则把AppSecret和时间戳混在一起加密。
发请求:用POST方式把device和order发过去。
看结果:开关动作了,你的二次开发就成功了。
这套流程可以轻松集成到你自己的系统里,不管是Node.js后端、Python脚本,还是PHP网站,实现起来都很轻松。芯步的开放接口做得很规范,几乎能兼容任何主流开发环境。