一、背景与需求
共享茶室这种业态,痛点就是“没人守着,但啥都得管”。顾客随时可能下单,你得自动开门、自动通电、空调提前开好;时间一到,又得自动断电、关门。如果全靠人工,那24小时营业就是个笑话。
其实说白了,共享茶室的远程控制需求并不复杂,就是根据订单状态,自动触发一系列设备动作。比如用户下单后,系统需要:开门锁 → 通电 → 开灯 → 开空调 → 可能还要语音播报一下“欢迎光临”。时间到了或者用户点“续费”,又得处理不同的逻辑。
芯步的开放接口正好能解决这个问题——他们的设备本身就为这种场景设计的,接口也全开放,关键是免费。
二、硬件设备选型
核心设备:智能包间控制器
芯步有针对包间场景的专用设备,分两种规格
Max版(8路输出):
第1-3路:10A开关,接照明、换气扇、吸烟灯
第4-6路:16A插座接口,接饮水机、麻将机
第7路:10A门禁接口,接电磁锁
第8路:30A插座接口,接空调
Mini版(4路输出):
第1路:16A开关(照明/换气)
第2路:16A插座(饮水机等)
第3路:门禁接口
第4路:30A空调接口
我的是直接上Max版。别看现在可能用不了8路,但万一以后想加个空气净化器、香薰机之类的,你就知道预留接口有多香了。而且价格差不了多少。
辅助设备(按需选配)
智能门锁/电磁锁:配合控制器的门禁接口用
人体传感器:检测包间里有没有人,防止“假离店”浪费电
温湿度传感器:根据室内温度自动调空调
烟雾传感器:防火,安全必须的
三、技术架构
整体思路
控制链路是业务系统主动调用芯步API,状态回传是芯步平台主动推到你服务器。
两种控制方式
芯步同时支持HTTP和MQTT两种方式
HTTP方式(推荐业务系统用):
接口地址:
http(s)://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}请求参数:device(设备ID)、order(命令内容)
返回code=200表示指令已接收,但设备是否真执行了要看异步推送
MQTT方式(低延迟场景):
服务器:
订阅主题:
api/{AppID}/#接收消息
大部分业务系统用HTTP就够了。MQTT适合对实时性要求比较高的场景,比如传感器秒级响应,但共享茶室不需要那么极致。
签名规则
调用接口需要计算签名
ts就是当前时间戳(秒级,10位)。注意芯步要求1秒内单设备最多请求1次,别写死循环去刷接口。
四、业务逻辑与联动规则
第一种场景:用户下单成功
触发:用户支付完成,订单状态变成“已预订”
联动动作
开门:向门禁接口下发
{"power":1}通电:照明、插座等各路输出打开
预开空调:根据当前室温判断是否需要启动
代码思路(伪代码):
芯步的order参数支持传JSON,也可以直接传power1=1&power2=1这种,看你习惯。推荐用JSON,复杂场景好扩展。
第二种场景:用户到店扫码
触发:用户在小程序点“开门”(或者扫门禁上的码)
动作:再次确认门锁已开,同步触发语音播报“欢迎光临XX茶室,您的订单已开始计时”
这步其实技术上跟上面一样,但业务上要做幂等——防止用户重复点