CATALOG

芯步的智能插排开放了HTTP接口,这意味着你不需要懂底层硬件协议,像调用普通API一样发几个HTTP请求就能控制机柜里的设备电源。下面我把整个对接过程拆开来讲。

一、 先搞懂你的“硬件”:芯步5位机柜插排有什么特别?

首先,我们得确定一下你手里的“家伙什”是什么。芯步针对机柜场景,通常有两种类型的设备,但根据你提到的“5位机柜智能插排”,大概率是指 智能PDU(总控/分控) 系列。

不管你是用 UNI-PDU-ZK-5 还是其他5位型号,它们都有一个核心共性:开放HTTP接口

这意味着什么?意味着它不挑开发语言。 不管你的后端是用Java、Python、PHP,还是前端用Node.js,甚至是写脚本,只要你的代码能发HTTP请求(POST/GET),就能指挥它干活

几个关键特性你得知道:

  1. 直接联网:这玩意儿自带WiFi(2.4G),不需要买额外的网关。把它插到机柜插排上,连上公司WiFi,它就活了

  2. 局域网也行:如果你的机房为了安全不能上外网,芯步支持私有化部署和局域网控制,这意味着即使断网,你的软件也能控制它

  3. 五路独立:物理上是插排上的5个孔位,逻辑上在软件里是5个独立的“开关”。

二、 对接的核心“黑话”:看懂那几个命令

在开始写代码前,你只需要看懂一个JSON命令结构。芯步的接口设计得挺粗暴直接的,不需要复杂的工业协议解析(不像Modbus那么费劲)。

它的核心命令格式大概长这样

我们来拆解一下:

  • power1 / power2 / power3:这个数字后缀代表插排上的第几个孔(1号位、2号位...一直到5号位)。

  • 数值 1 或 0:1 = 通电(开),0 = 断电(关)。

  • 控制整排:如果你想一次性把所有口都重启或者都关了,也可以找找power(不带数字)或者batch(批量)的命令,文档里通常有

常见的业务场景命令:

  • 远程重启服务器:发送 {“power1”: 0} 切断,等2秒,再发 {“power1”: 1} 启动。

  • 定时关闭测试机:结合你的业务逻辑,到点发送 {“power3”: 0}

  • 紧急下电:需要物理切断某台违规设备电源,直接发对应powerX=0。

三、 实战对接步骤:三分钟让你的软件“摸到”插排

第一步:环境准备(找齐三件套)

你得在芯步的开发者后台找到三个东西,这相当于你的“身份证”:

  1. AppID: 标识你的应用是谁。

  2. AppSecret: 你的应用密码,千万别写死在前端代码里,要在后端调用。

  3. Device ID: 这个5位插排的唯一ID,你需要把它添加到你账号下并获取到这个ID

第二步:搞定签名(Sign)

这是很多新手觉得头大的地方,但其实照着文档抄就行。芯步用的签名算法是:sign = md5( md5(AppSecret) + ts )

简单说就是:把你的密码MD5加密一次,然后拼接上当前的时间戳,再把这一串字符MD5加密第二次

为什么要这么麻烦? 为了防止有人抓包伪造命令,盗刷你的插排。只要时间戳不对或者密码不对,命令就执行不了。

第三步:发个请求试试(用代码说话)

假设你用Python写后端(Java/Go/Node.js同理),调用逻辑通常长这样。不需要引入任何特殊的库,就用requests:

如果你用前端JS(比如Vue/React)直接调:理论上可以,但极度不推荐因为AppSecret会暴露在前端代码里,别人打开F12就能控制你的机柜插排,把服务器全关了。这一步请一定要在你的后端服务器完成。

四、 进阶玩法:不只是开关

一旦基本的HTTP通了,你就可以开始整活了:

  1. 故障自愈(牛逼Plus)写一个定时任务,Ping机房里某台服务器的IP。如果连续3次Ping不通,自动调用接口 {“powerX”: 0} ,等10秒,再调用 {“powerX”: 1}这就实现了无人值守自动重启死机的服务器。

  2. 计量与展示(如果买的是计量版)如果你买的是带计量的型号(16A计量版),芯步的接口还能帮你拿回电压、电流、功率数据把这些数据接到你的监控大屏(Grafana或自研运维平台),就能看到“机柜A当前电流 2.3A”,一目了然。

  3. 定时任务你的代码里写个cron(定时器),每天凌晨3点把测试环境的插排关掉,早上9点打开。省电又安全。

五、 踩坑与避坑指南(全是经验)

  1. HTTPS还是HTTP?如果是纯内网环境,用HTTP最方便最快。如果要过公网,必须用HTTPS,否则你的密码和命令在网络上相当于“裸奔”。

  2. 响应速度芯步的文档声称80-120ms响应,这在机房场景完全够用了。但注意,如果你的服务器和插排不在同一个局域网(比如服务器在北京,插排在上海),会有公网延迟(可能50-200ms),但这对于开关电源来说根本无所谓。

  3. 权限控制你的软件项目肯定有用户登录吧?记得做二次鉴权

    • 普通运维:只能看状态,不能点“重启”。

    • 主管/Admin:才能拥有那个红色的“断电”按钮。

    • 谁在什么时候断了电,一定要写操作日志留痕。

总结

把芯步的5位机柜插排对接到你的软件项目里,本质上就是 “调用HTTP API” 。你不必关心它里面是WiFi还是蓝牙,只要把它当作一个可以通过网址访问的“遥控器”就行。

流程顺口溜:拿好ID和密码,拼接加密封装包。后端发起POST请求,机房插排跟着走。想要重启断个电,代码里面改参数。