芯步智能开关的开放接口基于HTTP API,意味着你可以用任何支持HTTP的编程语言或工具来集成定时控制功能。下面从账号准备、接口调用到定时任务实现,逐步说明整个接入流程。
解决方案:基于芯步开放接口实现3路智能墙壁开关的定时照明控制
1. 解决概述
芯步的智能3路墙壁开关(以下简称“智能开关”)是一款可以通过WiFi直接连接网络,并开放HTTP API接口的设备。本方案的目标是指导开发者如何通过调用这些API,实现对照明设备的定时开关、倒计时开关以及循环定时控制。
适用场景:
办公大楼公共区域照明自动控制(如:18:00 开启,22:00 关闭)。
家庭卧室/客厅灯光定时关闭(如:卧室灯光 30 分钟后自动关闭)。
工厂/仓库根据班次自动开关照明。
技术原理:通过编写脚本或后端程序,计算时间逻辑,在指定时间点向芯步云端服务器发送 HTTPS 请求,云端再将指令推送给智能开关,实现对 3 路(L1, L2, L3)负载(如灯泡、灯管)的独立控制 。
2. 准备工作:设备与账号配置
在开始编码前,需要准备好硬件并获取接口钥匙。
硬件安装
按照标准 86 型底盒安装芯步智能触摸墙壁开关 3 路。
接好零火线,并分别将三路照明设备接在 L1、L2、L3 接口上。
给开关通电,确保开关指示灯亮起。
注册与创建
访问芯步官网注册账号。
登录后进入“工作台”,创建一个新的“物联网控制台”项目 。
设备配网
使用“物联网控制台”APP 或微信小程序,将智能开关添加至账号下。
记录下设备的唯一标识符 Device ID(这是控制指令中的关键参数,例如
"devID": "12345678")。
获取密钥
在控制台的“开发设置”中,获取 AppID 和 AppSecret。
注意:AppSecret 用于生成签名(Sign),请严格保密,不应直接暴露在客户端代码中。
3. 核心接口详解与签名机制
芯步的 API 核心地址为:https://api.thingboot.com/{AppID}/device/control/
安全机制(签名计算):为了防止接口被恶意调用,每次请求需携带动态签名(Sign)。签名生成算法步骤如下:
将
AppSecret进行一次 MD5 加密,得到S1。获取当前时间戳
ts(秒级)。将
S1与ts拼接成字符串S1+ts。对拼接后的字符串再次进行 MD5 加密,得到最终的
Sign。公式:
Sign = MD5( MD5(AppSecret) + ts )。
(注:生成签名必须在后端服务中进行,以保护 AppSecret 不泄露。)
4. 定时功能的实现方案
针对“定时开关照明设备”的需求,芯步的接口提供了两种实现路径,推荐使用路径一(设备端定时),因为它不依赖云端服务器持续运行,更稳定。
方案一:硬件原生定时(推荐)
利用智能开关内置的reset和point命令,直接在指令中定义延时动作。这种方式不需要你自己的服务器在后台跑 Cron Job,设备自己会倒计时。
场景 1:简单的定时关闭(例:30分钟后关闭第1路)
需求:走廊灯开启后,30分钟后自动关闭以防忘记关灯。
命令构造
场景 2:精准的单次定时(例:今晚 22:00 关闭第2路)
实现的方式是:此方式通常需要后端服务器配合(见方案二),或者在设备支持内置 RTC(实时时钟)的情况下使用
cron或timer命令。经查指令集,推荐直接使用方案二处理绝对时间定时。
方案二:云端/服务器定时任务(通用性强)
在服务器端编写逻辑,使用 Python、Node.js、Java 或 Shell 脚本,配合 Crontab 或 APScheduler 定时执行 HTTP 请求。
场景:晚上 18:00 开灯,凌晨 00:00 关灯
逻辑
设置一个定时任务 (Cron Job):
0 18 * * *-> 执行开灯脚本。0 0 * * *-> 执行关灯脚本。
请求示例(Shell + CURL)开灯请求 (open_light.sh):
5. 实战代码演练 (Python 示例)
以下是一个完整的 Python 脚本,演示如何实现 “延迟 1 小时后关闭第 1 路照明”。
6. 高级功能和需要注意的点
独立分控
power1控制第一路,power2控制第二路,power3控制第三路,支持独立下发,互不干扰 。状态保持功能:如果不想让用户手动按关,可以使用
keep参数。例如设置{"power1":{"keep":1, "revert": 10}},即使用户手动关了灯,10秒后灯也会自动再亮起(保持常亮)。极速响应:设备端执行命令的延迟通常在 80-120ms 之间,即使是定时任务,也能确保灯光的即时响应 。
本地局域网控制:如果你的服务器和设备在同一个局域网内,且对公网稳定性有顾虑,可以咨询芯步技术支持开启纯局域网控制,此时不经过云端服务器,直接向内网 IP 发送指令 。
7. 总结
通过芯步开放的 HTTP 接口,实现智能 3 路墙壁开关的定时功能非常灵活。
小规模/快速演示:利用 Shell 脚本配合 Crontab 即可解决。
产品级集成:可以将 API 集成到你的 Node.js/Python 后端服务中,利用数据库存储用户的定时计划,并通过时序调度器(如
node-schedule或celery)触发开关动作。
按照上述步骤,即可快速搭建一套稳定、高效的照明定时控制系统。