CATALOG

芯步的智能开关提供完整的HTTP API接口,支持远程控制、状态监测和场景联动。以下方案以3路智能照明开关为例,涵盖设备对接、状态监测和联动逻辑的实现路径。

1. 概述

本方案基于芯步智能墙壁开关3路(型号:UNI-KG-3)及智能照明控制器系列产品的开放HTTP API接口,为企业及开发者提供一套完整的设备对接指南。旨在实现对照明设备的远程状态监测独立分控以及场景联动

该方案支持公网与局域网(私有化部署)两种模式,适配Web应用、移动端APP/小程序及各类SaaS平台。整体架构如下:

  • 设备层:3路智能照明开关(WiFi连接,支持2.4GHz频段)。

  • 接口层:芯步开放API(api.thingboot.com)或私有化部署接口。

  • 业务层:用户自有系统(负责处理签名验证、业务逻辑、联动规则)。

  • 交互层:H5管理后台、小程序、App或第三方控制系统。

2. 接口对接准备

在进行开发前,需要完成以下准备工作以获取必要的账户凭证。

准备项描述获取途径
AppID应用唯一标识符登录芯步控制台,在“开发设置”中查看
AppSecret应用密钥,用于接口鉴权签名同上,需注意保密,切勿直接暴露在前端代码中
设备ID目标硬件的唯一标识设备标签或控制台设备列表

2.1 签名算法(鉴权机制)

芯步的开放接口采用动态签名验证,旨在保障接口调用过程中的安全性。所有HTTP请求均需携带签名参数sign和当前时间戳ts。签名计算步骤如下

  1. step1_md5 = md5(AppSecret)

  2. step2_str = step1_md5 + ts(字符串拼接)

  3. sign = md5(step2_str)

安全提示:时间戳ts为当前Unix时间戳(秒),服务器会校验该时间戳的有效性,以防止请求重放攻击。在服务端动态生成签名,避免在前端代码中暴露AppSecret。

3. 3路智能照明开关核心功能对接

针对三路照明设备的“状态监测”与“联动控制”,主要涉及API调用与状态同步机制。

3.1 远程控制与状态下发

通过向设备下发指令,实现对三路电路的独立控制。指令通过HTTP POST请求发送,支持同时控制单一路或多路。

接口地址https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}

请求示例(以Shell/PHP为例)假设需要将设备ID为820720的开关的第1路打开、第2路关闭、第3路打开

命令参数详解

指令对象参数格式功能描述应用场景示例
线路1{“power1”: 1}打开第1路开启客厅主灯
线路2{“power2”: 0}关闭第2路关闭射灯
线路3{“power3”: 1}打开第3路开启灯带
状态保持{“power1”: {“keep”: “1”, “revert”: “10”}}用户物理操作后,延迟10秒自动恢复开启状态楼道照明,有人经过误关后自动恢复
先通后断{“point1”: “2000”}第1路接通2秒后自动断开给走廊/摄像头上电重启,避免长时间通电
先断后通{“reset1”: “3000”}第1路断开3秒后自动接通设备断电重启复位

3.2 设备状态监测机制

实现“监测”依赖于两种技术路径:

  1. 主动查询(同步)

    • 系统可通过调用设备状态查询接口(如 device/status)主动拉取当前三路开关的通断情况。这适用于用户打开控制面板时,拉取当前最新状态以同步UI显示。

  2. 状态上报(异步-推荐)

    • WebSocket:建立长连接,实时接收设备状态变更推送。当有人在本地按下墙壁开关时,服务器会通过WebSocket将{“power1”:0}推送给所有已连接的客户端,实现毫秒级UI更新。

    • 消息回调:配置消息服务器(URL),当设备状态变化时,平台通过HTTP POST将消息推送到业务系统,便于数据持久化存储(如记录操作日志)。

4. 场景联动方案

基于API接口,可以轻松构建复杂的业务联动逻辑,无需额外的网关硬件。

4.1 定时策略与自动化

利用业务系统的定时任务机制,结合HTTP API实现精准控制:

  • 场景A:上班模式(全关)

    • 触发条件:工作日上午9:00。

    • 执行逻辑:调用控制接口,组合命令 {“power1”: 0, “power2”: 0, “power3”: 0}

  • 场景B:人来灯亮(传感器联动)

    • 硬件组成:3路智能开关 + 红外传感器(第三方,但接入同一系统)。

    • 执行逻辑:传感器检测到“有人移动”信号 -> 业务系统触发联动 -> 调用接口命令 {“power1”: 1} 开启照明。

4.2 跨设备联动与自定义逻辑

您可以利用“状态保持/恢复”功能,在无代码逻辑干预下,实现基础的防误触或临时照明

  • 场景C:卫生间/楼梯间(延时照明)

    • 用户按下一键场景面板(如“起夜模式”)。

    • 系统下发命令:{“power1”: {“keep”: “1”, “revert”: “60”}}

    • 效果:灯光打开,同时用户物理按下开关试图关闭时,开关会在1秒(可配置)内自动恢复开启状态,60秒后照明设备自动关闭,无需编写循环定时器代码。

5. 软硬件部署与网络架构

芯步的设备支持两种部署架构,可根据项目的安全性及网络环境灵活选择

5.1 公有云模式(SaaS)

  • 适用场景:家庭、中小型商铺、跨地域管理的连锁门店。

  • 特点:设备连接芯步官方云平台,开发者通过公网API调用。即插即用,无需维护服务器,但依赖互联网连接。

5.2 私有化部署(局域网模式)

  • 适用场景:政府办公楼、学校、军工单位或对数据隐私要求比较高的工业场所。

  • 特点

    • 设备仅连接用户指定的本地WiFi网络(无互联网出口)。

    • 芯步提供本地服务包,用户自行部署在局域网服务器中。

    • API接口与云端完全兼容,仅需修改请求BaseURL为本地服务器IP即可,实现内外网隔离。

6. 总结

通过对接芯步的3路智能照明开关,项目团队只需聚焦于以下核心工作:

  1. 签名逻辑:后端封装标准的AppSecret签名算法,确保接口调用安全。

  2. 设备管理:在控制台录入设备ID,建立设备ID与业务系统场所的映射关系。

  3. 状态同步:利用device/status接口查询状态,结合WebSocket推送机制实现UI实时刷新。

  4. 业务逻辑:利用order丰富的参数(保持/定时/联动),编写满足场景需求的控制策略。

该开放接口兼容性强,支持Java、Python、PHP、Node.js及小程序JavaScript等多种语言,开发周期短,通常可在1-2周内完成从对接联调到上线试运行的全部工作