CATALOG

一、先说痛点:超市为啥需要这个?

大家去超市应该都有体验——收银台扫码“滴”一声,或者生鲜区打折广播,甚至仓库里的补货提醒。这些场景如果能自动语音播报,就不用专门安排人拿个大喇叭喊了。

芯步这款5W智能语音壁挂音箱,就是干这个活的。它支持WiFi联网,你只需要通过HTTP接口给它发一段文字,它就能实时“念”出来

下面我一步步说,怎么把它接到你的项目里。

二、准备工作:你得先有这些东西

在动手写代码之前,先把环境跑通:

  1. 拿到设备:确认你手里是“智能语音壁挂音箱|5W”这个型号。它一般是铝合金外壳,长150mm、宽100mm、高335mm左右,壁挂安装

  2. 给音箱配网:这步很关键。音箱本身没有屏幕,配网需要通过芯步的“小程序”或“物联网控制台”操作。

    • 打开芯步小程序,登录你的账号;

    • 添加你超市现场的2.4G WiFi名称和密码(注意:5G WiFi不支持);

    • 手机开热点模拟配网流程,让音箱连上你的WiFi

  3. 获取三件套:登录芯步控制台,记下这三个东西:

    • AppID(开发者ID)

    • AppSecret(开发者密码)

    • 设备ID(音箱的唯一编号,在设备详情页能看到)

  4. 打开调试模式(可选):如果只是想先测试,在“开发设置”里打开调试模式,这样不用算签名,省事。正式上线时再关掉,走签名校验

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

音箱的核心能力就是文本转语音。你给它发一段文字,它就读出来。

接口地址

请求体(JSON格式)

这里解释一下 "play:gbk:16" 这个命令格式

  • play 表示播报动作;

  • gbk 表示文字编码(中文用GBK);

  • 16 表示音量(范围一般是0-15,16可能表示最大或特殊值,具体看产品手册)。

实操例子:如果想让音箱喊“鲜肉区八折优惠,快来选购!”,就替换成:

关于签名(sign)

如果你关了调试模式,就得算签名。规则是:

其中 ts 是当前时间的秒级时间戳(10位数字)

用Python示意:

看着有点绕?其实就两步:先把AppSecret做一次MD5,然后拼上时间戳,整体再做一次MD5。

四、场景:举个超市的真实例子

假设你有这样一个需求:门口的人体传感器检测到有人进店,就让音箱播报“欢迎光临”

方案架构

伪代码实现

更进阶的玩法

  • 动态内容:从你的收银系统取数据,比如“支付宝到账15元”,让音箱实时播报;

  • 定时任务:每天早上8点播报“今日特价商品:鸡蛋3.99元一斤”;

  • 分组控制:如果你超市里装了多个音箱,可以建一个分组,一次性让所有音箱同时播报(用 /group/control 接口)

五、注意踩坑(过来人的经验)

  1. WiFi必须2.4G:这款音箱只支持2.4G WiFi,不支持5G。超市里如果AP开了双频合一,分开

  2. 设备ID别写错:调用接口时如果返回 502,十有八九是设备ID写错了,或者设备已经离线

  3. 播报内容不要太长:虽然接口没明确限制,但太长的文本播出来体验不好,一条控制在30字以内。

  4. 接口有频率限制:单个设备访问限制1次/秒,别在循环里狂发。超市第一种场景般也不需要那么高频。

  5. 200不代表设备真播了:接口返回 200 只表示平台收到了指令,设备不一定在线。如果需要确认设备是否真的执行了,要监听异步消息推送

六、总结一下整个流程

把你需要做的事情串起来:

  1. 配网:让音箱连上超市WiFi;

  2. 获取凭证:AppID、AppSecret、设备ID;

  3. 调接口:发 {"order": {"play:gbk:16": "你要说的话"}}

  4. 集成到业务:在收银、传感器事件、定时任务里触发播报。

芯步的接口是永久免费的,不管是走公网还是私有化部署,都不收额外费用。对于超市这种场景,简单实用,成本也低。

如果还有不清楚的,可以去芯步的控制台直接用“调试”功能测试一下指令,那个页面会实时显示你发送的命令格式,非常直观