芯步的智能硬件通过标准HTTP接口开放控制能力,播放内置提示音只需构造特定的order命令即可。以下是完整的对接方案。
一、 对接概述
智能20W壁挂语音音箱(型号通常为UNI-YY-YX-BG-PRO-20W)是芯步推出的一款支持WiFi联网的播报设备。其核心优势在于:
接口通用性:采用标准的HTTP协议,无论你的业务系统是用Java、Python、PHP、Go还是Node.js开发,甚至是不用写代码的SaaS/PaaS平台,只要支持发起HTTP请求,都能轻松对接。
无需网关:设备直连2.4G WiFi,通电即用,无需购买额外的网关硬件。
内置音源:设备内部预置了多种提示音、铃声和警示音,调用接口即可播放,无需预先上传MP3文件,响应速度极快。
二、 核心接口调用流程
播放内置提示音的核心是通过POST请求向设备下发特定的指令。整体架构如下:
sequenceDiagram
participant App as 业务系统/服务器
participant API as 芯步开放API
participant Device as 20W壁挂音箱
App->>App: 计算签名(sign=MD5(MD5(Secret)+ts))
App->>API: POST /device/control (包含Device ID和Order指令)
API-->>App: 返回指令接收状态
API->>Device: 推送语音指令(基于MQTT/长连接)
Device->>Device: 执行指令,播放内置提示音三、 详细对接步骤
1. 准备阶段:获取凭证与设备ID
首先需要在芯步官方平台完成注册与配置:
注册/登录:访问芯步官网,进入控制台。
获取凭证:在“开发设置”中,获取你的
AppID(应用ID)和AppSecret(应用密钥),这是调用接口的“账号密码”。设备配网:给音箱接上电源,使用手机App或“物联网控制台”中的配网工具,将音箱加入现场的2.4G WiFi网络。
获取Device ID:在控制台的设备列表中找到已配网的音箱,记录下唯一的
Device ID(设备编号)。
2. 技术:签名计算
为了防止接口被恶意调用,每次请求都需要携带动态签名。芯步使用的是双重MD5加密机制。签名字符串生成规则:sign = md5( md5(AppSecret) + ts )
ts:当前的Unix时间戳(秒级),例如
1715328000。拼接:注意这里是字符串拼接,不是数值相加。先将
AppSecret进行MD5加密得到32位小写字符串,然后在后面直接拼接上时间戳的字符串,最后对这个新的字符串再做一次MD5加密。
代码示例:以Python为例:
3. 发送指令:播放内置提示音
这是实现需求的核心环节。你需要向 https://api.thingboot.com/{AppID}/device/control/ 发送POST请求。
请求地址示例:POST https://api.thingboot.com/你的AppID/device/control/?sign=计算出的签名&ts=当前时间戳
请求体参数:
针对 “播放内置提示音” ,order 对象中的命令字段有如下几种(取决于你想触发哪种类型的提示)
| 音效类型 | 命令字段 | 参数值及说明 | 场景示例 |
|---|---|---|---|
| 提示音 | message | 取值范围 "1" ~ "5",对应5种不同的内置提示音效。 | 扫码成功、新订单提醒、短促警示。 |
| 铃声 | ring | 取值范围 "1" ~ "5",对应5种内置铃声。 | 上下班打卡、开始营业、整点报时。 |
| 警示音 | alert | 取值范围 "1" ~ "5",对应5种内置警示音。 | 紧急疏散、设备故障报警、安防触发。 |
方案A:仅播放提示音(不带动TTS语音)如果你只需要设备发出“叮咚”、“嘀嘀”这类效果音,而不需要念出文字,可以直接下发:
下发后,音箱会播放预设的提示音1。
方案B:播放提示音 + TTS语音播报该设备支持在提示音结束后立即播放自定义文字。格式为:"[message_1]你的播报内容"。
下发后,音箱会先播放提示音3(例如“叮咚”两声),然后紧接着用TTS语音念出“欢迎光临,请取餐”。
四、 联动场景与高阶配置
除了单纯的播放音效,你通常需要配合以下指令来优化体验:
1. 音量与音色控制
在播放提示音前,最好先设置一个合适的音量,避免声音过大或过小。
2. 停止播放
在某些紧急场景(如消防联动)需要立即静音时,可以使用停止命令:
3. 集成到业务逻辑(实战微服务示例)
假设你有一套订单系统,当有新的外卖订单分配时,系统调用该音箱提示。业务流程图:
graph TD
A[新订单入库] --> B{判断订单优先级}
B -- 普通单 --> C[调用API下发 TTS播报
'您有新的订单']
B -- 催单/急单 --> D[调用API下发
警示音message_5+ 播报]
C --> E[音箱响铃播报]
D --> EcURL 调用示例:
五、 常见问题与排查
sign不匹配错误 (401)原因:时间戳误差过大或加密算法拼接错误。
解决:请检查服务器的时间是否同步(误差不超过5分钟)。确保
step1是32位小写MD5字符串,且与ts是直接拼接,中间无任何连接符。
设备离线 (1002/Device Offline)
原因:音箱未连接WiFi或掉线。
解决:检查音箱通电状况,确认现场WiFi密码未变更。设备仅支持2.4G频段,不支持5G WiFi。
命令下发成功但无声
原因:音量设置为0或硬件静音。
解决:下发
{"volume":"7"}指令强制调整音量。部分旧版本固件可能不支持特定的字段编号,测试message、ring、alert哪个字段生效。
音效不符合预期
内置的5种音效是固定的,无法通过云端替换自定义MP3。如果需要专属的定制提示音(如品牌专属开机音乐),则需要联系芯步进行固件定制。
通过以上步骤,你可以快速地将芯步20W壁挂音箱的内置提示音功能集成到任何软件系统中,实现高效的本地语音播报提醒。