芯步的16A智能插座开放了HTTP接口,可以用任何编程语言远程控制——这对共享麻将馆来说,意味着用户可以自助扫码通电,订单结束后自动断电。下面直接说怎么接入,尽量少绕弯子。
一、为啥选这个16A的插座?
你可能会问,市面上插座那么多,为啥单拎这个出来说?
第一,扛造。 麻将馆里的麻将机、空调、饮水机,功率都不小。这个16A插座最大支持3500W,带个2匹的空调绰绰有余。普通10A插座插空调容易发热,长期用有安全隐患。
第二,不用买网关。 这玩意儿直接连WiFi(2.4G),不需要额外买个什么智能网关,省了一笔硬件成本。
第三,接口开放。 不像小米那些智能家居主要给家里用,芯步这个就是给开发者准备的,有完整的API文档,你想怎么控制就怎么控制。
第四,有计量版。 如果你想知道麻将机实际开了多久、耗了多少电,可以买带功率计量的版本,能读到电压、电流、功率数据。
简单说:把麻将馆包间的墙壁插座换了,接入你的系统,用户扫码付钱,插座自动通电。
二、接入前要准备啥?
动手之前,先把这几样东西准备好:
硬件: 芯步的16A智能墙壁插座(UNI-QC-16A或带计量的UNI-QC-16A-P)。
账号: 去芯步开放平台注册个开发者账号(永久免费,这点不错)。
找到密钥: 登录后进控制台,找到你的 AppID 和 AppSecret(开发者密码)。这俩相当于你家大门的钥匙,调用接口时必填。
配网: 把插座装好(记得断电操作!),按说明书让它连上你麻将馆的WiFi。连上后在控制台能看到这个插座有个唯一ID(一串数字)。
三、核心逻辑:怎么用代码控制它?
控制插座本质就是发一条HTTP请求。你说“打开”,它收到就“通电”。
1. 先搞定签名(Sign)
这是最容易踩坑的地方。芯步的接口要求每次请求都要带签名,防止被别人乱调。规则是这样:
先把你的 AppSecret 做一次 MD5 加密,得到的结果拼上当前时间戳(ts),再把整个字符串做一次 MD5。
公式:Sign = md5( md5(AppSecret) + ts )
举个例子(伪代码):
这个 sign 每次请求都要重新算,因为时间戳变了。
2. 下发“打开”指令
接口地址:https://api.thingboot.com/{你的AppID}/device/control/请求方式:POST(推荐)请求头:Content-Type: application/json请求体长这样:
注意: order 参数是字符串,不是直接用 JSON 对象。你需要在代码里把它转成字符串形式传过去。
3. 完整代码示意(伪代码)
不用给具体附件,我就写个逻辑,你用任何后端语言(Java、PHP、Python、Node.js)都能实现:
注意: 接口返回 200 只代表平台收到了指令,不代表插座真的动了。如果插座掉线了,虽然返回 200 但其实没执行成功。所以如果你的系统要求高可靠性,需要监听平台推送的设备状态消息,后面会说。
四、放到共享麻将馆项目里:实际流程
假设你现在在开发一个小程序,用户扫码选时间付款,然后包间通电。流程是这样的:
1. 下单页:用户在小程序上选好时间(比如晚上7点到9点),付了钱。你的后端收到支付成功的回调。
2. 等待时间:你的系统不需要立即通电。可以做个定时任务:快到7点的时候(比如提前5分钟),调用上面的 control_socket(插座ID, 1) 把灯和麻将机打开。这样用户到了直接玩,体验好。
3. 时间到:9点到了,如果用户没续费,你的系统再调一次 control_socket(插座ID, 0) 断电。
4. 进阶功能:如果你买的是计量版,还可以定时读取功率。比如连续5分钟功率都是0(说明人走了但没点结束),系统可以自动断电或者发个消息提醒,避免浪费电。
五、几个容易忽视的点
插座ID是啥?设备配网后,在芯步控制台能看到一串数字,那个就是 device ID。你需要把它和你的麻将馆“01号包间”绑定起来,存在数据库里。
接口频率别太高芯步限制单个设备1秒最多访问1次。正常控制足够了,别写死循环去轮询就行。
要让前端直接调吗?不要!千万别在小程序前端直接调芯步的接口,因为你的 AppSecret 会暴露。正确做法是:前端 -> 你自己的后端 -> 芯步平台。你自己的后端做中转。
怎么知道用户是不是真把麻将机插上去了?如果插座支持功率计量,你可以写逻辑判断:通电后如果功率 > 50W,说明设备开了;如果一直是 0W,说明可能插头没插或者麻将机坏了。这对远程运维很有用。
万一WiFi断了咋办?插座断电重连后会尝试重连WiFi。麻将馆的网络要稳定,最好给插座单独留一个2.4G的WiFi信号,别用5G,不兼容。
总结
接入芯步16A插座到你的共享麻将馆项目,核心就是三步:
注册拿密钥(AppID/Secret)。
配网拿设备ID(插座编号)。
写代码算签名、发指令(用 power=1 开,power=0 关)。
这套流程搞定了,用户就能在小程序上点一点,把包间的电给通了。接下来你还想控制门锁、灯光的开关,其实套路都差不多,换几个参数名就行。