芯步的“智能触摸墙壁复合出门开关”本质是一个双路WiFi继电器模组——一路控制照明,一路控制门禁。其开放接口采用标准HTTP协议,签名机制MD5(md5(AppSecret)+ts),无论你用哪种语言开发,10分钟内即可完成对接。
1. 解决方案:基于HTTP API的远程集成架构
本方案基于芯步开放的HTTP API,实现第三方系统(如物业管理平台、工单系统或手机APP)对设备的远程控制。整体架构分为三层,如下图所示:
核心交互逻辑:
控制端:PC管理后台或手机APP通过HTTP/HTTPS协议,向芯步云端发起控制请求。
云端处理:芯步云端验证签名与设备权限后,通过WiFi在80-120ms内将指令推送到设备端。
设备执行:开关执行继电器动作,瞬间切断照明电路或给门禁锁断电。
2. 对接准备
在开始编码前,请完成以下准备,整个过程约需5分钟:
获取凭证:登录芯步控制台,获取 AppID 和 AppSecret(开发者密码)。
设备入网:将“智能触摸墙壁复合出门开关”接通电源,通过手机APP将其配置连接到2.4GHz WiFi网络。
获取设备ID
方法一:在控制台设备列表查看。
方法二:调用设备列表拉取接口获取。
3. 接口对接详解
芯步统一使用POST请求进行设备控制,核心是构造签名(Sign) 和命令体(Order)。
请求地址
https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}请求方式:POST
数据格式:JSON
步骤一:生成签名
为保障安全,所有接口必须携带动态签名,算法规则为:Sign = md5( md5(AppSecret) + ts )
ts必须是一个Unix时间戳(秒),用于防止请求重放。例如:
1746000000。
步骤二:下发控制指令
假设AppId为 YOUR_APP_ID,设备ID为 820720,目标是开门并关灯。请求Body必须包含device和order字段。
为了解决“开门”场景,智能出门开关利用了继电器的 “先断后通” 特性。开门操作不是简单的断电,而是断电一段时间后自动恢复供电,以保护电子锁。
物理接线参考:第1路接照明(如顶灯),第2路接门禁(电磁锁正极)。
远程关灯
{"power1":0}远程开门
{"reset2":3000},含义是断开第2路(门禁断电,锁弹开),3秒后自动重新接通(门锁恢复待机),这是标准出门开关逻辑。
调用代码如下:
4. 复合场景与联动
该设备的优势在于“复合”功能,通过参数组合可实现高级自动化安防规则,无需在设备端写死逻辑:
第一种场景:一键布防(离家模式)
指令
{"power1":0, "power2":0}逻辑:强制关闭照明电路,同时强制切断门锁电路(若门锁支持通电开,需调整为
power2对应的逻辑)。虽然reset2有自动恢复特性,但在强制执行power2:0时,继电器会立刻断开并保持断开。
第二种场景:访客临时开门(联动其它指令)
指令
{"reset2":5000, "power1":1}逻辑:一瞬间切断门禁电源5秒,同时打开玄关灯光,方便访客夜间进入。
5. 常见问题与排障
问:开关面板上标注“左灯右门”,我如何确认哪个是第二路?
答:发送测试指令
{"power1":1},看哪路灯亮;发送{"power2":1},听哪路继电器吸合(或看门锁反应)。也可参考型号UNI-KG-CM-KC(左灯右门)或UNI-KG-CM-CK(左门右灯)。
问:为什么门锁一直处于通电状态?会不会烧坏?
答:该产品配套电磁锁或电插锁通常为断电开类型。设备待机时保持通电是正常的吸附状态。严禁通过长期断开
power2来省电,这会导致门锁一直处于打开状态,失去安防意义。
问:接口返回签名错误(403)怎么办?
答:请核对:
ts是否为当前秒级时间戳(与服务器时间误差超过5分钟会失败)。双重MD5:确实是对
md5(secret)的结果进行字符串拼接,再进行MD5,不要只做一次。字符串严格一致,包括大小写。