CATALOG

芯步的智能硬件通过标准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

首先需要在芯步官方平台完成注册与配置:

  1. 注册/登录:访问芯步官网,进入控制台。

  2. 获取凭证:在“开发设置”中,获取你的 AppID(应用ID)和 AppSecret(应用密钥),这是调用接口的“账号密码”

  3. 设备配网:给音箱接上电源,使用手机App或“物联网控制台”中的配网工具,将音箱加入现场的2.4G WiFi网络。

  4. 获取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 --> E

cURL 调用示例:

五、 常见问题与排查

  1. sign 不匹配错误 (401)

    • 原因:时间戳误差过大或加密算法拼接错误。

    • 解决:请检查服务器的时间是否同步(误差不超过5分钟)。确保step132位小写MD5字符串,且与ts直接拼接,中间无任何连接符。

  2. 设备离线 (1002/Device Offline)

    • 原因:音箱未连接WiFi或掉线。

    • 解决:检查音箱通电状况,确认现场WiFi密码未变更。设备仅支持2.4G频段,不支持5G WiFi

  3. 命令下发成功但无声

    • 原因:音量设置为0或硬件静音。

    • 解决:下发{"volume":"7"}指令强制调整音量。部分旧版本固件可能不支持特定的字段编号,测试messageringalert哪个字段生效。

  4. 音效不符合预期

    • 内置的5种音效是固定的,无法通过云端替换自定义MP3。如果需要专属的定制提示音(如品牌专属开机音乐),则需要联系芯步进行固件定制。

通过以上步骤,你可以快速地将芯步20W壁挂音箱的内置提示音功能集成到任何软件系统中,实现高效的本地语音播报提醒。