CATALOG

30W壁挂TTS播放器支持通过HTTP接口远程调节音色、音调等参数,无需在设备端操作。下面我把整个接入流程串起来说清楚。

一、准备工作

在开始之前,先确保手里有这么几样东西:

  1. 一台30W智能语音壁挂音箱:就是咱们要操作的主角,记得给它插上网线或者连上WiFi(它支持2.4G WiFi和有线上网两种方式)

  2. 设备ID:这个在音箱机身标签上能找到,或者在芯步的后台控制台里也能看到,一般是一串数字。

  3. 芯步开发者账号:去他们官网注册一个,然后登录控制台。在“开发设置”里能找到两个关键的字符串——AppIDAppSecret(也叫开发者密码),这俩相当于你调用接口的“用户名”和“密码”,千万别泄露给别人

二、核心思路

说白了,就是你的服务器或者电脑,通过网络给芯步的云端发一条HTTP请求,云端再把指令转发给你的那台音箱。

整个过程不需要你录音,直接告诉音箱要说什么话、用什么声音说就行

三、关键步骤:搞定签名(Sign)

调接口之前有个绕不过去的坎儿,就是计算签名(Sign) 。这是为了保证安全,防止别人乱发指令。芯步用的是MD5嵌套的方式

算法是这样婶儿的:

Sign = md5( md5(AppSecret) + ts )

看着有点懵?拆开看就明白了:

  • 第一步:把你拿到的AppSecret做一次MD5加密,得到一串32位的字符串。

  • 第二步:把上面得到的字符串和当前的时间戳ts(单位是秒)拼在一起。

  • 第三步:把拼出来的新字符串再做一次MD5,最终结果就是Sign

举个例子,假设:

  • AppSecret = abc123(实际比这长多了)

  • ts = 1747212640(当前时间戳)

那你就得先算出md5(“abc123”),得到xxx,再算md5(“xxx” + “1747212640”)

友情提示:ts(时间戳)参数既要在URL里传,也要参与签名计算,而且前后端时间差不能太大,不然会报签名错误

四、直接上手:设置音色和音调

好,现在咱们知道怎么敲门(算签名)了,接下来进入主题——怎么改变声音。

芯步的这套接口挺统一的,不管是控制啥功能,请求地址都是这一个:

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

请求方式要写成 POST,数据格式用 JSON。重点是order这个参数里面写具体命令。

下面我把几个常用功能直接贴代码(伪代码/JS风格),大家一看就懂:

1. 切换男声/女声

比如觉得整天听女声听腻了,想换个低沉的大叔音:

  • voice : “0”代表女声,“1”代表男声

2. 调节音调(语调)

想让声音变得活泼一点(调高)或者沉稳一点(调低):

  • tone:范围是0到9,数字越大声调越高(或者说语气起伏越大),5是中间值

3. 调节音量

太吵了或者听不清:

  • volume:也是0到9,0是静音,9是最大声

4. 调节语速

用来配合不同场景,比如播报紧急通知时稍微快一点:

  • speed:依然是0到9,数字越快

5. 一次性设置全套

你可以把它们写在一起,一条指令全搞定:

五、实际发送请求示例(JavaScript)

如果你是在网页里或者Node.js环境里调,代码大概长这样(记得先把sign算好)

六、进阶:组合播放(提示音+内容)

有时候光说话不够,前面加个“叮咚”提示音会更好。这时候可以这样写

  • [message_1][message_5]是内置的不同提示音。

  • 同理,[ring_x]是铃声,[alert_x]是警报声。

七、常见踩坑点

  1. 签名错误:这是最常遇到的。打印出签名计算过程,核对时间戳是不是参与计算了,以及是不是做了两层MD5。

  2. 设备不在线:接口返回成功(Code 200)只代表云端收到指令了,不代表音箱收到了。如果音箱没动静,先去控制台看看设备是不是亮着绿灯(在线状态)

  3. JSON格式:仔细检查引号,order里如果只要调音量,就别多写逗号。

  4. 中文乱码:一般不会,接口默认支持UTF-8,直接发中文就行。

总结

接这个玩意儿真不难,核心就三步:

  1. 拿着秘钥算签名

  2. 对着文档写JSON(想要男声写voice:1,想要音调变写tone:6);

  3. HTTP POST 发过去

搞定这三步,你就能在后台任意远程操控这个30W大喇叭的音色和语调了。不管是做商场促销播报,还是车间里换个性语音提醒,都能轻松实现。