共享棋牌室现在越来越火,但真正实现“无人值守”,痛点就是:客人走了没关灯、空调忘关、麻将机不断电。依托芯步的开放接口和“智能包间控制器”,我们可以轻松搞定这些问题。
以下方案以 8路输出 的“智能包间控制器 | Max”为例,手把手教你如何对接。
一、 硬件选型:怎么实现“1台设备管所有”?
要对接到8路线路,我们选用的硬件是芯步的 【智能包间控制器 | Max】 。别看它名字叫控制器,其实就是一个“集中式继电器”。
为什么选它? 它把8路继电器集成在了一个盒子里,直接解决了我们要的“8路控制”问题
第 1-3 路(10A) :接照明灯、换气扇、吸烟灯。这三路通常是客人一进门就需要开的。
第 4-6 路(16A) :接麻将机、饮水机、按摩椅。注意麻将机功耗大,需要这种大电流接口。
第 7 路(10A) :接门禁电磁锁。用来控制包间的门,实现“自助开门”。
第 8 路(30A) :接 2匹 空调。空调启动电流大,普通开关容易烧,这路专门给空调用。
一句话总结:买一个这个控制器,把麻将机插头插在第4路,空调插第8路,灯接第1路……8个插头全插完,一个设备全管了。
二、 接口对接:怎么用代码控制它?
芯步的接口比较“友好”,用的是标准 HTTP 协议,不管你后端是用 Java、Python 还是 PHP,甚至前端 JS 都能直接调 。
控制思路很简单:调接口 -> 带签名 -> 发指令。
1. 准备工作(拿钥匙)
在芯步的控制台找到三个关键东西
AppID:你的应用身份证。AppSecret:你的应用密码(千万别泄露给前端)。Device ID:就是这个控制器的设备编号。
2. 签名计算(别怕,就是加密一下)
为了防止别人乱刷你的接口,每次发指令都要带签名。规则是 md5(md5(Secret) + ts)。稍微口语化解释:把你的密码先 MD5 加密一次,然后加上当前时间戳,再整体 MD5 加密一次。
3. 核心指令表(8路怎么控)
一切准备就绪后,往 https://api.thingboot.com/你的AppID/device/control/ 这个地址 POST 数据就行了 。
以下是针对8路线路的 order 参数详解(这是最核心的部分):
| 控制场景 | 指令JSON (order) | 作用解释 |
|---|---|---|
| 单开第1路 | {"power1":1} | 1代表开,0代表关。通常用来开灯 |
| 关第4路 | {"power4":0} | 关掉麻将机电源,防止下钟了还在耗电 |
| 全开 | {"power":1} | 客人下单成功后,一键全开所有设备 |
| 全关 | {"power":0} | 客人退单,保洁做完卫生后,一键全灭 |
| 批量控制 | {"batch":{"relay":[1,3,5],"power":1}} | 只开 1、3、5 路(比如只开灯和换气,不开空调) |
| 门禁开锁 | {"power7":0} | 7路通常接门磁,给0表示断电,门就开了(注意常开/常闭设置) |
三、 实战业务流程:从下单到离店
我们把这些指令串起来,看看在共享棋牌室里是怎么跑的:
1. 客人下单 -> 自动通电
当客人在小程序付完款,后端收到“支付成功”回调。后端动作:调用接口 POST {"power":1}。物理结果:包间灯亮、麻将机通电、空调启动、换气扇开启。可选操作:如果需要门禁,这时调用 {"power7":0} 给门解锁,或者让客人点击小程序按钮开门。
2. 使用中 -> 远程协助
场景:客人打电话说“好热啊,空调调低一点”。如果是普通空调,需要调温度,但如果是简单通断控制,这路只能开关机。进阶方案:如果是红外空调,需要配合万能遥控器;但如果是直接插拔的空调,把第8路做“先断后通” 。指令{"reset":{"relay":[8],"interval":5000}} -> 意思就是:关掉空调,等5秒,再重新开。
3. 超时提醒 -> 延时断电
场景:时间到了,客人磨蹭不走。策略:先发语音提醒(如果有TTS版),然后等待5分钟。如果还没续费,后端动作:调用 {"power":0}。直接全屋断电。灯灭了,麻将机停了,客人自然就走了 。
4. 保洁复位
客人离开后,保洁阿姨进去打扫。后台操作:保洁App上点“已完成”,或者保洁刷卡/密码关门后。后端动作:系统自动再次确认执行 {"power":0},确保所有设备已断电报废,规避安全隐患。
四、 避坑指南
关于MQTT还是HTTP:芯步同时支持HTTP和MQTT 。控制用HTTP(简单直接) ,状态同步用MQTT(如果有需要实时获取继电器状态的需求的话) 。如果只是最简单的开关灯,HTTP足够了。
一定要做“离线缓存” :虽然这个控制器是WiFi连接,但网络万一波动呢?你的后端代码里,发送指令后不要只显示“发送成功”,因为接口返回200只代表云端收到了,不代表设备执行了 。最好是配合消息推送功能,等设备反馈“我已经关掉第4路了”,你再在前台提示“断电成功”。
空调控制的小心机:第8路虽然能接空调,但只能通断电源。如果遇到需要调温度、调模式的空调,这一路就只能当“强制断电”用了。更好的做法是:用这一路控制空调的插座,平时常开,用红外遥控器调温;只有在客人超时才切断这一路的电源。
功率限制:麻将机(感性负载)不要超过500W,普通照明随便接。如果接大功率取暖器,记得看说明,第8路最高支持6600W阻性负载,很猛,但前面几路不行 。
五、 代码片段(示意)
后端收到请求,给设备ID为 ABC123 的包间开灯(第1路):
总结芯步这个方案其实就是把传统的强电布线,换成了 “进线 -> 控制器 -> 电器” 的模式。利用它的 HTTP API,你只需要对着 8个继电器 发 开/关 指令,就能把棋牌室的智能化搞定了,还是比较稳的。