CATALOG

芯步10A86型智能插座提供全开放的HTTP API接口,签名机制简单清晰,任何支持HTTP请求的编程语言均可接入。以下方案涵盖前期准备、签名计算、核心接口调用、定时任务及功耗计量等关键环节,帮助你在10分钟内完成二次开发对接。

一、 前期准备与环境搭建

在开始编码之前,您需要在芯步开发者平台完成以下准备工作,这是实现二次开发的基础。

  1. 获取关键凭证

    • 登录芯步官方控制台。

    • 在“开发设置”或“应用管理”中,获取 AppId(应用ID)和 AppSecret(开发者密码)。这两个参数是后续API调用的身份凭证

  2. 获取设备ID

    • 确保您的10A86型智能插座已通电并成功连接至WiFi(仅支持2.4GHz频段)

    • 在控制台设备列表中,查看并记录下该插座的 Device ID(设备唯一ID),如 820720

  3. 接口概览

    • 请求方式: POST

    • 数据格式: JSON

    • 请求地址http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}

    • 核心逻辑: 系统通过验证 sign(签名)和 ts(时间戳)来确保请求的安全性

二、 签名机制与安全验证

为了防止接口被恶意篡改,芯步采用了双重MD5加密机制。签名 sign 的生成算法如下,这是二次开发中最关键的一步:

  1. 第一步:将您的 AppSecret 进行第一次MD5加密,得到字符串 S1

    • 公式:S1 = MD5(AppSecret)

  2. 第二步:将上一步得到的 S1 与当前Unix时间戳 ts (秒级)进行拼接,得到字符串 S2

    • 公式:S2 = S1 + ts

  3. 第三步:对 S2 再次进行MD5加密,得到最终的 sign

    • 公式:sign = MD5(S2)

注意:时间戳 ts 也需要作为参数附带在请求URL中,且服务器会校验时间戳的有效性,防止请求重放攻击

三、 核心功能开发:远程控制通断

这是二次开发最核心的部分。您可以通过向标准HTTP接口发送POST命令,实现对插座电源的接通与断开。

1. 接口调试示例

  • URLhttps://api.thingboot.com/Your_AppId/device/control/?sign=xxxxxx&ts=1712123456

  • HeaderContent-Type: application/json

  • Body (JSON)

场景命令示例说明
开启插座{"device":"820720", "order":{"power":1}}power 为1代表接通电路。
关闭插座{"device":"820720", "order":{"power":0}}power 为0代表断开电路。
批量控制{"device":"820721,820722", "order":{"power":1}}同时控制多个设备,ID用逗号隔开。

2. 代码实现逻辑您可以使用任何支持HTTP请求的编程语言(如Python、Java、Go、PHP、Shell等)进行开发 。开发流程如下:

  • 步骤1: 按照上述签名规则,动态生成 sign

  • 步骤2: 构造包含 deviceorder 的JSON字符串。

  • 步骤3: 发起POST请求。

  • 特征: 从命令下发到设备响应通常仅需 80-120ms,延迟极低

四、 高级功能开发:定时与延时控制

芯步的接口支持内置的定时任务,无需在您的服务器上维护复杂的定时队列,这极大简化了开发难度。

  1. 延时断开(先通后断)如果您希望插座在接通一段时间后自动关闭(例如给电动车充电2小时),可以使用 point 命令。

    • 命令{"device":"820720", "order":{"point": 7200000}}

    • 解析point 的单位是毫秒。上述命令会立即开启插座,并在 7200000毫秒(即2小时) 后自动关闭

  2. 定时重启(先断后通)如果您希望设备断电一段时间后自动恢复(例如重启路由器),可以使用 reset 命令。

    • 命令{"device":"820720", "order":{"reset": 10000}}

    • 解析: 该命令会先断开插座,经过 10000毫秒(即10秒) 后再自动重新接通

五、 数据感知:获取功率与电量统计

对于选用了 “带功率计量” 版本的10A插座,您还可以通过API获取实时的用电数据,从而实现能耗监测功能

虽然单纯的“通断”控制只用到 order 参数,但获取设备状态或接收设备上报的数据,通常需要配置消息接收服务器主动查询设备状态接口。通过这些接口,您可以获取到:

  • 电压 (V) : 当前市电电压。

  • 电流 (A) : 当前负载电流。

  • 功率 (W) : 实时功率消耗。

  • 电量 (kWh) : 历史累计用电度数。

应用场景: 您可以在管理后台中,直观地看到接入该插座的10A设备(如服务器、工业显示器)的实时功耗,一旦发现功率异常升高,可以联动报警或自动切断电源。

六、 方案总结

通过上述五个步骤,您已经可以完成对芯步10A86型智能插座的完整二次开发。

  • 极简对接: 无需处理复杂的TCP长连接,标准的HTTP API适合快速集成到现有的Web、APP或小程序后台中

  • 开发灵活: 无论是使用Python进行数据分析,还是使用Java开发企业级应用,甚至使用Shell脚本做运维联动,接口的通用性都能完美兼容

  • 安全可控: 双重MD5签名机制保障了设备控制的安全性,私有化部署选项也满足了企业内网环境的安全要求。

基于这套方案,您可以快速实现10A及以下电流设备的智能化控制,将传统电器无缝接入您的物联网应用系统中。

插座产品方案:
写字楼设备电源管理:怎么把16A86型定时智能插座接入到软件项目中
查看 >>
如何在图书馆设备电源控制中接入智能设备以实现定时开关电器设备
查看 >>
广告灯箱设备电源管理:怎么把1位5孔智能电源插座对接到软件项目中
查看 >>
怎样在实验室设备电源管理中对接智能硬件以实现设备运行状态反馈
查看 >>
怎么在广告灯箱设备电源管理中集成智能硬件来实现远程定时任务设置
查看 >>
电源场景方案:
如何二次开发4 路智能照明控制器来实现定时开关照明设备电源
查看 >>
自助售货机电源管理:怎样将AC1-10A电器开关集成到软件项目中
查看 >>
如何在智能仓储设备机柜电源控制中对接智能设备来实现设备分组控制
查看 >>
广告机设备机柜电源管理:怎样把智能远程控制8位分控PDU 使用场景接入到自己的项目中
查看 >>
如何在设备机房远程运维电源管理中对接智能设备以实现故障告警通知
查看 >>
10A用途方案:
如何二次开发10A智能通断器AC1来实现10A 额定电流控制
查看 >>
如何对接智能插座10A86型来实现10A设备电源控制
查看 >>
如何二次开发智能通断器AC4-10A版以实现10A 额定电流控制
查看 >>
怎么在共享按摩椅电源控制中对接智能硬件来实现10A 额定电流控制
查看 >>
怎么接入10A 智能开关 AC2来实现10A 额定电流控制
查看 >>