共享棋牌室的核心体验痛点之一就是“灯光”——客人扫码开单自动亮灯、时间到了自动关灯、客人自己用手机控制包厢灯。芯步的8路照明控制器通过开放HTTP接口,可以很方便地接到你的软件系统里。下面直接说人话,讲清楚怎么对接。
一、先把硬件接好、搞清楚
你得先把这个8路控制器装进棋牌室的强电箱里。
接灯:控制器上有8个继电器(就是8个开关),分别把8路照明灯的零火线接上去。比如1号灯接第1路,2号灯接第2路,这样每一路独立控制。
接网:这个东西用的是WiFi,连上你棋牌室的2.4G WiFi网络就行(不支持5G)。通电后,它就会自动去连接你的WiFi。
记住一个关键东西:设备ID。这个控制器在芯步的云平台上有唯一的身份证,叫 device(一般是个纯数字)。你得把这个ID记下来,或者通过平台接口查出来,后面代码全靠它来指定“我要控制哪间房的哪个控制器”。
二、搞清楚怎么发命令(就是调接口)
这个控制器最方便的地方是支持 HTTP接口 调用,不用搞复杂的MQTT那些,你的后端、小程序、App发个请求就行了。
1. 接口地址
芯步平台给了一个通用的入口:https://api.thingboot.com/{你的AppID}/device/control/?sign={签名}&ts={时间戳}
这里面的sign和ts是为了安全加的“暗号”,防止别人乱开你的灯。说白了就是在你后台用密钥对请求做一下签名,具体平台文档里有标准算法,照着抄一遍就行。
2. 控制单路照明
比如客人选了1号包厢,开单成功,你要把1号灯打开。
直接用POST或者GET方式,传三个参数就行:
device:填你那个控制器的设备IDorder:填你要干嘛
举个例子:
假如你的设备ID是 123456789,想打开 第3路 的灯:指令就传:{"power3":"1"}(1是开,0是关)
完整的请求参数就像这样:
就这么简单,调一下这个接口,第3路灯就亮了。
对应关系也很好记:
第一路:power1
第二路:power2
……
第八路:power8
3. 批量控制(一次性全开/全关)
客人结账走人了,或者系统时间到了,要把这个包厢里所有灯全关了。
有两种玩法:
全开
{"batch":{"power":1}}全关
{"batch":{"power":0}}
比如客人离开现场时了,你给设备发一条命令:{"batch":{"power":0}},8个开关同时断开。
如果你只想关其中几路(比如就关1、3、5路),也可以指定:{"batch":{"relay":[1,3,5],"power":0}}
三、实际对接:根据你的语言写代码
不管你是用Java、PHP、Node,还是写小程序,本质就是发HTTP请求。
我们以小程序端为例,客人点一下“开灯”按钮,代码大概是这样:
小贴士:因为涉及到 sign 签名计算,通常比较好的做法是——小程序不直接调硬件接口,而是先调你自己的后端,后端计算好签名后再去调芯步的接口。这样可以把密钥安全地放在服务器,不泄露给前端。
四、棋牌室常见业务流程怎么设计?
1. 扫码开单 → 自动亮灯
客人扫码支付,订单生成后,你的系统就拿到“XX包厢”的信号。你后台代码里写:
查询这个包厢对应哪台控制器、哪一路线路(比如包厢A对应device=123456,线路=1/2/3路)
调用接口把这几路电送上去
灯亮了,客人进去就能用。
同时你还可以顺便把排风扇(接在第4路)、氛围灯带(第5路)一起打开。
2. 预约留灯
客人通过小程序预约:“今晚8点包厢”。你可以用定时任务,在7:55的时候,系统自动给那个包厢的控制器发一条指令:{"power1":"1"},先把基础照明打开,客人来了感觉服务很贴心。
3. 到时自动断电
比如客人买了2小时,时间到了。系统自动调用接口:{"batch":{"power":0}} 把包厢里所有电器全断掉。新客人没付钱,灯就是不会亮,这样能防止蹭玩。
4. 客人手动调光/关灯
如果客人觉得灯太刺眼,或者想省电,在小程序里点“关灯”。小程序发请求到你的后端,后端调接口:{"power1":"0"}
注意:这种情况下,你的程序最好记住当前状态。比如客人手动关了灯,但订单还没结束,后台数据库里这张订单的状态栏要标记“照明状态:用户手动关闭”,免得结算的时候误判为设备故障。
五、几个容易踩的坑,提前帮你避开
关于“成功”的误解你调接口收到
{"code":200},这不代表灯亮了,只代表云平台收到了指令并转发给了设备。如果控制器当时WiFi断了(比如网不好),灯还是不会亮。所以关键业务(比如开单)不只依赖这个接口的返回,最好配合设备上报的状态或者回调消息来判断。联网稳定性共享棋牌室的强电箱通常在角落,WiFi信号可能不太好。装个信号放大器,或者选支持有线网络版的设备。如果设备掉线,你的指令就发不过去,客人会投诉。
分清10A和16A芯步这款控制器分电流版本。如果只是接LED灯管,10A够用;如果接了大功率空调或麻将机,得用16A版本,否则容易烧触点。
利用extra字段追踪订单芯步的接口有个很贴心的
extra字段。你发指令时带上订单号,比如{"power1":"1","extra":"ORDER_20260118_001"}。这样在后续的回调里,你就能知道这次开灯动作是哪个订单触发的,方便对账排查。
总结
把芯步这个8路照明控制器接入软件项目,本质上就是“拼积木”
硬件装好,连上网,抄下设备ID。
照着文档,把签名算法在你后端写一遍。
业务代码里,在“开单”和“锁单”的地方,分别加上开灯和关灯的HTTP请求。
处理一下设备离线、订单异常的边界情况。
这套方案搞定了,你的共享棋牌室系统在照明管理这块就基本专业了,既能省电,又能让客人体验“手机在手,灯光我有”的便利。