CATALOG

芯步的智能触摸开关提供了完整的HTTP API接口,支持在公网和局域网环境下进行二次开发。以下是基于其开放接口实现自定义联动逻辑的完整方案。

1. 概述

1.1 产品简介

芯步智能触摸墙壁开关1路是一款基于WiFi无线通信的单路继电器控制设备。该产品采用标准86型墙壁开关设计,可直接替换传统开关,支持手动触摸控制和远程API控制两种模式

1.2 技术特性

特性说明
网络连接WiFi 2.4GHz,支持5组WiFi网络自动切换
控制方式HTTP API / MQTT
部署模式公网SaaS / 纯局域网私有化
接口协议HTTP POST + JSON
签名机制MD5双层加密

1.3 适用场景

通过开放接口,开发者可将开关接入自有系统,实现传感器联动、定时任务、场景自动化、远程运维等自定义逻辑控制。

2. 系统架构

2.1 整体架构图

┌─────────────────┐      ┌─────────────────┐      ┌─────────────────┐
│   传感器设备     │ ──▶ │   芯步云平台  │ ──▶ │   触摸开关设备   │
│ (人体/温湿度等)  │      │  api.thingboot.com │      │  (执行动作)      │
└─────────────────┘      └─────────────────┘      └─────────────────┘
                                    ▲
                                    │ HTTP API
                                    │ 签名验证
                            ┌───────┴───────┐
                            │   业务服务器   │
                            │ (自定义联动逻辑) │
                            └───────────────┘

2.2 数据流向

  1. 下行控制:业务系统 → 芯步云API → 触摸开关(执行开/关/延时动作)

  2. 上行事件:传感器 → 芯步云 → 业务系统(触发联动判断)

  3. 私有化模式:全部流量可运行于局域网环境,不经过公网

3. 接入准备

3.1 账号与设备准备

  1. 注册账号:访问芯步官网注册开发者账号(

  2. 创建工作台:登录后创建个人或企业工作台

  3. 获取AppID/AppSecret:进入物联网控制台的“开发设置”模块,记录开发者ID和开发者密码

  4. 设备配网:按产品手册引导,将触摸开关接入2.4GHz WiFi网络

3.2 开发模式选择

芯步提供两种开发模式:

模式特点适用场景
调试模式不校验sign和ts,无需签名计算开发测试阶段
生产模式需计算MD5签名,可配置IP白名单正式上线环境

4. API接口详解

4.1 接口基本信息

项目内容
请求地址http(s)://api.thingboot.com/{AppID}/device/control/
请求方式POST
Content-Typeapplication/json
参数传递URL Query(sign/ts)+ JSON Body(device/order)

4.2 签名计算规则

签名生成采用双层MD5加密,具体算法如下:

Step1: 对 AppSecret 进行一次 MD5 加密,得到 secret_md5
Step2: 将 secret_md5 与当前时间戳 ts 拼接
Step3: 对拼接后的字符串再次进行 MD5 加密,得到最终签名

sign = MD5( MD5(AppSecret) + ts )

示例代码(Node.js):

示例代码(Python):

示例代码(Shell + curl):

4.3 请求参数说明

参数名位置必填类型说明
AppIDURL路径string开发者ID
signQuerystring签名值(32位小写MD5)
tsQueryintUnix时间戳(秒)
deviceBodystring设备唯一ID,多个用逗号分隔
orderBodyobject命令对象(JSON格式)

4.4 完整请求示例

HTTP Request:

cURL命令:

4.5 响应码说明

Code说明
200命令下发成功(仅表示平台接收,不代表设备执行成功)
501未指定设备ID
502设备不存在或无权限
503设备数量超限(最多100台)
50xx其他错误,参考全局错误码

⚠️ 重要提示:返回200仅表示平台收到指令,设备可能离线或命令参数有误。如需确认设备实际执行状态,请通过消息推送机制获取异步反馈

5. 开关控制命令详解

5.1 基础开关控制

触摸开关1路的核心控制命令为 power1,参数值为 1(开)或 0(关)

5.2 高级控制命令

产品还支持多种智能化控制模式:

功能命令格式说明示例
状态保持{"power1":{"keep":"0/1","revert":"n"}}用户手动操作n秒后自动恢复{"power1":{"keep":"1","revert":"3"}} 用户关灯3秒后自动开
先通后断{"point1":"ms"}先接通,延时后断开{"point1":"3000"} 通3秒后断
先断后通{"reset1":"ms"}先断开,延时后接通{"reset1":"5000"} 断5秒后通

5.3 批量设备控制

支持单次请求控制多个设备:

注:多个设备ID用逗号分隔,所有设备必须支持相同的命令

6. 自定义联动逻辑实现

6.1 第一种场景:人体感应联动开灯

业务需求:当人体传感器检测到有人时,自动打开触摸开关;无人时自动关闭。

实现方案

6.2 第二种场景:定时/延时控制

业务需求:每天22:00自动关灯,或在特定条件下延时关灯。

实现方案

6.3 第三种场景:传感器阈值联动

业务需求:温湿度传感器上报温度过高时,自动开启排风扇(触摸开关控制)。

实现方案

6.4 场景四:多设备联动(分组控制)

业务需求:离家时一键关闭所有灯和电器。

实现方案

7. 私有化部署方案

7.1 局域网模式

芯步产品支持纯局域网环境运行,无需访问公网即可实现设备控制

配置要点

  • 设备与业务服务器处于同一局域网

  • API请求地址指向局域网内的私有化网关

  • 签名机制和接口协议完全一致

7.2 自建消息服务器

支持配置自定义MQTT服务器,设备状态变化实时推送到业务系统

8. 最佳实践

8.1 性能优化

  • 批量控制:单次请求最多控制100台设备,减少网络开销

  • 连接复用:使用HTTP Keep-Alive或连接池

  • 异步处理:使用MQTT订阅方式接收状态反馈,降低轮询频率

8.2 安全

  • IP白名单:生产环境配置API调用IP白名单

  • 签名验证:禁用调试模式,确保每次请求携带正确签名

  • 设备权限:确保AppID仅授权必要的设备

8.3 调试技巧

  • 在物联网控制台的“设备详情-控制”页面测试命令,可查看实际发送的JSON格式

  • 开发阶段开启调试模式,简化对接流程

  • 使用Postman等工具进行接口调试

8.4 注意事项

要点说明
网络要求仅支持2.4GHz WiFi,不支持5GHz
命令反馈200不代表设备执行成功,需异步确认
延时精度先通后断/先断后通的延时单位毫秒,支持1000/3000/5000
设备ID可在控制台查看,也可通过设备列表接口拉取

9. 总结

芯步智能触摸墙壁开关1路通过标准HTTP API接口,为开发者提供了完整的设备控制能力。结合本文的签名算法、命令格式和联动逻辑示例,开发者可以快速将其接入各类业务系统,实现:

  • 自定义联动规则:基于传感器数据、时间计划、业务事件触发开关动作

  • 批量设备管理:单次请求控制多台设备

  • 高级控制模式:延时通断、状态保持等场景化功能

  • 灵活部署方式:公网SaaS或纯局域网私有化

通过上述方案,开发者可根据实际业务需求,灵活构建从简单的远程控制到复杂的自动化场景联动。