芯步的智能墙壁开关1路(UNI-KG-1)开放标准HTTP接口,可通过API直接集成到任何支持HTTP请求的软件项目中。以下方案以“照明门禁联动”为场景,完整覆盖从接口签名、设备控制到联动逻辑的实现路径。
一、 背景与产品定义
在许多智能家居或共享空间(如民宿、棋牌室、办公室)的场景中,用户往往希望进门时照明自动亮起,或者在布防/撤防门禁时联动灯光,以起到欢迎、警示或安防震慑作用。
硬件:芯步 智能墙壁开关 1 路 (型号: UNI-KG-1)
核心优势:该产品最大的特点是 “无网关直连” 。它自带WiFi模块,只要在信号覆盖范围内,软件项目可以通过互联网或局域网直接向开关发送HTTP请求,无需额外购买智能网关,降低了集成门槛和成本 。
接口特性:提供标准的HTTP API,支持
JSON格式交互,兼容Windows、Linux、Web及移动端全平台 。
联动目标:当门禁系统检测到“合法开门”事件时,软件系统自动调用墙壁开关接口,开启照明;并在设定的延时后自动关闭,实现“人来灯亮,人走灯灭”的节能管理。
二、 集成设计
在软件项目中接入该设备,通常采用 Server-to-Device (云端直控) 或 Local Area Network (局域网直控) 两种架构。鉴于门禁系统通常具备联网能力,本文推荐 API直连架构
设备层:智能墙壁开关1路(接照明灯)与智能门禁(指纹/密码/刷卡)。
业务逻辑层:您的现有软件系统服务器。
交互流程
门禁触发开门信号 -> 门禁回调您的服务器。
您的服务器接收回调 -> 组织签名数据 -> 调用芯步API -> 指令下发至开关 -> 照明开启。
三、 详细接入步骤
要将开关接入项目,主要分为三个阶段:环境准备、核心代码实现、以及逻辑流程编排。
1. 环境准备与凭证获取
首先需要获取用于身份认证的密钥。请登录芯步控制台,完成以下准备:
获取 AppID 和 AppSecret:这是您的软件项目访问API的“用户名”和“密码”。
获取 Device ID:将智能墙壁开关1路配网成功后,在控制台设备列表中查看该设备的唯一ID(通常是一串数字或字符)。
网络确认:确保开关联网状态正常(蓝灯常亮)。
2. 核心:接口签名算法 (Sign)
芯步的API安全性较高,所有请求必须携带动态签名。这是接入最关键的环节。签名算法规则为:
逻辑解析
将您的
AppSecret进行一次MD5加密,得到字符串S1。将
S1与当前的Unix时间戳ts(秒级)拼接,得到字符串S2。将
S2再次进行MD5加密,得到最终的sign。
代码示例 (Python) :
3. 实现开关控制接口
芯步的接口地址为:https://api.thingboot.com/{AppID}/device/control/
我们需要通过 POST 方法调用该接口,携带签名并发送 JSON 请求体。
请求体参数详解
device:目标设备的ID。order:这是一个JSON字符串,针对“智能墙壁开关1路”,其核心命令如下
| 功能描述 | order 参数值 (JSON格式) | 适用场景 |
|---|---|---|
| 开启照明 | {"power1":"1"} | 正常开门后照明 |
| 关闭照明 | {"power1":"0"} | 出门或延时结束 |
| 短暂提醒 (点动) | {"point1":"2000"} | 门铃触发,灯光闪烁2秒 |
| 保持常开 (防误触) | {"power1":{"keep":"1","revert":"5"}} | 清洁模式:用户本地关灯,5秒后自动又开 |
HTTP 请求示例 (cURL) :
注意:实际开发中请将 YOUR_APP_ID 和 设备ID 替换为真实值。
四、 “照明门禁联动”逻辑实战配置
为了实现智能联动,您需要在软件项目中编写 事件触发逻辑。采用“异步处理”,避免门禁开锁动作因网络请求而卡顿。
场景 1:进门欢迎模式
需求:合法开锁后,灯光亮起,方便找东西或插卡取电。软件逻辑流程
触发:门禁系统HTTP回调您的服务器(或您的软件主动轮询门禁状态),发送“开锁成功”信号。
动作:服务器立即调用上述API,
order设为{"power1":"1"}。异常处理:如果API返回错误(如设备离线),记录日志并重试一次,但不影响门禁的物理开锁(保证用户体验)。
场景 2:离席/布防联动
需求:用户关门并反锁(或最后一人出门)后,自动切断照明电源,节约能源。软件逻辑流程
触发:门磁传感器检测到关门 + 门禁处于“全锁定”状态。
动作:服务器调用API,
order设为{"power1":"0"}。
场景 3:延时自动关灯 (高级功能)
需求:利用开关自带的“先通后断”功能,实现开门亮灯,2分钟后自动关闭,无需服务器侧维护定时器。优势:这种方式不占用您的服务器线程资源,即使您的服务器此时宕机,开关也会按照指令独立执行完关灯动作。软件逻辑:在触发开门时,order 设为 {"point1":"120000"}(单位毫秒)。开关将在开启后120秒自动断开 。
五、 最佳实践与异常处理
在实际项目管理中,除了写代码,关注以下细节以确保稳定性:
本地自救(局域网IP直连)芯步设备支持局域网发现。如果您的服务器与开关处于同一个局域网(如酒店或办公楼内),可以考虑通过扫描设备局域网IP进行控制。这种方式不经过云端,延迟更低(<10ms),且断外网也能用 。
技术提示:可让开关走云端API做日常管理,同时软件通过局域网广播发现设备IP作为备用通道。
状态同步机制墙壁开关是物理硬件,用户可能手动按键关灯。您的软件界面需要同步这个状态。利用芯步平台提供的 “设备上报”回调(如果配置了私有化消息服务器),或者在做开门动作前,先调用一次查询接口获取当前开关状态,避免重复下发“开”指令造成的无效请求。
安全
切勿将 AppSecret 硬编码在前端代码中。所有的签名生成逻辑请一定要在后端完成,API调用的凭证也存放在后端,防止密钥泄露导致所有设备被控制 。
HTTPS:请一定要使用
https://地址进行请求,防止通信内容被嗅探。
六、 总结
将芯步智能墙壁开关1路接入软件项目实现门禁联动,其本质是 HTTP 协议的调用与签名计算。
实施检查清单
确认签名算法(Double MD5)封装正确,并通过Postman验证接口 。
在代码中预留设备离线(Timeout/Offline)的友好提示。
根据业务场景选择合适的指令(是简单的
power1,还是带延时的point1)。
通过上述步骤,您可以快速构建“刷门禁即开灯”的智能化场景,不仅提升了空间的安全感与科技感,也为后续拓展“语音播报”等其他物联设备打下了统一的API集成基础。