AC4-30A 智能通断器的核心优势在于开放 HTTP 接口,这意味着你可以用任何编程语言快速实现远程控制。以下是完整的二次开发方案,涵盖接口协议、签名算法和代码示例。
解决方案:基于芯步 AC4-30A 开放接口的远程通断控制二次开发
1. 准备与环境搭建
在开始编码之前,需要完成以下准备工作,这是二次开发的基础。
硬件准备
芯步 智能通断器 AC4-30A 设备。
稳定的 2.4GHz Wi-Fi 网络(不支持 5G Wi-Fi)。
账号与设备注册
访问芯步官网或指定物联网平台,注册开发者账号。
登录物联网控制台。
通过控制台为 AC4-30A 设备进行配网,获取唯一的 设备 ID (Device ID)。这是后续接口操作中标识设备的唯一凭证。
接口文档查阅
阅读官方《智能通断器4-30A产品手册》,重点关注 HTTP API 接口 部分。
2. 接口鉴权与核心指令解析
AC4-30A 的二次开发主要基于 HTTP POST 请求。你需要理解请求的构成。
请求地址 (URL) 结构
https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}{AppID}: 你的应用 ID(平台生成)。{sign}: 接口签名,用于身份验证。{ts}: 时间戳,用于防止请求重放攻击。
必须携带的 Header
Content-Type:application/x-www-form-urlencodedX-APISpace-Token: 你的 API Token(在控制台获取)。
核心指令集 (order 参数)请求体(Body)中必须包含
device和order两个字段。其中order是一个 JSON 字符串,支持以下三种操作模式,可满足简单开关及复杂自动化需求:
| 功能模式 | 指令JSON (order参数) | 说明 |
|---|---|---|
| 立即通断 | {“power”: “1”} (开启){“power”: “0”} (关闭) | 基础功能,即时改变设备通电状态。 |
| 先通后断 | {“point”: “毫秒数”} | 用于触发瞬时通断,如控制门禁或老式冲水器。例如:{“point”: “3000”} 表示通电3秒后自动断电。 |
| 先断后通 | {“reset”: “毫秒数”} | 用于设备重启复位。例如:{“reset”: “5000”} 表示断电5秒后重新上电。 |
3. 核心代码实现示例
以下提供两种最常见的开发语言示例,展示如何封装 HTTP POST 请求来控制设备。
第一种场景:Java 实现——简单的开关控制
代码参考来源:芯步开发者文档及 Java 对接示例。
第二种场景:Python 实现——自定义自动定时开关
你可以将以下代码集成到定时任务框架(如 APScheduler)或云函数中,实现定时执行。
代码参考来源:Python HTTP 接口调用逻辑。
4. 高级应用与架构集成方案
除了基本的代码调用,AC4-30A 的接口能力可以轻松融入现有系统架构:
Web/APP 后端集成可以直接在用户的管理后台或移动应用后端服务中封装上述接口。例如,当管理员在网页上点击”打开水泵“按钮时,前端请求你的业务后端,你的后端再调用芯步的接口
{“power”: “1”},实现权限控制和操作日志记录。第三方物联网平台(Node-RED/Home Assistant)由于 AC4-30A 支持纯局域网和私有化部署,可以在家庭智能中枢(如 Home Assistant)中配置
Restful Command集成。通过调用内网 IP 地址的接口,即使外网断开,也能实现本地自动化联动。定时与循环任务利用接口
{“point”: “毫秒数”}的特性,无需在云端维护复杂的计时逻辑。例如,你需要设备每 1 小时排水 10 秒,只需发送一次{“point”: “10000”},设备硬件会自动完成倒计时断开,即使网络中断也能保证动作准确执行。
5. 注意事项与最佳实践
数据安全:在生产环境中,请一定要在后端服务中计算
sign签名,严禁将AppID、Token和签名算法直接明文写在客户端(如手机 APP 或浏览器网页)代码中,以防 Token 泄露导致设备被非法控制。网络稳定性:设备仅支持 2.4G Wi-Fi,请确保安装位置信号强度足够。设备支持设定 5 组 Wi-Fi,将常用网络和备用网络都配置进去,提高稳定性。
功率限制:虽然额定电流为 30A,但如果是感性负载(如电机、电钻),负载功率控制在 1100W 以内;阻性负载(如白炽灯、电热管) 6600W 以内。
通过上述步骤,你可以快速完成基于 HTTP 接口的 AC4-30A 智能通断器二次开发,并将其无缝集成到现有的任何软件系统中。