芯步的智能开关通过开放的HTTP API接口,支持远程独立控制每一路照明或设备。以下方案以1路触摸墙壁开关为例,涵盖接口协议、签名计算、代码实现及场景扩展。
1. 解决概述
本方案基于芯步开放平台,利用其提供的标准HTTP API接口,实现对单路触摸墙壁开关的远程控制。开发者无需复杂的硬件二次开发,仅需通过任何支持HTTP请求的编程语言(如Python、Java、Go、PHP、JavaScript等),即可轻松集成远程开关功能。
适用产品:芯步 智能触摸墙壁开关 1路
接口特点:响应迅速(80-120ms),支持定时任务、状态保持(点动/互锁)等高级功能 。
核心优势:设备直连WiFi,无需网关(除非信号弱区需网关转发),支持公网与局域网控制 。
2. 准备工作
在开始编码之前,请确保完成以下基础配置:
注册与登录:访问芯步官网注册开发者账号。
获取凭证
登录后进入控制台,在“开发设置”中获取 AppID 和 AppSecret。这两个参数是后续API调用的身份凭证 。
准备设备
购买并安装好“智能触摸墙壁开关1路”(确保零火/单火接线正确)。
通过“芯步”小程序或控制台进行配网,将设备连接至2.4G WiFi。
在控制台“设备列表”中获取目标设备的 Device ID(设备唯一标识)。
3. 接口调用流程与签名机制
芯步的API通过签名(Sign)来保证安全性。每一次控制指令都需要动态计算签名。
3.1 请求地址
http(s)://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}{AppID}:你的应用ID。{ts}:当前Unix时间戳(秒)。{sign}:按照特定算法生成的签名 。
3.2 签名算法 (Sign)
签名生成规则如下,后端代码需严格按照此逻辑实现:
将
AppSecret进行一次MD5加密,得到Secret_MD5。将
Secret_MD5拼接上时间戳ts(字符串形式)。将拼接后的字符串再进行一次MD5加密,得到最终的
Sign。
公式:
Sign = MD5( MD5(AppSecret) + ts )
4. 核心功能实现:远程控制照明
本章节演示如何通过HTTP POST请求,以JSON格式控制1路触摸墙壁开关的打开与关闭。
4.1 指令协议
设备ID
device(例如:820720)命令对象
order打开第1路
{"power1": 1}关闭第1路
{"power1": 0}
4.2 请求示例(以cURL为例)
假设参数如下:
AppID:abc123AppSecret:xyz789Device ID:100001ts:1710234567Sign: 计算后的值
1. 打开照明
2. 关闭照明
4.3 代码集成示例(Python)
以下是一个完整的Python函数,可直接集成到你的后端服务或SaaS平台中:
注意:接口返回200仅表示云端收到了指令,要确保设备在线,可通过配置异步消息推送来获取设备实际执行结果的回调。
5. 进阶应用:高级功能扩展
芯步的接口不仅支持简单的开关,还支持更多实用的自动化场景 。
5.1 第一种场景:定时关闭(楼道灯/排气扇)
如果你希望打开灯光后,自动在1小时后关闭(如用于排风扇或走廊照明),无需在本地设置定时任务,只需在指令中携带reset参数。
命令示例
注:reset1的单位为毫秒,3600000即代表1小时后自动关闭该线路。
5.2 第二种场景:点动/互锁模式(门禁/电机)
对于连接电机或门禁的场景,通常需要“点动”(触发后延时自动复位)功能。
先通后断(开启2秒后自动关闭):
{"point1": 2000}先断后通(关闭3秒后自动开启):
{"reset1": 3000}
6. 总结
通过芯步提供的开放接口,接入1路独立控制开关非常简单:
物理层:安装设备并配网。
接口层:遵循MD5签名规则,通过HTTPS POST请求调用
device/control接口。逻辑层:利用
power1、reset1等参数实现开、关及定时逻辑。
该方案适合智慧酒店、智能办公、智能家居及工业控制等场景,能够快速实现传统照明的智能化改造。