CATALOG

芯步30W壁挂音箱的开放接口采用标准HTTP协议,通过简单的文本推送即可实现自定义语音播报,无需预先录音。以下是完整的对接方案。

一、对接原理简述

芯步30W壁挂音箱内置了TTS(文本转语音)芯片,开发者不需要进行复杂的音频编解码或文件上传。其核心对接逻辑如下:

  • 通信协议:标准的 HTTP/HTTPS POST 请求。

  • 接口地址http(s)://api.thingboot.com/{AppId}/device/control/

  • 核心动作:向指定的设备ID(Device ID)发送包含播报文本的 JSON 命令。

  • 认证方式:采用“设备ID + 签名”机制,确保 API 调用的安全性

整个流程就像是一个简单的“文本投递”:您的业务系统将需要说的文字打包成请求,发送给物联网平台,平台随即转发给音箱,音箱瞬间发声。

二、准备工作:获取关键凭证

在开始编码前,您需要准备以下三个关键信息。这些信息通常在购买设备后,登录芯步官方物联网控制台获取:

  1. AppId(应用ID):标识您的开发者账号或应用。

  2. AppSecret(开发者密码):用于生成签名,请妥善保管,切勿泄露在前端代码中。

  3. 设备ID(Device):您想要控制的那个30W音箱的唯一编号。如果您购买了多个音箱,每个音箱都有一个独立的ID

三、核心技术:签名计算规则

为了防止接口被恶意调用,所有请求都需要携带签名(sign)。签名算法虽然涉及两次MD5,但逻辑非常简单:

  1. 第一步:将您的 AppSecret 进行 MD5 加密,得到 SignKey。公式:SignKey = md5(AppSecret)

  2. 第二步:获取当前的 Unix 时间戳(秒数),记为 ts

  3. 第三步:将 SignKeyts 拼接(注意顺序,SignKey在前,ts在后),然后再次进行 MD5 加密,得到最终的 sign。公式:sign = md5(SignKey + ts)

注:时间戳 ts 用于防止请求被重放攻击,服务器会校验该时间戳的有效性(通常在几分钟内)。

四、核心接口:下达播报指令

这是对接中最关键的一步——让音箱“开口说话”。

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

请求方式POST

请求头 (Headers)Content-Type: application/json

请求体 (Body)

关键参数详解

  • device:填入你在第二步准备的设备ID。

  • order:这是一个JSON对象,里面包含具体指令。

  • play:gbk:16:这是播报指令的固定格式。

    • play:代表执行播报动作;

    • gbk:代表文本编码格式(中文标准编码);

    • 16:代表最大文本长度(通常写16足够覆盖短句,若文本很长可适当调整,但一般分句播报或使用默认值)。

    • :就是你想让音箱说的内容,如“加工中心警报,温度过高”

五、进阶功能:语音调节与高级命令

除了单纯的“说话”,该接口还支持通过修改 order 对象来实现丰富的控制功能。你可以将这些命令组合使用,或者在播报前先发送设置命令。

1. 音量控制

2. 音色切换

3. 带提示音的复合播报有时候在播报重要内容前,添加一个“叮咚”声能起到提醒作用。

4. 紧急停止如果发生误报或需要紧急静音:

六、实战代码示例(Node.js / JavaScript)

为了方便你集成,这里提供一个基于 Node.js 的完整代码片段,展示了如何在业务系统中触发语音播报。

注:上述代码逻辑同样适用于 Python、Java、PHP 等其他语言,只需将 MD5 计算和 HTTP POST 部分按语法转换即可

七、常见问题与调试

  1. 报错“签名错误”

    • 检查时间戳 ts 是否为秒级(10位数字),而不是毫秒级(13位)。

    • 检查 md5 的结果是否为 32位小写 十六进制字符串。

    • 核对拼接顺序:md5( md5(AppSecret) + ts )

  2. 音箱没反应

    • 确认设备ID是否正确且与AppId在同一账号下。

    • 确认音箱电源已接通,且WiFi指示灯状态正常(已联网)。音箱不支持移动蜂窝网络,必须连接2.4G WiFi

    • 首次使用先尝试 {"volume": "9"} 调高音量,避免因音量过低听不见。

  3. 中文乱码或只读数字

    • 确保 order 中的 key 是 play:gbk:16,这能确保中文被正确解析。

    • 对于纯数字字符串,如果要读作手机号(例如 138xxxx),在文本中按正常断句编写,TTS芯片会自动识别大部分数字读法

通过以上步骤,你可以在30分钟内完成从零到一的对接,将离线场景的语音播报能力无缝集成到你的ERP、报警系统或自定义看板系统中。