芯步的智能插座开放标准HTTP接口,支持远程开关、延时通断、电量计量等控制,无需网关,WiFi直连。以下方案以1位5孔定时插座为例,详细说明接口对接流程、签名算法和参数配置方法。
1. 解决概述
本方案的目标是指导开发者如何通过芯步开放的HTTP API接口,对 “1位5孔智能插座”(如智能墙壁插座10A/16A或智能插座10A/16A系列)进行远程参数配置与管理。
核心优势:
标准HTTP协议:无需特定的SDK,任何支持HTTP请求的编程语言均可接入。
极速响应:命令下发到设备响应时间约为80-120ms。
无需网关:设备直连WiFi 2.4G网络,降低用户硬件成本。
功能完备:支持开关控制、倒计时定时、循环任务及电量读取。
2. 核心接口与鉴权机制
在开始配置管理之前,首先需要完成接口鉴权。芯步的API采用动态签名(Sign)机制来保证安全性。
2.1 请求地址
POST http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}{AppId}: 由芯步平台生成的应用ID,用于标识开发者身份。
{sign}: 动态签名,用于身份验证。
{ts}: Unix时间戳(秒),用于防止请求重放攻击。
2.2 签名算法(Sign)
签名生成规则如下,这是一个两步MD5加密过程
将您的
AppSecret(开发者密码)进行MD5加密,得到encrypt_secret。将
encrypt_secret与当前时间戳ts拼接,得到encrypt_secret + ts。将上述拼接后的字符串再次进行MD5加密,得到最终的
sign。
代码示例(Shell环境):
注:该签名用于URL参数中的sign字段。
3. “1位5孔智能插座”关键参数配置详解
针对1位5孔插座,最常见的管理需求是通断控制、延时操作(定时断开/闭合) 以及状态查询。以下是通过 order 字段传递的具体JSON参数配置。
3.1 基础通断控制
用于实时远程开启或关闭插座的电源。
接口命令示例:
说明:
power字段控制主线路的通断。返回结果通常包含指令执行状态(如接收到消息队列确认)。
3.2 延时任务配置(Time Delay)
如果不想依赖复杂的Cron定时任务系统,可以利用设备自带的“先通后断”或“先断后通”功能实现倒计时。
场景A:通电后延时断开(例如:热水器烧水1小时后自动关闭)
参数:
"point": 3600000(单位:毫秒)命令
注:在部分产品手册中,
point定义为“先通后断”。场景B:断电后延时开启(例如:设备复位后延时重启)
参数
"reset": 10000(单位:毫秒)命令
3.3 计量数据读取(电量参数配置)
对于带计量版的插座,开发者需要读取电压、电流、功率来实现能耗管理。计量数据通常通过设备主动上报或单独的状态查询接口获取,而非通过上述控制接口下发指令。
关注指标: 电压(V)、电流(A)、有功功率(W)、功率因素。
配置策略: 通过API拉取设备最新状态;
4. 开发实施流程
第一步:设备配网与初始化
设备通电后,会进入配网模式。开发者需根据用户手册指引,通过特定方式(如SmartConfig或AP配网)将WiFi SSID和密码推送给设备。设备成功连接互联网后,会向芯步平台注册,开发者即可在控制台看到设备上线。
第二步:环境准备
登录芯步控制台,获取
AppId和AppSecret。获取目标设备的唯一标识符
Device ID(可贴在设备外壳或通过控制台查询)。
第三步:代码集成(NodeJS 示例)
以下是一个完整的NodeJS脚本示例,展示如何封装请求并使用签名来发送“关闭插座”的命令。
第四步:错误处理与重试机制
由于物联设备可能处于弱网环境,在集成时加入以下机制:
超时设置: HTTP请求设置超时时间(例如5秒)。
重试策略: 若因网络波动导致请求失败(如返回超时错误),使用随机间隔(或逐次增大间隔)算法重试3次。
5. 应用场景与管理方案
通过以上接口,可以构建多样化的远程管理方案:
办公工位管理:结合
power命令与定时任务脚本,在每晚22:00自动切断工位电源,实现节能减耗。养殖/农业环境:利用
计量版接口实时监测水泵或加热器功率,若检测到功率异常(如0W但命令为开启),系统自动告警并尝试重启设备。批量配置:芯步的
device字段支持传入多个ID(用逗号分隔),从而实现“一键全关”或“场景联动”。
总结
对接芯步1位5孔智能插座的本质是 “HTTPS请求 + JSON负载 + MD5签名” 。开发者无需关心无线协议细节,只需调用标准API即可实现包括开关、倒计时、计量在内的所有远程参数配置。若需实现更复杂的循环定时(如每周一至周五早上8点开启),在您的业务服务器端配置Cron Job,通过定时调用API接口下发命令来实现。