CATALOG

芯步的单路智能墙壁开关支持HTTP API远程控制和定时任务,要实现对多台开关的分组控制,主要利用平台的“分组控制”接口,将多个设备加入同一分组后一键操作。以下是具体接入方案。

1. 核心概念解析

在开始集成之前,我们需要明确两个核心对象:设备分组

  • 单路智能墙壁开关 (UNI-KG-1)

    • 这是我们本次操作的基础硬件。它是一款标准86型开关,支持100V-240V电压,额定电流10A,适用于大多数家庭和办公照明电路

    • 核心功能:支持通过HTTP API远程控制 power1 线路的通断(1为开,0为关)

  • 设备分组

    • 分组是芯步平台提供的一个逻辑容器。你可以将多个设备(即使是不同类型的产品)加入同一个分组。

    • 核心价值:当你需要对一整个区域(如“一楼大厅”、“会议室”)或一类设备进行统一操作时,无需循环调用多次设备控制接口,只需对分组下发一次命令即可

2. 接入前的准备工作

在编写代码之前,需要完成以下基础配置:

  1. 获取凭证

    • 登录芯步控制台,获取你的 AppIDAppSecret。这是调用所有API的“身份证”和“密码”

  2. 设备配网与ID获取

    • 按照产品手册将单路开关通电,并通过“芯步”小程序或控制台配置Wi-Fi(注意:仅支持2.4GHz频段)

    • 在控制台的设备列表中查看并记录下开关的 device ID(例如 1878

  3. 创建分组

    • 在控制台创建一个新的分组(例如命名为“办公区照明”),并记录下生成的 Group ID(例如 1001)。

    • 将需要受控的单路墙壁开关设备添加进这个分组

3. 接口签名机制 (Sign)

芯步的API使用动态签名验证,所有请求都需要携带 signts(时间戳)。生成规则如下(以AppSecret=abc123ts=1700000000为例):

  1. 第一步:计算 AppSecret 的 MD5 值。MD5("abc123") = "e99a18c428cb38d5f22e03" (仅为示例)

  2. 第二步:将上述结果拼接时间戳。拼接结果 = "e99a18c428cb38d5f22e03" + "1700000000" = "e99a18c428cb38d5f22e031700000000"

  3. 第三步:计算拼接后的字符串的 MD5 值,得到最终的 signYourSign = MD5("e99a18c428cb38d5f22e031700000000")

4. 方案一:单设备控制 (前置基础)

在实现分组控制之前,我们首先确认单设备控制是正常的。这将使用 [设备 - 向设备下发指令] 接口

  • 请求地址https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

  • 请求方式POST

  • 请求示例 (JSON Body)

    注:由于其支持多设备控制,你可以用逗号分隔ID,例如 "device": “1878,1879”,这本质上也是一种简单的批量控制。但如果设备数量多或逻辑复杂,使用下述的分组方案。

5. 方案二:分组设备控制 (核心方案)

这是实现“设备分组控制”的核心。当需要控制多个单路开关时,只需调用 [分组 - 执行命令或动作] 接口

通过分组控制,你可以实现比较高的运维效率。例如,在一个大型办公环境中,通过分组接口可以一键关闭整层楼的所有电灯,无需逐一操作数十台设备。

  • 请求地址http(s)://api.thingboot.com/{AppID}/group/control/?sign={sign}&ts={ts}

  • 请求方式POST

  • 核心参数: 指定 Group ID 并下发命令。

场景 1: 一键开启/关闭整组照明

假设你的分组ID为 1001,需要将该分组下的所有单路开关(UNI-KG-1)的 power1 全部关闭:

  • POST Body (JSON 格式)

    或者使用标准的 order 包裹格式

    芯步的接口会智能识别组内设备类型,并执行具有 power1 属性的设备命令

场景 2: 执行复杂动作(定时通断)

门禁或特殊场景下,可能需要按下开关后延时复位(例如楼道灯点亮5分钟后熄灭)。虽然单路开关支持 reset1(先断后通)和 point1(先通后断),但在分组层面,我们也可以利用“动作”来实现联动。

  • 使用 action 参数: 如果你在控制台预设了一个动作(例如动作ID 5 代表“全关并锁定5秒”),调用如下:

6. 代码实战示例 (Python)

以下是一个基于Python的后台服务脚本示例,演示如何自动计算签名并控制分组关闭所有灯光:

7. 高级应用与局域网控制

除了标准的云端HTTP API外,芯步的设备还支持局域网(LAN)控制私有化部署。这对门禁系统尤为关键——即使外网断开,本地服务器仍可通过内网API控制开关开门,保障通行不中断。

如果你的业务系统(如ERP、物业管理平台)部署在与设备同一局域网内,可以在请求中将域名替换为设备的局域网IP或私有化网关地址,这样指令响应速度将从秒级(走云端)提升至毫秒级,且不受外网波动影响

8. 总结

通过对接芯步的HTTP开放接口,特别是利用 [分组 - 执行命令] 接口,你可以极其轻松地实现“一键控制所有灯光”或“情景模式切换”。整个开发流程总结为:配网 -> 建组 -> 计算Sign -> POST调用。该方案不仅适用于单路开关,同样适用于门禁锁、通断器等其他品类的批量控制