这套方案的核心是利用芯步智能PDU的HTTP接口,通过对接签名算法和下发放电指令,将分控能力无缝嵌入你现有的门店管理系统中。以下是完整的对接思路和落地步骤:
一、 为啥要自己对接?直接用工具有啥不好?
很多做无人值守(比如自助咖啡机、快递柜、共享充电宝柜、或者偏远机房的服务器)的兄弟可能会问:人家厂商不是自带APP吗?我直接拿手机控制不就行了?
这里有个痛点:业务逻辑割裂。
比如你的系统检测到柜机死机了,难道要让运维人员掏出手机打开芯步APP,找到对应设备,关掉第3口电源再打开?那也太Low了。正确的姿势是:当你的后台监测到设备掉线,自动调用接口重启对应的电源口,全自动化修复。
芯步的这款智能PDU最大的好处就是把HTTP接口开放得明明白白。这意味着你可以把它当成一个“网络机械手”,让它完全听命于你的业务服务器。
二、 准备工作
在敲代码之前,你得先把“路”修通。
硬件到手:把PDU插上电,插在机柜的PDU插排位置上。
注册与登录:去芯步官网注册个账号。这账号以后就是你这台PDU的大管家 。
配网(最关键的一步) :
这个设备只支持 2.4G WiFi ,记得别连5G信号 。
用手机小程序或者电脑控制台,把现场的WiFi账号密码配置进去。看到设备指示灯不闪了,在控制台显示“在线”,这步就搞定了 。
找到身份证:在控制台找到你这台设备的 设备ID ,以及你账号的 AppID 和 AppSecret(相当于你账号的钥匙)。这三个字符串是后面所有操作的基础。
三、 核心揭秘:接口怎么调?
这是最关键的部分。芯步的接口设计得比较贴心,不需要引入复杂的SDK,只要你的开发语言能发HTTP请求(现在什么语言都能),就能调。
1. 地址和参数
接口地址(注意替换 {AppID}):https://api.thingboot.com/{你的AppID}/device/control/
2. 避坑指南:签名算法(Sign)
很多人卡在这一步,觉得签名很玄乎。其实它就是一道公式,防止别人随便调用你的设备。
官方的逻辑是这样的:
sign = md5( md5(AppSecret) + ts )
通俗解释一下:
先把你的AppSecret(钥匙)进行一次MD5加密,变成一串乱码。
把这串乱码后面拼上当前的时间戳(比如
1693872000)。把拼接后的整个字符串,再算一次MD5。这最后的结果就是Sign。
举个例子(伪代码):
注意:时间戳 ts 必须传当前的,而且前后时间差不能太大,否则服务器会认为请求过期。
3. 下发命令(Body体)
请求的时候,Content-Type 要设为 application/json。
我们需要传两个字段:device 和 order。
device:就是刚才在后台抄下来的设备ID。
order:这里是精髓。因为咱用的是 分控|5位,也就是5个口可以独立控制 。
你想要的效果对应如下命令:
打开第1个口:
{“power1”: 1}关闭第3个口:
{“power3”: 0}批量操作(比如打开1、2、3,关掉4、5) :
{“power1”:1, “power2”:1, “power3”:1, “power4”:0, “power5”:0}全部打开:
{“power”:1}(或者用batch命令看具体文档,直接发全开全关也行)
实际请求示例(用curl命令演示,你可以直接复制到黑窗口测):
(注:上面ID 1878 是我瞎写的,你得换成你自己的设备ID)
四、 实战:嵌入你的项目场景
假设你现在有一个无人值守便利店或者共享自习室的机柜。
第一种场景:某个安卓主板死机了(接在第2口)通常你去现场要拔插电源。现在集成到你的项目里:你的逻辑:检测