芯步智能语音音柱采用标准HTTP接口,无需复杂协议转换,只需简单的API调用就能让软件项目具备语音播报能力。以下是具体的接入方案:
一、 背景与选型
在超市场景中,通常需要在收银台(新订单、扫码成功)、生鲜区(打折提醒)、出入口(欢迎/防盗提醒)进行语音播报。传统的音柱需要布线和复杂的音频矩阵,而芯步智能语音音柱(10W) 采用WiFi通信,开放HTTP接口,可以直接接收来自收银系统和后台系统的文本指令,实时转化为语音。
核心优势
接口通用:基于HTTP协议,任何编程语言(Java, Python, PHP, Go)或工具都可调用。
零噪音合成:无需在超市本地部署合成的电脑,云端/本地服务器直接推送文本,音柱内置高保真TTS引擎。
网络灵活:支持WiFi 2.4G,适合超市天花吊顶或货架安装,无需额外网线。
二、 对接架构图
整个系统架构极简,通过局域网或公网均可控制,无额外网关成本。
flowchart LR
subgraph A[软件/业务层]
A1[收银系统
(ERP/POS)]
A2[后台管理系统
(Web/小程序)]
end
subgraph B[网络传输层]
B1[HTTP API
(芯步云/私有化服务器)]
end
subgraph C[执行层]
C1[智能语音音柱
(WiFi连接)]
end
subgraph D[应用场景]
D1[收银台]
D2[生鲜区]
D3[出入口]
end
A1 -- 扫码成功/订单 --> B1
A2 -- 编辑/管理播报任务 --> B1
B1 -- TTS指令/音量控制 --> C1
C1 -- 播报 --> D1
C1 -- 播报 --> D2
C1 -- 播报 --> D3三、 前期准备与配置
在开始编码前,需要进行硬件初始化:
设备配网:使用“芯步”微信公众号或App,为音柱配置超市内的WiFi网络。设备通电后会自动连接网络。
获取凭证:登录芯步开发者后台,创建应用以获取专属的
AppID和AppSecret(开发者密码)。获取设备ID:在后台设备列表中找到对应音柱的
Device ID(设备编号)。
四、 详细接口对接步骤
软件的对接核心在于签名计算和指令封装。
1. 接口地址与鉴权
所有控制指令均通过POST方式发送至以下地址:
https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}{AppID}:替换为你的应用ID。
{ts}:当前Unix时间戳(秒)。
{sign}:签名,计算公式为
md5( md5(AppSecret) + ts )。
签名计算示例(伪代码):
String secret_md5 = md5(AppSecret); // 第一步:将AppSecret进行MD5加密 String raw_string = secret_md5 + ts; // 第二步:拼接时间戳 String sign = md5(raw_string); // 第三步:再次MD5得到签名
2. 核心接口:下发语音播报指令
当软件需要让音柱说话时,调用此接口。这是超市最常用的功能。
请求参数(Body, JSON格式):
device:设备ID。order:命令对象。
示例:播报“欢迎光临”,音量调至7级
关键字段说明
volume:范围0-9,超市环境设置在6-8之间。play:gbk:16:这是文本播报的核心指令,支持中文和数字。
进阶功能 - 收款码播报当收银系统收到付款时,可以发送带金额的数字。
音柱会自动优化数字读法,避免读成“五二点五”。
3. 辅助控制指令
为了适应超市不同时段的需求,可以通过接口动态调节设备状态。
| 功能指令 | JSON格式示例 | 适用场景说明 |
|---|---|---|
| 调节音量 | {"order": {"volume":"5"}} | 白天客流量大时调高音量(8),晚间临近关门调低音量(3)。 |
| 播放提示音 | {"order": {"message":"3"}} | 播放内置的提示音(1-5),用于吸引顾客注意,再播报内容。 |
| 男/女声音色 | {"order": {"voice":"1"}} | 设置音色,0为女声,1为男声。 |
| 紧急停止 | {"order": {"stop":"1"}} | 当播报内容错误或遇到紧急情况时,立即静音。 |
五、 关键代码实现片段
以下是两段最常用场景的对接代码逻辑(伪代码/逻辑描述),用于集成到现有软件中。
场景1:集成到收银系统(Python示例)
当收银台扫码枪响起,调用此函数通知音柱播报。
场景2:集成到后台管理系统(Web前端示例)
管理员在浏览器中修改音柱音量(跨域需后端代理,此处展示核心构造)。
六、 超市落地注意事项
网络覆盖:音柱使用2.4G WiFi,确保安装位置信号强度充足(超市冷柜较多,可能会屏蔽信号,预留冗余)。
私有化部署(可选):如果超市对数据安全要求比较高,且不允许数据经过外网,该产品支持私有化部署。你可以在超市局域网内部署消息服务器,API地址指向内网IP,物理断开外网连接。
内容队列:如果短时间内高频触发播报(例如连续多笔订单),音柱会排队依次播报,无需在软件侧做复杂的阻塞处理。
多设备管理:如果超市有多个区域(如水产区、百货区),只需在
device参数中传入不同的设备ID,即可实现分区精准播报,例如仅让生鲜区的音柱播放“特价葡萄”[citation:4]。
七、 总结
通过芯步的开放接口,将智能语音音柱接入超市软件项目本质上只是一个HTTP调用。开发人员只需专注于业务逻辑(何时需要发声,发什么声),无需关心音频驱动和硬件底层的实现,能够以极低的开发成本为超市构建一套智能语音引导系统。