芯步的智能插排(5位)通过开放的HTTP API接口,可快速实现远程开关状态查询与控制。接口采用签名认证机制,单次请求即可针对任意一路或多路插座执行通断操作。以下方案涵盖认证配置、命令构建及状态查询的完整对接流程。
1. 核心接口与认证机制
对接芯步的智能硬件,主要依赖 设备控制接口。该接口支持通过HTTP POST请求向指定设备下发指令,具有响应快(80-120ms)、支持多设备并发等特点。
在开始调用前,需要准备以下三组关键信息,它们均可在芯步控制台的“开发设置”中获取:
AppId(应用ID):用于标识调用者的身份。
AppSecret(应用密钥):用于生成签名,保障接口安全。
Device ID(设备ID):即5位智能插排的唯一标识,可在控制台设备列表查看。
签名算法(Sign)所有API请求都需要携带签名,以防止接口被篡改或盗用。签名生成逻辑如下
对
AppSecret进行一次MD5加密,得到字符串S1。获取当前的Unix时间戳(秒级),记为
ts。将
S1与ts拼接,得到字符串S2。对
S2再次进行MD5加密,得到最终的sign。
公式sign = MD5( MD5(AppSecret) + ts )
2. 对接5位智能插排的命令格式
针对5位插排,接口地址及请求参数如下:
请求地址
http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}请求方式:POST
Content-Type:application/json
核心命令对照表5位插排将每一位独立作为一个控制单元,命令参数如下
| 功能描述 | 命令参数 (Order) | 值说明 |
|---|---|---|
| 控制第1位插孔 | power1 | 1(开启) / 0(关闭) |
| 控制第2位插孔 | power2 | 1(开启) / 0(关闭) |
| 控制第3位插孔 | power3 | 1(开启) / 0(关闭) |
| 控制第4位插孔 | power4 | 1(开启) / 0(关闭) |
| 控制第5位插孔 | power5 | 1(开启) / 0(关闭) |
| 批量控制 | batch | 例如:[1,0,1,0,1] |
| 定时关闭 | reset1 ~ reset5 | 毫秒数,如 60000 |
3. 实战场景:远程开关与状态查询
由于API是“命令下发”模式,若要获取“当前真实状态”,通常有两种实现路径:
3.1 发送控制指令(以Python为例)
以下代码演示了如何生成签名并控制第1路开启、第3路关闭:
程序执行后,若返回
{"code":200},仅代表平台收到了指令,实际设备是否执行成功需结合消息推送确认。
3.2 方案1:通过“消息推送”实时获取状态【推荐】
这是获取设备状态最精准、最实时的方法。
原理:当设备状态发生变化时(如:有人按了插排上的物理按钮、电压过载自动跳闸、或设备定时关闭),芯步平台会主动向配置的URL推送状态数据。
对接流程
在芯步控制台配置“API回调URL”(如
http://yourdomain.com/api/device/callback)。接收POST请求,解析JSON数据包,提取其中代表各线路状态的字段。
优势:无需轮询,实时性强,资源消耗低。
3.3 方案2:主动查询状态曲线
如果无法配置公网回调,可以通过查询设备的历史数据来间接获取状态。
原理:如果插排带有“功率计量”功能,它会不断上传电压、电流、功率数据。通过查询“设备历史数据”接口,如果当前功率为0,反向推导此时应为关闭状态。
适用场景:主要用于用电量统计,作为状态判断的辅助手段。
4. 进阶功能:定时与延时控制
除了简单的开/关,接口还支持在命令中直接携带定时任务,减少服务器维护定时任务的复杂度
先通后断(Point):开启第2路,持续1小时后自动关闭。
order{"point2": 3600000}定时关闭(Reset):如果当前是开启状态,想在30分钟后关闭(无需关心当前是开还是关)。
order{"reset5": 1800000}
5. 最佳实践和需要注意的点
处理异步状态:API返回200不代表设备真的亮了。如果业务逻辑要求严格(例如支付后必须通电),以设备上行的状态消息为准。
保持时间戳同步:签名中的
ts是Unix时间戳(秒)。请确保服务器时间与标准时间误差不超过5分钟,否则请求会被拒绝。局域网直连:如果服务器和设备在同一局域网内,且追求极低延迟,可以在控制台开启“局域网API”功能,直接通过设备IP控制,无需经过云端。
总结
对接芯步5位智能插排,开发者仅需掌握 MD5 签名和 HTTP POST 请求即可。控制指令通过 power1 ~ power5 字段精准触达每一位插孔,结合平台的消息推送机制,可完整实现“查询状态”的业务闭环。