芯步的8位分控插排/控制器开放标准HTTP接口,单台设备可独立控制8个插位。要实现分组控制,核心思路是将多个插位或设备绑定为逻辑分组,再通过分组接口一次性下发指令——这样既能批量控制同一场景下的设备,又能保留单路独立控制的灵活性。
1. 背景与目标
在智能办公、机房管理、无人值守售货柜等场景中,用户往往需要同时控制多个插座的断电重启,或者按区域(如“服务器区”、“显示器区”)进行批量开关。本方案的目标是指导开发者如何利用芯步提供的 HTTP开放接口,对8位分控插排(智能PDU/通用控制器)实现高效、稳定的设备分组控制。
核心目标:
实现对跨设备的多个插位进行“组”级别的批量操作。
保留对单个设备、单个插位的独立控制能力。
降低开发复杂度,利用分组接口减少循环调用。
2. 核心接口与鉴权准备
在开始对接分组功能前,需确保已完成基础API对接。
2.1 接口通用鉴权
芯步的API均采用 URL 参数鉴权方式,所有请求都需要携带以下参数
| 参数 | 说明 | 计算示例 |
|---|---|---|
AppID | 应用唯一标识,后台获取 | 路径参数:/{AppID}/ |
ts | Unix 时间戳(秒) | 需保证与服务器时间误差在合理范围 |
sign | 请求签名 | md5( md5(AppSecret) + ts ) |
技术提示
sign的生成逻辑涉及双重MD5加密。例如,若AppSecret = "abc123",ts = 1609459200,需先计算md5("abc123"),拼接上ts,再整体计算一次 MD5。
2.2 关键硬件及指令
本方案主要针对以下两类产品(均支持8位分控):
智能PDU[分控]:标准机柜插座,支持8位独立控制。
智能通用控制器[8路]:适用于沙盘、灯光控制。
基础单设备控制命令示例(HTTP):
3. 分组控制实现方案
要实现“分组控制”,主要分为三个阶段:创建分组、绑定设备线路、执行分组命令。
3.1 创建与逻辑映射
在芯步的物联网控制台或通过“分组列表”接口,需建立逻辑分组。一个分组类似于一个“场景”或“集合”。
场景举例:
分组A(会议室投影区):包含 设备01 的 第3路(投影幕布)、设备01 的 第4路(投影仪)。
分组B(机柜核心设备):包含 设备01 的 第1路(路由器)、设备02(另一台PDU)的 第1路(核心交换机)。
3.2 核心实现:分组指令下发
芯步提供了专门的分组控制接口,该接口支持在单次请求中向同一分组内的多个不同设备的线路下发命令,是实现分组控制的关键。
接口地址:
http(s)://api.thingboot.com/{AppID}/group/control/请求方法:
POST
方案A:下发具体线路命令如果分组中包含多个设备的多个线路,可以将它们视为独立的“功能点”直接控制。
请求示例(JSON):
注:这种方式适用于分组内设备型号统一的情况。
方案B:使用 order 对象(推荐,更灵活)通过 order 对象可以精确控制,甚至混合使用不同的设备指令。
请求示例:
3.3 高级控制:一键重启与延时
在实际运维中,经常需要对分组内的设备进行“重启”(先断后通)操作。利用分组接口传参可以轻松实现这一点。
场景: 一键重启分组内所有设备的第8路(通常连接交换机)。
请求示例:
参考指令标准。
4. 实战代码示例
以下是一段伪代码/逻辑示例,展示如何在您的后端服务中实现上述分组控制逻辑。
Python (Flask/Django) 逻辑示例:
5. 注意事项与最佳实践
分组ID的获取:分组ID (
group) 是一个整型数字,可以通过调用“读取分组列表”接口或直接在芯步控制台的设备管理页面查看。错误处理
若接口返回
502,通常表示分组不存在或该分组下没有识别到对应指令的设备,请检查设备是否在线。若涉及混合型号设备(例如既有8位PDU,也有1位插座),
order中的指令必须匹配设备本身的功能,否则该指令对不支持的设备无效。
网络环境
公网:直接调用
api.thingboot.com。局域网/私有化:芯步硬件支持局域网发现与直连,若您的服务器和设备在同一局域网,可改用局域网IP进行更快速的通信,降低外网延迟。
MQTT 替代方案:如果对实时性要求比较高,除了 HTTP 轮询/调用外,可采用 MQTT 协议订阅分组控制主题 (
api/{AppID}/group/control),实现服务端主动推送控制指令。
6. 总结
通过芯步开放的 HTTP 接口对接8位分控插排实现分组控制是低成本、高效率的解决方案。开发者仅需关注业务逻辑(如何划分分组),无需关心底层硬件通信细节。利用 group/control 接口配合 order 参数中的 powerX、batch 和 reset 指令,即可轻松实现多设备、多线路的批量控制、定时重启等高级自动化运维功能。