芯步的门禁设备(如UNI-MJ-MM-CM型密码门禁、智能出门开关等)均开放了统一的HTTP API接口,你可以通过向指定URL发送POST请求,实现远程开门、密码管理、线路控制等功能。以下是完整的对接方案。
1. 核心原理与准备工作
1.1 开门控制的本质
在智能门禁系统中,电磁锁默认通电吸合(上锁),断电释放(开门)。因此,“远程开门”的本质是对连接电磁锁的继电器进行短时断电控制。
芯步的设备通过 reset 命令来实现这一动作:立即断开线路(开门),等待指定时间后自动恢复通电(锁门)。
1.2 前提条件
硬件设备:芯步智能门禁(密码/刷卡/WiFi版)或智能墙壁出门开关。
网络环境:设备已通过WiFi 2.4G联网(无需网关)。
开发者账号:在芯步控制台获取
AppId和AppSecret。
2. 逐步对接指南
2.1 获取凭证与设备ID
AppId / AppSecret:登录工作台 → 物联网控制台 → 开发设置中获取。
设备ID (device):控制台设备列表或通过接口拉取。
2.2 签名计算(Sign)
所有API请求需携带签名以保证安全性。生成规则为:
将
AppSecret进行一次MD5加密得到secret_md5。将
secret_md5与当前时间戳ts(秒)拼接。对拼接字符串再次进行MD5加密,得到
sign。
*公式:sign = MD5( MD5(AppSecret) + ts )*
2.3 接口调用
请求地址
http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}请求方法:POST
请求头
Content-Type: application/json
3. 开门场景功能架构
如果你需要将设备集成到自己的公寓管理系统(如APP、小程序或Web后台),参考以下设计:
3.1 直接远程开门(单路独立控制)
这是最核心的功能。参考请求数据中 device 字段填写具体设备ID,order 字段内层 reset1 表示1号继电器(路)先断电后通电,其中 3000 单位为毫秒,表示电磁锁断电3秒。
对于出门开关或门禁板,通常对应线路1(power1/reset1)。以下是单路独立控制的开门命令示例:
3.2 密码管理与鉴权
如果你的项目需要保留现场键盘输入方式(不依赖手机APP),可以利用门禁设备内置的密码功能:
设置密码:通过接口下发
pwd命令,添加或修改用户密码。临时密码:非常适合公寓管理的访客或保洁场景。你可以生成一个仅在特定时间段有效的密码,通过接口下发给设备。
删除密码:租客退租后,通过
delete命令移除其权限。
3.3 状态查询与同步
为了保持项目数据一致性,你的系统不仅要“发命令”,还要“收状态”:
轮询机制:定时调用API查询设备当前在线状态及线路通断情况。
消息服务器(可选):设备支持私有化部署和消息服务器推送。设备按键触发开门时,系统会实时收到回调,实现零延迟的状态同步。
4. 关键避坑指南
4.1 关于“单路独立控制”的映射
这是一个容易出错的点:线路索引。如果项目中只有一把锁,命令通常用
reset1或power1。特别需要注意的是,不同型号的产品命令可能有细微差异:
出门开关/墙壁开关:通常使用
reset1(对应继电器1)。双路复合开关:必须分清
reset1(出门)和reset2(照明)。在正式使用前,先在控制台调试页面测试一下设备对
power1和reset1的具体反馈。
4.2 门磁监测(可选进阶)
单纯的“开门”是单向控制,无法知道门是否真的关了。如果追求更高安全性,在项目中增加门磁传感器
通过查询门磁设备状态,可以在后台展示“门开/关”的真实物理状态,防止虚掩。
4.3 安全
传输加密:生产环境请一定要使用
HTTPS地址。本地化部署:若公寓服务器与设备在同一局域网,API地址可指向局域网内网IP,提升响应速度并降低外网依赖。
5. 总结
通过芯步的开放接口对接智能门禁,核心逻辑是利用 reset 命令控制继电器短暂断电。你只需要关注签名生成和HTTP请求发送,无需关心底层通信协议。这种基于HTTP的轻量级方案可以非常方便地与现有的物业管理、小程序或APP快速集成。