CATALOG

芯步的智能开关采用标准HTTP接口,一行JSON命令就能完成开关控制,接入门槛很低。以下方案涵盖硬件选型、接口签名算法、代码示例以及状态保持、定时通断等进阶场景,可直接用于系统集成开发。

1. 解决概述

本方案的目标是指导开发者如何利用芯步开放平台的HTTP接口,对接其智能硬件产品(以智能墙壁开关1路为例),实现对单路照明灯光的远程控制(开/关)。

通过调用标准HTTP请求,开发者可以将照明控制功能集成到Web应用、App、小程序或任何支持HTTP协议的管理后台中。该方案具有响应速度快(80-120ms)、跨平台、支持私有化部署的特点

2. 硬件选型与环境准备

2.1 推荐硬件

针对“单路照明”控制,选用芯步的以下产品:

  • 智能墙壁开关1路:标准86型底盒安装,可直接替换传统墙壁开关(需接零火线,视具体型号而定),支持最高10A/2200W阻性负载

  • 智能触摸墙壁开关1路:外观更现代,采用钢化玻璃面板,同样支持单路控制

2.2 环境要求

  • 网络:设备需配网连接2.4GHz WiFi网络

  • 平台凭证:登录芯步官网,在“物联网控制台”获取 AppId(应用ID)并设置 Secret(开发密码)用于签名认证

3. 接口对接原理与签名算法

芯步采用标准的HTTP POST请求进行控制,核心在于签名机制,以保证接口调用的安全性。

3.1 接口地址

http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}
  • {AppId}:您的应用ID。

  • {ts}:当前Unix时间戳(精确到秒),用于防止请求重放。

  • {sign}:接口签名,根据以下规则生成

3.2 签名生成规则(伪代码)

4. 核心控制指令详解

通过向设备下发JSON格式的order字段来实现具体操作。对于单路设备,关键字段是power1

4.1 基本开关控制

  • 开启照明{"power1": 1}{"power1": "1"}

  • 关闭照明{"power1": 0}{"power1": "0"}

4.2 进阶场景:状态保持(防重置)

适用于公共场所(如卫生间、会议室),防止现场人员随意物理关闭开关,或在用户关闭后数秒自动恢复原状。

  • 强制锁定开启:即使用户手动关闭开关,3秒后自动恢复开启。{"power1": {"keep": "1", "revert": "3"}}

4.3 进阶场景:临时供电(先通后断)

适用于电梯照明或临时取电场景,启动后自动计时关闭。

  • 开启2秒后自动关闭{"point1": "2000"} (单位:毫秒)

4.4 进阶场景:设备重启(先断后通)

适用于路由器、监控摄像头等需要重启的设备(通过控制其电源通断实现)。

  • 断开3秒后自动恢复供电{"reset1": "3000"}

5. 实战对接示例

以下演示如何通过不同语言向设备ID为820720的单路开关发送“开启”指令

5.1. 请求Body结构

  • 请求头Content-Type: application/json

5.2. cURL命令示例(Shell)

参考来源:结合了签名逻辑与Shell调用方法

5.3. Python示例

6. 注意事项与最佳实践

  1. 数据格式:虽然部分文档示例中power1值为字符串,参考最新文档使用整数类型(如10),但需注意JSON标准中不推荐带引号的数字

  2. 设备在线状态:发送命令前,通过平台接口查询设备是否在线。如果设备断电或断网,命令将无法送达。

  3. 并发控制:设备响应迅速(约100ms),但应注意控制请求频率,避免对设备WiFi模块造成过大压力

  4. 局域网直连(可选):芯步支持私有化部署,如果你的业务系统与设备处于同一局域网,可配置内网IP直连,降低延迟并绕开互联网带宽限制

通过以上步骤,你可以轻松基于芯步的开放接口,为任何需要“点控”照明的场景(如智能家居、远程机房灯控、车库照明管理)提供稳定可靠的解决方案。