CATALOG

DC-10A是一款支持HTTP接口的智能通断器,无需网关即可直连WiFi,非常适合集成到各类项目中。下面从接入准备、接口调用、状态监听和场景示例几个方面,梳理完整的对接方案。

一、 准备工作与核心概念

在开始编码之前,需要完成两件事:获取密钥和给设备联网。

1. 获取开发者凭证登录芯步控制台,在“开发设置”页面获取以下两个关键信息:

  • AppID (开发者ID): 用于标识您/开发者的唯一身份,通常会在请求 URL 中直接体现

  • AppSecret (开发者密码): 用于生成签名(Sign),请请一定要妥善保管,不直接在前端代码中暴露

2. 设备配网DC-10A 无需网关,直接连接 2.4G WiFi。

  • 使用官方提供的“批量配网小程序”,按照引导将设备加入本地无线网络。

  • 确保设备在控制台的状态显示为“在线”。此时,记录下 Device ID (设备ID),这是控制具体对象的唯一标识

二、 核心技术:签名计算与接口调用

芯步的开放接口通过 Sign (签名) 来验证请求的合法性,理论上您可以采用任何支持 HTTP 协议的编程语言进行对接

1. 签名算法 (Sign)该平台使用双重 MD5 加密方式,防止请求被篡改:

Sign = md5( md5(AppSecret) + ts )

  • 第一步: 将您的 AppSecret 进行 MD5 加密,得到一个 32 位字符串。

  • 第二步: 将上一步得到的字符串与 ts (当前 Unix 时间戳,单位:秒) 进行拼接。

  • 第三步: 对拼接后的新字符串再次进行 MD5 加密,结果即为 Sign

2. 下发控制命令 (HTTP POST)以控制 DC-10A 的线路打开为例,接口地址与参数如下:

  • URLhttps://api.thingboot.com/{AppID}/device/control/?sign={Sign}&ts={Timestamp}

  • Method: POST

  • HeaderContent-Type: application/json

  • Body (JSON)

*注:DC-10A 支持多路控制,power1 代表第一路,power2 代表第二路*

3. 代码示例(伪代码/Python思路)

三、 进阶功能:实时状态同步

仅能下发命令是不够的,项目通常需要获取设备当前是开还是关。DC-10A 支持状态实时上报。

  • 消息推送机制: 当设备状态发生变化时(物理按键按下、网络指令控制、外接开关触发),平台会主动向您配置的 URL 推送状态变更数据

  • 对接方式: 在控制台的“开发设置”中配置 消息推送URL。该 URL 需要是一个公网可访问的 HTTP/HTTPS 接口。

  • 数据格式: 平台会向该 URL 发送 JSON 数据,包含了设备 ID 和最新的 power 状态。您的后端服务需要接收该 POST 请求,并更新数据库中的设备状态。

四、 照明场景方案应用示例

假设您正在开发一套智能办公室管理系统,可以这样利用 DC-10A 来落地:

1. 人体感应联动(服务端逻辑)

  • 硬件: 另购一个传感器(如人体红外传感器)。

  • 逻辑: 传感器检测到“无人”状态 -> 服务器接收传感器上报 -> 服务器调用 DC-10A 的控制接口。

  • 命令: 发送 {“power1”: 0} 给对应的 DC-10A,实现人走灯灭。

2. 定时任务与节能策略

  • 需求: 每天晚上 11 点后自动关闭楼道的装饰照明。

  • 实现: 在您的项目中写一个定时任务(Cron Job)。

  • 执行: 到点触发调用 HTTP 接口,携带 {“power”: 0} 指令。

3. 防止干扰(调试模式)

  • 在开发测试阶段,您可以在控制台开启“调试模式”。在此模式下,系统 不校验 Sign 和 IP 白名单,允许您直接使用 Postman 等工具快速测试指令格式,待业务逻辑跑通后再封装正式的签名算法

五、 总结

将 DC-10A 接入项目的核心工作量集中在 封装签名算法 上。一旦完成了签名请求的模块开发,后续的控制指令仅仅是改变 order 字段中的 JSON 值而已。其开放接口的设计显著降低了智能硬件的接入门槛。