CATALOG

共享自习室的照明和门禁控制是无人化运营的关键环节。芯步的智能触摸墙壁开关2路产品提供开放的HTTP API接口,可通过签名认证直接下发控制命令,支持局域网和公网两种模式。下面从接口能力、签名机制、核心代码实现到完整业务流程,给出可落地的技术方案。

解决方案:基于芯步开放接口的共享自习室照明与门禁集成方案

1. 背景与选型分析

在共享自习室的无人值守运营中,痛点在于如何远程控制座位的照明灯以及进出通道的门禁。传统的Wi-Fi方案往往依赖网关,增加了故障点和成本。芯步 智能触摸墙壁开关2路 (型号:UNI-KG-CM-2) 的优势在于:

  • 无网关直连:设备直接连接2.4G Wi-Fi,去除了网关这一中间环节,降低了硬件成本和网络故障率

  • 双路独立控制:设备提供两路继电器输出。

    • 第1路:连接座位的顶灯或台灯,实现“人走灯灭,预约开灯”。

    • 第2路:连接电磁门锁的电源适配器,实现“远程开门”。

  • 接口通用性:采用标准HTTP协议,无论您的后端是Java、Python、PHP还是Node.js,甚至小程序云开发,都能无缝对接

2. 硬件接线与网络拓扑

物理接线(由电工执行):

  • L极(火线):接入总火线。

  • L1(第一路灯线):接至指定座位的照明灯线。

  • L2(第二路灯线):接至12V/24V电源适配器输入端,适配器输出端接磁力锁或电插锁。

  • 零线:开关需接零线以保证触摸面板供电。

网络配置:设备配网采用“热点配网”模式。在安装阶段,运维人员通过微信小程序或PC控制台,将现场Wi-Fi的SSID和密码写入设备。设备支持存储5组Wi-Fi,确保在主网络故障时可自动切换备用网络

3. 开放接口集成详解

核心集成工作围绕“签名生成”和“指令下发”展开。芯步的接口安全机制基于双重MD5签名。

3.1 签名算法(Sign生成逻辑)这是集成最容易出错的地方。根据官方文档逻辑,签名生成公式为:Sign = MD5( MD5(AppSecret) + ts )

  • AppSecret:在芯步控制台获取的开发者密钥。

  • ts:当前Unix时间戳(秒级)。

代码示例(伪代码):

3.2 核心API:设备控制

  • 请求地址https://api.thingboot.com/{AppID}/device/control/

  • 请求方法:POST

  • 请求头Content-Type: application/json

  • 关键参数

    • device:设备的唯一ID(在控制台设备列表查看)。

    • order:JSON字符串,即下发指令。

3.3 针对自习室场景的指令集基于智能触摸墙壁开关2路的支持能力,我们定义以下映射:

业务场景操作对象Order指令 (JSON)物理效果
用户扫码入座照明 (路1){"power1": 1}灯亮
用户离座/超时照明 (路1){"power1": 0}灯灭
远程开门门锁 (路2){"point2": "1000"}门锁通电1秒后断开(点动模式)
管理员锁定照明 (路1){"power1":{"keep":1,"revert":0}}强制锁定开(用户手动无法关闭,用于维护)

注:对于门锁控制,不使用简单的 {"power2":1}{"power2":0},因为若网络延迟可能导致电锁长时间通电烧毁。使用内置的 先通后断(点动) 指令 point2,设备端会自动在1秒后断开通电,更加安全

4. 软件项目集成架构

4.1 业务逻辑流程图

  1. 用户端(小程序/APP):用户选择座位 -> 支付下单 -> 后端服务器生成有效订单。

  2. 后端服务

    • 接收支付回调。

    • 调用芯步API,发送 {"power1":1} 至对应座位的开关设备。

    • 记录操作日志。

  3. 设备响应:开关执行吸合,照明电路接通,灯亮。

  4. 异常处理

    • 若API返回错误码(如设备离线),后端告知用户“设备连接异常,请联系管理员”。

    • 若订单结束(时间到),后端自动发送 {"power1":0} 强制关灯,防止资源浪费。

4.2 核心代码模块(Java Spring Boot 示例)

5. 高阶优化策略

  1. 局域网直连模式(降低延迟)芯步的设备支持局域网控制。如果您的服务器部署在自习室本地的边缘网关或树莓派上,可以绕过云层网络,直接向设备的局域网IP发送HTTP请求。这可以避免因公网波动导致的关灯延迟,提升用户体验

  2. 状态同步机制为了避免用户手动触摸开关关灯导致订单尚未结束的“逃单”情况,采用周期性轮询WebSocket推送

    • 虽然HTTP接口主要是下发,但您可以在后台定时查询设备状态(如果有提供状态查询接口)。

    • 逻辑:若检测到设备状态为关,但数据库中订单状态为进行中,则自动调用 {"power1":1} 再次强制开灯,并提醒用户“请勿自行操作设备”。

  3. 语音联动(扩展)共享自习室常有“扫码开灯后提醒用户”的需求。虽然墙壁开关不具备语音功能,但您可以联动芯步生态内的语音喇叭设备,在开灯的同时发送指令:{"play:gbk:16":"欢迎光临,座位已通电,祝您学习愉快"}。这能显著提升开门的仪式感和科技感。

6. 总结

通过上述方案,开发者可以在1-2天内完成芯步智能触摸墙壁开关2路设备的集成。该方案利用双路独立控制的特性,用一路控制灯光照明实现了按需付费的座位管理,用另一路配合点动指令控制门禁解决了24小时自助进出的难题。整个过程无需额外购买网关,显著降低了共享自习室每个座位约30-50元的硬件配套成本,同时通过开放的HTTP接口,保证了业务系统的高内聚和低耦合。