CATALOG

芯步的智能音柱开放了标准的HTTP接口,说白了就是给你一个网址,你往这个网址“发个请求”,告诉它要说什么,它当场就能用TTS(文字转语音)念出来。整个过程最快80-120毫秒就能响应,比你眨眼还快

下面我把准备工作代码实现的完整流程串起来说一下,代码示例拿Python和Java做演示,你可以直接复制去用。

一、准备工作:拿到两把“钥匙”

在写代码之前,需要先去芯步的后台拿两个关键凭证,就像你要发快递,得知道“收件地址”和“身份密码”一样。

  1. 注册并登录:去芯步官网注册账号。

  2. 找到凭证:进入控制台,找到【开发设置】。

  3. 拿到钥匙

    • AppID:这相当于你的“用户名”,通常是公开的一串字符。

    • AppSecret:这相当于你的“密码”,千万要保密,不要把它暴露在前端代码里

小提示:音柱通电后,会用语音提示“开始配置网络”,这时候用微信配网小程序把它连上你家的2.4G WiFi就行了

二、核心技术:它认识哪个是“你爹”?

调用接口时,为了防止别人乱发垃圾语音,接口需要带上一个签名(Sign)这个签名的生成规则如下,千万别直接硬编码

举个栗子假设你的AppSecretabc123,经过第一轮MD5加密变成了e99a18c...,然后拼接上当前的时间戳(比如1715678900),得到新字符串e99a18c...1715678900,再把这个字符串做一次MD5加密,最后的密文就是Sign

三、动手实战:一行代码让音柱“开口说话”

所有准备工作做完后,只需向指定URL发送一个POST请求即可。

  • 请求地址https://api.thingboot.com/{你的AppID}/device/control/?sign={计算好的签名}&ts={当前时间戳}

  • 请求体(Body){"device": "设备ID", "order": {"play:gbk:16": "要播报的内容"}}

1. Python 调用方式(最简洁)

假设你有一个服务器,当有新订单时想让办公室所有人听到。

2. Java 调用方式(适合集成到SpringBoot)

四、进阶玩法:让播报更像个真人

仅仅会说话还不够,要想用得好,还得控制音量、音色语速

芯步的接口支持在发送文本前,先发送控制命令,比如:

  • 调节音量(0-9级){"device":"820720", "order":{"volume":7}} (大声一点,听得更清楚)

  • 切换音色(男声/女声){"device":"820720", "order":{"voice":1}} (1通常是女声,听起来更亲切)

  • 数字读法:如果你直接发“12345”,它会读成“一万两千三百四十五”;如果想要读成“一二三四五”,可以加个标记

五、避坑指南

如果你在调试中发现音柱不响,请按以下顺序排查:

  1. 检查网络:音柱是否在配网状态?路由器是否打开了2.4G频段?大部分IoT设备都不支持5G WiFi

  2. 检查签名:签名错误是最常见的问题。请确认你的AppSecret大小写写对了,且ts级时间戳(10位数),不是毫秒级(13位数)。

  3. 检查设备IDdevice字段填的是设备的唯一编号(通常在设备背面标签上),不是产品型号。

  4. 编码问题:如果是生僻字或者特殊符号,请确保JSON编码格式统一。

总的来说,这套方案非常适合车间叫料餐厅取餐办公室闹钟提醒等场景。你只需要调用这一个HTTP接口,剩下的联网、播放、音量控制都由硬件自己解决了,比传统的音频线连接要方便不少