芯步的1路智能墙壁开关支持通过HTTP API进行二次开发,核心是签名认证和设备控制两个接口。配合传感器设备的上报机制,可以在你的服务器端实现完整的设备联动逻辑。
一、 概述与适用场景
本方案的目标是指导开发者利用芯步提供的开放 HTTP API 接口,对 UNI-KG-1 型 1路智能墙壁开关 进行二次开发。
通过集成芯步的 API,开发者可以使该墙壁开关不再局限于手机 App 点按控制,而是作为自动化系统中的执行单元,根据特定业务逻辑或传感器状态自动通断。
典型改造场景:
环境联动: 配合温湿度传感器,自动控制排气扇或除湿机(当湿度过高 -> 闭合开关)。
安防联动: 配合人体传感器,当有人闯入时,开关闭合(警报灯闪烁)或断开(切断危险设备电源)。
办公/商业节能: 根据自定义时间表或打卡系统状态,下班后自动切断指定区域电源。
二、 核心技术原理
该方案基于 “Pub/Sub” 与 “Request/Response” 结合的模式。芯步的设备(开关、传感器)直接连接云端,用户的服务器通过 HTTPS 请求调用云端 API 下发指令。
控制链路: 开发者服务器 -> 芯步 API 网关 -> 智能墙壁开关(执行通断)。
感知链路: 传感器(探测到变化)-> 芯步 API 网关(推送数据)-> 开发者服务器(触发逻辑)。
设备支持 本地局域网控制 和 公网控制 两种模式。公网控制相对更容易实现,无需复杂的网络配置;局域网控制则响应更快(毫秒级),且断外网可用。
三、 前期准备:开发环境与凭证
在进行代码开发前,需要完成以下基础配置,获取关键的 API 访问凭证。
注册与登录: 访问芯步官网,注册企业/开发者账号。
创建工作台: 在用户控制台创建一个“工作台”,这是 IoT 设备的管理单位。
获取密钥:
进入“物联网控制台” -> “开发设置”。
记录 AppID 和 AppSecret。AppSecret 是签名密钥,注意保密。
设备配网与 ID 获取:
将 1路智能墙壁开关 接通电源。
使用“芯步小程序”或控制台进行 WiFi 配网(注意仅支持 2.4G WiFi)。
配网成功后,在控制台“设备列表”中查看设备的唯一标识符 Device ID(如
1878)。
四、 关键接口二次开发详解
要控制开关,核心是调用 /device/control/ 接口。为了保障安全性,所有 API 请求都需要进行 Sign(签名) 校验。
1. 签名算法实现
芯步的签名机制比较典型:md5( md5(AppSecret) + ts )。
参数
AppSecret: 开发者密码。ts: 当前 Unix 时间戳(秒)。
步骤
计算
MD5(AppSecret),得到 32 位小写字符串S1。拼接字符串
S1 + ts。计算
MD5(S1 + ts),得到最终签名Sign。
3. 设备控制请求
该接口用于向设备下发指令。以 Python 和 Bash 为例,演示如何控制开关闭合(通电)。
控制指令:{"power1": 1} (1代表接通,0代表断开)
请求地址:
https://api.thingboot.com/{AppID}/device/control/Method: POST
Content-Type: application/json
Python 实现示例:
Bash (cURL) 实现示例:
4. 设备状态获取
在进行联动控制前,通常需要获取当前开关状态,或确认设备是否在线。可通过调用设备信息接口或设备状态接口实现。该接口返回设备在线状态及当前各线路的开闭情况。
例如:若需实现“按一下开关,该开关自动延时 5 秒后关闭”,二次开发应用需先读取状态,再下发延时指令。
五、 实战场景:实现“人来灯亮,人走灯灭”
这里以“1路智能墙壁开关”控制照明灯为例,配合“智能人体存在传感器”实现联动控制。
第一步:配置消息推送
控制台需要配置“消息推送”或“HTTP 回调”地址。设置开发者服务器的接收地址,例如 https://yourdomain.com/api/device/callback。
第二步:订阅传感器消息
在开发者服务器上编写接收 POST 请求的接口。
当传感器上报数据时,请求体示例:包含设备ID
Sensor_01,状态occupancy等字段。
第三步:编写联动业务逻辑(伪代码示例)
第四步:高级联动场景(先通后断,Point)
在某些工业场景(如控制电铃、门锁),需要执行“接通 1 秒后自动断开”的操作,以防设备损坏。芯步的接口原生支持这种复合指令,无需二次开发循环定时器。
指令示例
{"point":{"relay":[1],"interval":1000}}效果:线路 1 立即接通,1000毫秒后自动断开。这非常适合控制电插锁或声光报警灯。
六、 局域网二次开发模式
对于对响应速度和数据隐私要求高的场景,芯步支持 局域网 API 控制。
配置要点:
在设备配网时,通过控制台开启“局域网控制”功能。
二次开发的软件需部署在 与设备同一个局域网 的服务器上(如 NAS、树莓派或本地 PC)。
请求地址需从公网域名
api.thingboot.com切换为 设备在局域网内的 IP 地址。尽管地址改变,Sign(签名)验证机制依然有效,防止内网恶意控制。
七、 总结
通过芯步的开放 HTTP API,对 1 路智能墙壁开关进行二次开发实现联动的技术路径清晰可靠。开发者只需关注三点即可快速落地:
签名:严格按照
md5(md5(secret)+ts)生成动态签名。指令集:利用
{"power1":1}实现基础控制,利用point指令实现自动化回弹保护。事件驱动:通过服务器接收传感器上报的 Webhook 数据,作为触发逻辑的决策输入。