芯步的4路包间电源控制器MINI采用标准HTTP接口,单条请求即可完成设备控制,集成门槛较低。以下方案涵盖接口协议、签名算法、四种典型场景代码实现,以及设备配网与状态推送的配置要点。
解决方案:4路远程包间电源管理模块MINI 对接软件项目指南
1. 产品与技术概览
智能包间控制器Mini 是专为共享棋牌室、茶室、自习室等场景设计的4路远程电源管理设备。它支持通过标准HTTP协议进行控制,这意味着无论你的后端是Java、Python、PHP还是前端JavaScript(通过Node.js),只要支持网络请求,都能轻松集成。
核心功能:提供4路独立继电器输出,可分别控制照明、麻将机、空调、门锁等设备。
接口特点:开放HTTP API,支持公网/局域网(私有化)控制,响应速度快(约80-120ms)。
线路详情
线路1/2:16A接口,适用于照明、排气扇、麻将机。
线路3:10A接口,适用于门禁电磁锁。
线路4:30A接口,适用于2匹空调。
2. 对接流程与API调用详解
2.1 前置准备
在开始编码前,你需要从芯步平台获取以下凭证:
AppID:应用唯一标识。
AppSecret:开发者密码,用于生成签名。
Device ID:设备的唯一ID(可在控制台查看或通过接口拉取)。
2.2 接口地址与鉴权机制
设备的控制请求通过 POST 方式提交,核心难点在于签名(Sign)的生成,这是为了防止接口被恶意调用。
请求地址
http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}参数说明
{AppId}:替换为你的应用ID。{ts}:当前的Unix时间戳(秒级),用于防重放攻击。{sign}:动态生成的签名。
签名生成公式
sign = MD5( MD5(AppSecret) + ts )注意:此处为字符串拼接,先将AppSecret进行MD5哈希得到32位小写字符串,再拼接时间戳,最后对整个字符串再次进行MD5加密。
2.3 核心控制命令协议
请求体(Body)为 JSON 格式,核心字段为 device 和 order。
单路控制示例:
命令指令表(针对Mini设备)
| 功能描述 | order 参数示例 | 说明 |
|---|---|---|
| 控制线路1 | {"power1": 1} (开) / {"power1": 0} (关) | 控制照明/排风等 |
| 控制线路2 | {"power2": 1} / {"power2": 0} | 控制麻将机/插座 |
| 控制线路3 | {"power3": 1} / {"power3": 0} | 控制门锁(通常为点动模式) |
| 控制线路4 | {"power4": 1} / {"power4": 0} | 控制空调 |
| 全开/全关 | {"power": 1} / {"power": 0} | 一键控制所有线路 |
| 批量控制 | {"batch":{"relay":[1,3],"power":0}} | 同时关闭第1路和第3路 |
| 临时供电(点动) | {"reset":{"relay":[2],"interval":2000}} | 线路2先断后通,间隔2秒(适用于门禁或服务器重启) |
3. 代码实现示例
以下代码演示如何通过签名机制控制“线路1”打开。
Python (Requests) 实现:
Node.js (Axios) 实现:
4. 进阶功能集成:实时状态同步
单纯的“下单控制”只是第一步,一个完整的软件项目还需要状态同步(比如:App上需要显示灯是开还是关,或者有人开门了需要记录)。
芯步支持消息推送机制,即设备状态发生变化时(手动按了墙壁开关,或者通过API关了空调),设备会主动将数据上报到你自己的服务器。
配置步骤:
设置回调URL:在芯步控制台配置你的服务器接收地址(例如:
https://yourdomain.com/api/device/callback)。接收数据:当设备状态改变,平台会向你的服务器发送POST数据包。
数据格式示例
更新数据库:你的软件接收到此JSON后,解析并更新数据库中对应包间的设备状态,实现前端界面实时刷新。
5. 典型场景应用逻辑
在棋牌室/茶室软件系统中,可结合Mini控制器设计以下自动化流程:
订单自动通电用户在小程序下单 -> 系统支付回调成功 -> 调用
{"power":1}(全开) -> 包间灯亮、麻将机通电、空调开启。计时计费与断电订单开始计时 -> 剩余时间10分钟时,调用
{"play":"您还有10分钟,如需续费请扫码"}(如果是TTS语音版) -> 订单结束,调用{"power":0}(全关)。门禁联动用户点击小程序“开门” -> 调用
{"reset":{"relay":[3],"interval":3000}}(线路3通电3秒后自动断开,模拟的“点动”开门)。能耗或保护逻辑检测到空调(线路4)开启且门窗传感器未关闭时,可调用
{"power4": 0}强制关闭空调,节能环保。
6. 部署架构:私有化 vs. 公网
公网SaaS模式(推荐入门):设备连接芯步云,你的服务器通过调用芯步公网API控制设备。优点是实施快,无需维护MQTT长连接。
局域网私有化模式(推荐商业项目):如果门店内网带宽稳定且注重数据隐私,可在设备配网时将其指向你的本地服务器IP。设备指令完全在内网传输,不受外网断网影响,且无延迟。
总结:对接该产品的主要工作集中在签名鉴权逻辑的后端封装以及订单状态机与设备指令的联动设计上。一旦打通API接口,即可实现包间电源的无人化、自动化管理。