CATALOG

芯步40W音柱的HTTP接口非常简洁——核心就是一条POST命令。以下方案涵盖播放内置铃声、组合提示音、设置音量等常见场景,附带签名计算示例和调用模板。

解决方案:基于芯步开放接口接入40W云语音播报音柱

(实现内置铃声及自定义提示音播放)

1. 背景与接口概述

芯步 40W智能语音音柱(UNI-YY-YZ-40W) 是一款支持WiFi直连、无需网关的工业级播报设备。其核心优势在于开放HTTP接口,允许开发者通过任何支持HTTP协议的编程语言(Java, Python, PHP, Node.js, Shell等)直接下发指令

针对 “内置铃声播放” 的需求,该设备提供了专用的 ring 指令。相比播放完整MP3文件,调用内置铃声具有响应速度极快(毫秒级)无需上传音频文件不受网络波动影响的优点

2. 准备工作:获取关键凭证

在开始开发前,请确保完成以下准备:

  1. 设备配网:确保40W音柱已连接WiFi,且在芯步控制台中显示为“在线”状态。

  2. 获取参数

    • AppID:您的应用唯一标识。

    • AppSecret:接口调用的密钥。

    • Device ID:目标音柱的设备编号(通常是一串数字,如 820720)。以上信息可在“芯步开发者控制台”获取

3. 核心技术:签名计算与请求结构

所有接口调用均需通过签名(Sign)验证,签名生成逻辑如下:

  1. AppSecret 进行一次MD5加密,得到 encrypted_secret

  2. encrypted_secret 与当前Unix时间戳(秒,ts) 拼接。

  3. 对拼接后的字符串再进行一次MD5加密,得到最终的 sign

签名公式

sign = md5( md5(AppSecret) + ts )

请求地址结构POST http(s)://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}

通用请求体(JSON)

4. 具体实施方案:播放内置铃声与提示音

音柱内置了5种铃声(ring)、5种提示音(message)和5种警示音(alert),无需合成语音,直接下发数字1-5即可播放

4.1 第一种场景:仅播放内置铃声

适用场景:上班打卡、下课铃、紧急集合、工厂交接班。通过 {“ring”: “2”} 指令,指定播放第2种内置铃声(无需文本播报)。

请求示例

4.2 第二种场景:提示音 + 语音播报

适用场景:收款通知、欢迎光临。利用 play:gbk:16 指令,在播报文字前插入提示音。代码中 [message_2] 代表播放第2种提示音。

请求示例

4.3 第三种场景:组合播报(铃声 + 文字)

适用场景:消防预警、安防警报。可以在文本前加入 [ring_1] 标签,实现先响铃后播报。

请求示例

4.4 辅助功能:设备状态控制

为了达到最佳提醒效果,在播放铃声前调整音量(0-9级)和语速。

命令取值详情可参考设备手册

5. 开发集成示例(以Python与Curl为例)

以下是如何将上述JSON指令封装为HTTP请求的代码片段。

5.1 Curl命令(用于调试)
5.2 Python代码(后端集成)

6. 最佳实践和需要注意的点

  1. 关于“40W”型号的特别说明:芯步的40W音柱与10W/普通音柱在HTTP控制指令上是完全通用的(均支持 ring, message, play:gbk:16 等字段),接口逻辑一致,无需特殊适配

  2. 响应速度:由于设备直接走WiFi连接公网API,局域网下响应时间约为 80ms-120ms。如果需要极速响铃(如流水线不良品检测),需保证设备所在位置WiFi信号强度良好

  3. 私有化部署:如果项目运行在纯内网环境(无公网),该音柱支持私有化部署,只需将请求URL中的 api.thingboot.com 替换为您自建的私有服务器地址即可

  4. 并发与队列:如果短时间内频繁触发同一台设备,音柱会自动排队播放,不会产生冲突。如需清除队列,可发送停止指令 {“stop”: “1”}

通过以上步骤,您可以轻松完成40W云语音播报音柱的对接,利用其内置铃声资源库实现高效、稳定的声音提示。