CATALOG

一、写在前面:为什么选20W音柱?

先说说为啥推荐20W这个规格。餐厅奶茶店的环境大家都懂——高峰期人声嘈杂、收银机滴滴响、榨汁机轰隆隆,小功率音箱根本压不住。20W音柱基本能覆盖100平以内的门店,声音够亮但不会破音。如果店面更大,芯步也有30W、60W的版本可选,接口调用方式是一样的,后续升级不用改代码

本文会讲清楚三件事

  1. 音柱长什么样、怎么装

  2. 怎么用HTTP接口让音柱“说话”

  3. 怎么跟你的收银系统/小程序打通

二、硬件长什么样?怎么装?

2.1 设备长啥样

芯步这款20W智能语音音柱,型号大概是UNI-YY-YZ-20W,铝合金外壳,白色,大概30多公分高。长得像个小号的路灯音响,挂墙上不显突兀。

背后有两种联网方式可选

  • WiFi版:插电后配网就行,适合有WiFi的门店

  • 有线网口版:网线直连,信号更稳定,适合网络环境复杂的后厨

2.2 安装注意啥

  1. 供电:配的是12V/2A电源,找个插座就行。如果要户外或吊顶安装,记得让电工预留电源线。

  2. 位置:挂在前厅和后厨之间的墙上,或者收银台上方。别塞角落,声音传播讲的是直达声。

  3. 网络:配网时设备会发一个热点,手机连上去把WiFi信息告诉它就行。每个设备有个唯一的设备ID(一串数字),记下来,后面接口调用要用

三、核心对接:怎么让音柱“开口说话”?

3.1 大原则

芯步这套接口开放度挺高的,不管你的软件是用Java、Python、PHP还是Node.js写的,只要它能发HTTP请求,就能控制音柱

一句话说透流程:你的服务器往芯步的API发一个HTTP请求,请求里带上“让哪个设备说哪句话”,平台把命令推给设备,设备就播报了。

3.2 鉴权怎么做(签名计算)

调用接口之前需要先搞定签名,说白了就是防别人乱调你家设备的。公式长这样

其中:

  • AppSecret:你开发者的密钥,在芯步控制台能拿到

  • ts:当前时间戳(秒级)

  • MD5():就是MD5加密

举个例子(伪代码):

友情提示:时间戳前后误差别太大,平台会校验时效性。

3.3 下发播报命令(核心!)

接口地址长这样

必须传的参数

参数说明示例
device设备唯一ID,就是刚才记下来的那串数字"12345678"
order播报命令,JSON字符串{"play:gbk:16":"请101号顾客取餐"}

order里面写啥?让音柱播文本,格式是

play:gbk:16里的16是音量,范围0-100,16大概是比较柔和的后厨音量,你可以调。

完整请求示例(JSON格式):

彩蛋功能:如果你的订单号想关联追踪,可以在order里塞个extra字段

这个extra在回调里会原样返回,方便你后续对账。

3.4 代码怎么写(Java版示例)

用Java写大概长这样,用的Unirest库

其他语言比如Python用requests库,PHP用curl,逻辑一模一样。

四、融入业务场景:从“点单完成”到“语音叫号”

光能发HTTP请求还不够,你得跟业务系统连起来。这里给两种主流场景的对接思路。

第一种场景:收银系统对接(最常用)

你的收银软件里,出餐员点击“完成制作”按钮时,触发叫号。

数据流

  1. 收银员在POS机上扫小票二维码或点“完成”

  2. POS系统调用芯步接口,传参数:device=音柱ID + order=请123号取餐

  3. 音柱响了

  4. 同时可以把状态同步到大屏(如果有)

伪代码逻辑

几个小

  • 出餐慢的品类(比如复杂果茶)可以单独设个“催单播报”按钮,播“请108号顾客稍等,正在制作”

  • 如果餐厅分A/B/C区取餐,可以在播报里加“请到A区取餐”

第二种场景:扫码点餐小程序打通(更智能)

顾客扫码下单后,系统自动生成取餐号,后厨大屏显示制作中,做完后自动叫号。

关键点

  • 小程序下单时生成取餐号(比如“101”)

  • 后厨接单系统有“完成”按钮,点完触发叫号

  • 也可以配个硬件按钮(比如USB脚踏开关),出餐员踩一下就触发叫号,手不用碰屏幕,效率翻倍

这种方案的好处是:顾客不用挤在前台等,手机上看排队进度,听到叫号再来取。

五、进阶功能:更像个专业产品

5.1 控制音量、音色

除了播报,你还可以远程调参数:

每天早上开店时,用定时任务把音量重置到合适的值,避免上一班调太响或太轻。

5.2 批量叫号

高峰期一杯接一杯,可以一次性把多个号播了:

或者用多设备广播:device参数用逗号隔开,多个音柱一起播

5.3 处理失败重试

接口返回200只代表“平台收到命令了”,不代表设备真的播了(比如设备离线)。:

  1. 订阅平台的异步消息推送,确认设备执行成功

  2. 没收到成功回调的话,缓存起来每隔几秒重试一次

  3. 重试3次还失败就告警(钉钉/企微机器人)

5.4 队列缓冲

高峰期一秒出好几杯,同时调用接口可能把设备搞懵。在服务端做个队列:

  • 叫号请求先排队

  • 逐个发送,间隔1-2秒

  • 避免设备处理不过来

六、常见问题避坑指南

Q1:设备明明在线,为啥有时候不播?A:先检查网络信号强度。后厨角落WiFi弱的话,换有线版。再不行看看是不是音量被调成0了。

Q2:播报内容有乱码?A:确保文本是GBK编码。play:gbk:16里的“gbk”说明设备期望GBK编码的中文。你的代码如果默认UTF-8,需要转一下。

Q3:能否播背景音乐或自定义铃声?A:内置了5种铃声和5种提示音,可以调。要播自己的MP3文件?芯步有些型号支持音频文件播报,20W这个主要做TTS文本播报。

Q4:连锁店几十家,怎么管理?A:每个设备有自己的ID,按门店分组管理就行。控制台能看到所有设备状态,也可以按门店打标签。你们自己数据库里存一张“门店-设备ID”映射表。

七、成本预估与总结

硬件成本:20W音柱大概几百块,比商业叫号系统那种“硬件盒子+音箱”的组合便宜不少。而且一次性买断,没有年费。

开发成本:一个后端工程师半天到一天就能调通。无非就是封装一个“叫号服务”,输入参数(设备ID+文本),输出成功/失败。

总结一下这套方案的优点

  1. 接口简单:就一个HTTP请求,任何语言都能接

  2. 不用录语音:直接传文本,TTS合成,支持数字、金额、手机号智能读法

  3. 扩展性好:以后要加门口迎宾、后厨定闹钟、打烊提醒,都是同一套接口

  4. 性价比高:硬件成本可控,开发时间短

最后,对接过程中如果卡在“签名算不对”或者“设备收不到命令”,八成是时间戳或编码问题。先用芯步控制台自带的“调试工具”发一条试试,设备能响,说明硬件和网络没问题,专心排查代码就行。祝对接顺利!