CATALOG

芯步这款20W壁挂音箱支持通过HTTP接口直接调节音色、音调、语速等参数,不用上传录音,调用起来挺方便的。下面我按“准备工作 → 核心参数说明 → 实际调用示例 → 调优”这个思路来写,尽量口语化一点。

一、 搞清楚你的“目标”

在开始写代码之前,咱们先明确一下我们要控制什么。芯步这款 20W 壁挂语音播报音箱,其实核心就是一个能联网的“嘴”。你想让它怎么说话,就得给它发指令。

我们要设置的“音色音调”,在芯步的接口文档里主要对应三个核心参数:

  1. 音色(Voice):主要是切换 男声女声。不同的场景用不同的声音效果差别很大(比如车间用洪亮男声,商场用甜美女生)。

  2. 语调(Tone):可以理解为声音的“情感起伏”或者“沉闷/轻快”。数值范围一般是 0-9,默认是5(中性)。调高一点声音会变尖锐、活泼;调低会变得低沉、严肃。

  3. 语速(Speed):说话快慢。同样是 0-9 的范围,默认是5。

另外,音量(Volume) 也是体验中很重要的一环,顺带一起设置掉最好。

二、 动手前的准备(拿到“遥控器”)

芯步的接口设计得非常简单,就是标准的 HTTP 请求。你需要先找齐以下三样东西,登录芯步的后台就能看到

  1. AppID:相当于你项目的账号。

  2. AppSecret:相当于你项目的密码,千万别泄露给外人

  3. Device ID:也就是你买的那台20W音箱的序列号。去后台的设备列表里就能找到。

三、 核心接口调用:让音箱“变声”

我们要用的接口地址是(请替换 {} 里的内容):https://api.thingboot.com/{你的AppID}/device/control/

重点说一下签名:为了防止接口被别人乱刷,每次发指令都得带上一个动态签名。算法是 md5( md5(AppSecret) + 当前时间戳 )虽然听起来有点绕,但代码里就两三行的事。

第一种场景:只设置音色和音调(不播报)

有时候我们需要先调整音箱的默认状态。比如每天早上开机后,先把声音设置成“男声、语速适中、语调沉稳”。

下发的 Order 指令如下(JSON格式):

第二种场景:设置音色的同时立刻播报(最常用)

在实际业务中,通常是让音箱用特定音色直接说话。比如来个订单:“你好,您有一笔新的外卖订单”。

这时候把设置参数和播报内容放在一起发就行了。其中 play:gbk:16 是标准的文本播报指令

下发的 Order 指令如下:

四、 手把手代码示例(以 PHP/Shell 为例)

为了让不太懂技术的朋友也能看懂,我这里写一个简单的流程逻辑。

签名生成逻辑(核心步骤)

  1. 拿到你的 AppSecret(比如 abc123)。

  2. 进行一次 MD5:md5("abc123") -> 得到 e99a18c428cb38d5f22...

  3. 拼接当前时间戳(比如 1734567890):得到 e99a18c42...1734567890

  4. 再进行一次 MD5:得到最终签名。

方案 A:如果你会用命令行(Linux Shell)

对于运维人员来说,用 curl 测试最直接。你可以参考下面的逻辑去写脚本,核心就是把刚才的签名算法和 JSON 参数拼接到 curl 命令里

方案 B:集成到你的系统里(例如 PHP 思维)

不管你是用什么语言(Java, Python, Go),逻辑都是一样的:

  1. 准备好 AppID,设备ID。

  2. 算出当前的签名 Sign 和时间戳 Ts。

  3. 构建 POST 请求,Body 里带上我们上面写的那段 JSON(包含 device 和 order)。

  4. 发送到 api.thingboot.com

五、 效果调优的几个小

实际使用中,要配合现场环境去微调,才能达到最佳效果:

  1. 关于提示音:芯步的设备内置了5种提示音([message_1][message_5])。在播报文字前加一个提示音,比如 [message_2]欢迎光临,这样员工不会被突然冒出来的人声吓一跳

  2. 语调与场景匹配

    • 安防/警报类:用 男声 + 语调低(2-3) + 语速快(7-8),营造紧迫感。

    • 服务/叫号类:用 女声 + 语调中高(6-7) + 语速中(5),听起来亲切。

  3. 网络要求:这种20W的壁挂音箱用的是 WiFi 2.4G,不需要网关 。记得安装点位要能搜到你家的 Wi-Fi 信号,否则指令延迟会很高。

  4. 多设备同步:如果你有好几台音箱,device 参数支持传多个 ID,用逗号隔开就行,一条指令能让所有音箱一起响

总结

接入芯步这个20W音箱去调音色音调,本质上就是 发一个 HTTP 请求。你不用去关心底层的音频解码,只需要记住 voice(音色)、tone(语调)、speed(语速) 这三个参数名,把数值填对就行。

如果你在调试签名(Sign)的时候遇到签名错误,先检查一下服务器的时间是不是标准的北京时间,时间戳差太多会导致签名失效。