芯步AC4-20A是一款支持HTTP接口远程控制的智能通断器,额定功率4400W,适用于各类照明场景的智能化改造。以下是详细的对接方案,涵盖接口格式、签名算法、代码示例及架构。
1. 产品概述与核心能力
芯步智能通断器AC4-20A 是一款大功率(4400W)智能照明控制设备。相比传统的 Zigbee 或蓝牙方案,它的核心优势在于原生开放 HTTP 接口,这意味着开发者不需要特定的网关或私有协议,只需标准的 HTTP 请求即可在任何地点、任何编程语言环境下控制电路的通断。
产品核心参数:
控制能力: 支持 AC 4-20A 电流,适用于大多数照明回路及家用电器。
接口协议: HTTP API(支持公网与局域网)。
特色功能: 支持定时任务、上电状态自定义(断电再来电时的默认状态)、按钮动作可屏蔽。
2. 对接设计
在系统架构上,芯步采用的是设备直连云端+开放 API 的设计模式。开发者无需维护底层通信协议,只需调用芯步的开放平台。
架构图逻辑说明:
设备层: AC4-20A 通过 WiFi 连接至芯步云(ThingBoot Cloud)。
接口层: 你的业务服务器通过调用芯步开放的 HTTP API。
控制端: 你的前端(Web/App/小程序)通过调用你自己的后端接口,间接触发对 AC4-20A 的控制,或通过芯步提供的 WebSocket/消息推送机制接收设备状态更新。
3. 准备工作:获取凭证
在开始编码前,需要在芯步开放平台进行以下配置:
注册企业/开发者账号:获取
AppId和AppSecret,这是所有接口调用的身份凭证。添加设备:将 AC4-20A 通电并配网(通常通过 SmartConfig 或 AP 模式),在平台控制台获取设备的唯一标识符
Device ID(注意:API 示例中字段为device,值为数字 ID)。配置消息推送(可选):如果你的项目需要实时同步设备的开关状态(而非仅靠轮询),需要在控制台配置
Callback URL用来接收设备上报的状态变更。
4. 接口技术对接细节
芯步的接口设计非常简洁,核心是将“签名验证”做在 URL 的 Query 参数中,而业务数据放在 JSON Body 中。
4.1 请求地址构建
POST http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={timestamp}参数说明:
{AppId}:平台分配的应用ID。{ts}:Unix 时间戳(秒或毫秒级),用于防止重放攻击。{sign}:签名值,用于验证请求合法性。
4.2 签名算法(Sign)
这是对接中最关键的一步,目的是保证接口调用的安全性,防止伪造请求。通常规则如下(需查阅具体文档,通用逻辑如下):
将所有请求参数(AppId, Device ID, Order 内容等)按 Key 排序。
拼接字符串并追加
AppSecret。进行 MD5 或 SHA256 加密。
伪代码示例:
4.3 控制指令格式
这是核心指令:开灯与关灯。
开灯(闭合继电器):
Method:
POSTBody:
关灯(断开继电器):
Body:
根据官方文档,参数 power 对应的就是控制设备线路的主开关。
4.4 不同编程语言的集成示例
由于接口只依赖 HTTP,以下是两种常见场景的实现思路:
第一种场景:在 Java Spring Boot 后端集成
第二种场景:在前端(如微信小程序)直接控制虽然出于安全考虑(避免泄露 AppSecret),由后端代理请求。但在纯局域网内部或低安全要求的场景下,可以使用 JS 发起请求。注意:若在公网前端直接调用,必须配合 HTTP 白名单机制或临时 Token 策略,切忌硬编码 Secret。
5. 高级集成:状态同步与联动
单纯的远程开关只是第一步,为了让项目更专业,你需要处理状态同步。
5.1 获取设备当前状态
除了控制,平台也提供了查询接口。如果用户手动按下 AC4-20A 设备上的物理按键,云端的状态会变化。你可以通过轮询接口或接收推送来获知当前是开还是关。
5.2 构建“场景联动”
这是芯步生态的优势。你可以将 AC4-20A 与其他传感器联动。
逻辑实例: “当智能人体传感器检测到无人(状态变化)时,关闭 AC4-20A(控制接口调用)。”
集成方式: 你的后端服务器接收来自芯步的 消息推送(Webhook)。例如,人体传感器上报无人事件 -> 你的服务器接收 -> 服务器调用 AC4-20A 的关灯接口。
6. 部署调试与最佳实践
6.1 局域网直连模式
如果你的项目运行在工厂、办公室内网,且不希望走公网流量,AC4-20A 支持局域网控制。只要你的服务器和设备在同一网段,可以直接调用设备的本地 IP API。
提示: 局域网内控制延迟可低至 10ms 以内,且不依赖外网宽带。
6.2 常见问题排查
签名错误(401): 检查时间戳
ts是否与服务器时间相差过大(通常误差不得超过 5 分钟),检查拼接字符串是否包含换行符。设备离线(1004): AC4-20A 仅支持 2.4G WiFi。确保信号强度,且路由器未开启 5G 优先模式。
控制无响应: 查看设备 ID 是否为数字格式(如
820720),而非字符串格式。
6.3 安全
传输加密: 生产环境请请一定要使用 HTTPS 接口,防止抓包泄露 Token。
Token 动态化: 你的业务后端维护一个 Token 缓存,避免每次请求都重新计算签名,提高并发处理能力。
7. 总结
通过对接芯步 AC4-20A,开发者可以用最熟悉的 HTTP 请求 解决智能照明控制问题。核心流程总结为三步:
设备配网 -> 获取 ID;
计算签名 -> 调用
https://api.thingboot.com/.../control/;下发指令 ->
{"device":ID, "order":{"power":1}}。
这套方案完美适用于需要快速集成、高稳定性、高功率照明的商用或工业项目。如需更详细的命令码表(如定时任务设置),登录芯步开发者控制台查阅最新的 API Doc。