CATALOG

芯步的音柱设备有个很实用的特点——直接推送文本就能播报,不需要提前录语音。下面我从设备选型、接口对接方式到代码实现,把整个流程串起来讲一遍。

一、场景痛点与需求分析

在很多线下服务场景中(比如餐饮取餐、理发店叫号、洗车行完工提醒),我们都会遇到这样一个问题:服务员需要满场跑着去喊人。这既吵杂又没有效率,还显得店面很乱。

这时候就需要一个能远程控制的语音提醒设备。芯步的60W语音提醒通知音柱正好解决这个问题。这家伙音量够大(60W覆盖几百平没问题),而且可以直接通过网络接收指令播报。

那么问题来了:怎么把这玩意儿对接到我们现有的项目(比如收银系统、排队系统、或者SaaS后台)里?

核心答案就是两个字:接口。芯步的开放平台提供了标准的API,说白了就是让你能在代码里“遥控”这个音柱。

二、解决方案设计思路

我们要做的事情其实就三步,非常简单:

  1. 准备好“遥控器”和“钥匙”:在芯步后台拿到账号凭证(AppID, AppSecret)。

  2. 找到“目标”:给音柱插电联网,拿到它的设备ID。

  3. 按下“说话键”:写几行代码,调用HTTP接口,告诉音柱“把这段文字念出来”。

整个架构大概是这样的:你的业务系统 (比如Java后端) -> 调用HTTP/MQTT接口 -> 芯步云平台 -> 4G/WiFi网络推送 -> 60W音柱喇叭响起

不需要复杂的中间件,也不需要买额外的服务器,直接走公网API就行

三、对接准备:拿到三要素

在写代码之前,先得去芯步的开放平台()做好准备工作:

  1. 注册并创建应用:登录控制台,拿到你的 AppIDAppSecret。这俩相当于你的账号密码,AppSecret 要保管好,别人拿了就能控制你的设备了

  2. 设备上电联网:把60W音柱插上电,插上网线或者配好WiFi/4G。设备通电后会自动连上平台。

  3. 获取设备ID (Device):在控制台的设备列表里,找到这台音柱,上面有一串数字,那就是 Device ID。这个ID非常重要,你下指令给谁,就得填谁的ID

四、核心对接步骤:如何让它“开口说话”

这是最关键的一步。芯步的音柱有个特别好的功能:不需要上传MP3文件,你直接给它一段文字,它就能用AI语音读出来

1. 接口地址

我们要调用的是设备控制接口:https://api.thingboot.com/{AppID}/device/control/

2. 签名计算 (Sign)

为了防止接口被别人乱刷,调用的时候要加签名。规则稍微有点绕,但按照公式来就行:sign = md5( md5(AppSecret) + ts )

大白话步骤:

  • 先把你的 AppSecret 做一次MD5加密。

  • 获取当前的时间戳(秒级,10位)。

  • 把上面算出来的MD5值和时间戳拼在一起(直接拼接字符串),再做一次MD5

3. 下发播报指令

这是最激动人心的部分。直接看 order 参数怎么传:

基础语音播报(最重要)参数格式:{“play:gbk:16”:“你要说的话”}

例如,想让音柱喊“张三请到3号窗口取餐”,Java代码里构建的JSON就是:

注意:play:gbk:16 是固定的指令头,表示文本编码格式,后面跟内容就行

调节音量(太吵了调低点)很多场景白天需要大声,晚上需要小声。{“volume”:“5”} -> 取值范围0-9,数值越大越响

切换男女声{“voice”:“0”} -> 0是女声,1是男声

组合指令如果你想同时调音量和播报,就把指令合在一起:{“volume”:“7”,“play:gbk:16”:“欢迎光临”}

五、实战代码片段 (Java 示例)

如果你是用 Java 开发,对接代码大概长这样。这里用 Unirest 库或者 HttpClient 都行: