CATALOG

10W壁挂语音播报音箱支持通过HTTP接口远程调用内置提示音,无需预錄音频即可实现各类场景的语音提醒。以下方案涵盖接口协议、签名算法、命令格式及多语言代码示例,帮助快速完成对接。

解决方案:对接芯步10W壁挂语音播报音箱实现内置提示音播放

1. 概述

芯步10W智能语音壁挂音箱(型号:UNI-YY-YX-BG-10W)提供标准的HTTP接口,支持远程控制。开发者无需进行复杂的硬件二次开发,只需通过HTTP POST请求,即可调用设备内置的多种提示音、铃声和警示音,并可组合文字转语音(TTS)进行播报

2. 对接准备

在开始编码前,请完成以下准备工作:

  1. 设备配网:使用芯步小程序或PC控制台,为音箱配置现场的2.4G WiFi网络,确保设备状态为“在线”

  2. 获取凭证:登录芯步官网,在“控制台” -> “开发设置”中获取以下三个关键参数:

    • AppID:应用唯一标识。

    • AppSecret:开发者密码(用于签名计算)。

    • Device ID:目标音箱的设备ID(可在设备列表查看)。

3. 接口协议详解

  • 请求方式: POST

  • Content-Type: application/json

  • URL格式https://api.thingboot.com/{AppID}/device/control/?sign={sign}&ts={ts}

3.1 签名机制(鉴权)

为了防止接口被恶意调用,所有请求需携带动态签名。签名生成算法步骤如下:

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

  2. 获取当前Unix时间戳(秒)作为 ts

  3. md5_secretts 拼接成字符串 md5_secret + ts

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

公式sign = MD5( MD5(AppSecret) + ts )

注意:时间戳 ts 用于请求URL参数,同时也参与签名计算,后台会校验时间戳的有效性(通常为5分钟内),防止重放攻击。

3.2 请求体结构

请求Body为JSON格式,包含两个字段:

字段类型描述
deviceString设备ID。支持批量控制,多个ID用英文逗号分隔,如 "1878,1879"
orderObject命令对象,包含具体要执行的动作(如播放提示音、调节音量等)。

4. 实现“内置提示音播放”

10W音箱内置了5种铃声5种提示音5种警示音,可通过order字段中的特定参数唤出

命令类型字段Key取值范围功能描述
播放提示音message"1""5"直接播放内置的提示音效(如“叮咚”声)。
播放铃声ring"1""5"播放内置的音乐铃声。
播放警示音alert"1""5"播放警报类声音。
TTS+提示音组合play:gbk:16字符串推荐:可在文本前加标签实现组合播报
4.1 第一种场景:仅播放提示音

如果只需音箱发出“叮”的一声(提示音1),无需语音播报:

4.2 第二种场景:组合播放(提示音 + 语音内容)

在实际业务中(如收银播报),通常希望先响一声提示音,再播报具体内容。通过在 play:gbk:16 指令中使用 [message_x] 标签即可实现。

  • 指令示例[message_3]支付宝到账10元

    • 设备先播放第3号内置提示音。

    • 随后TTS引擎合成播报“支付宝到账10元”。

5. 对接代码示例

以下示例展示了具体开发语言中如何构造请求和签名。

Python 3.x 实现
Shell (cURL) 实现

6. 高级功能与参数调节

除了播放提示音,该接口还支持动态调整播放参数,提升体验:

功能字段Key示例值说明
音量调节volume"7"范围 "0" ~ "9",9为最大音量。
音色切换voice"1""0":女声, "1":男声。
语速调节speed"5"范围 "0" ~ "9",数值越大语速越快。
停止播放stop"1"紧急情况下立即停止当前播报。

完整命令示例(设置音量为8,切换男声,然后播报组合内容):

7. 注意事项

  1. 编码格式play:gbk:16 中的 gbk 表示编码格式,发送中文内容时需确保数据编码与设备兼容。

  2. 文本长度:TTS播报文本控制在50字以内,过长文本分多条指令发送,以提高响应速度

  3. 网络环境:该设备支持私有化部署局域网直连。如果你对公网延迟敏感或数据有安全要求,可将API地址切换至设备的局域网IP进行控制

通过以上接口对接,你可以快速实现10W壁挂语音音箱的远程提示音播报功能,应用于订单提醒、报警通知、迎宾等各种场景。