CATALOG

芯步智能壁挂音箱的HTTP接口采用双层MD5签名机制,请求结构清晰。以下方案涵盖从参数准备、签名计算到播报命令发送的完整对接流程,可帮助你快速实现文本推送。

解决方案:基于HTTP接口对接芯步智能语音壁挂音箱实现文本推送

1. 准备工作与环境确认

在开始对接前,需要确保以下条件已满足,并准备好必要的凭证。

  • 设备型号:确认设备为 智能语音壁挂音箱-15W (UNI-YY-YX-BG-15W)

  • 网络环境:设备支持 WiFi 2.4G 频段。需将设备配置联网(通常通过配网模式或App设置),确保设备与服务器处于同一局域网(局域网推送)或均有公网访问权限

  • 获取凭证

    • 登录芯步开放平台后台

    • 在“开发设置”中获取 AppID(应用ID) 和 AppSecret(开发者密码)。

    • 在“设备列表”中获取目标音箱的 Device ID(设备ID)

2. 接口鉴权机制(签名计算)

音箱的HTTP接口采用动态签名防止伪造请求。所有请求必须携带 sign(签名) 和 ts(时间戳) 参数。签名的生成逻辑如下,这是对接中最关键的一步:

签名算法(伪代码逻辑):

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

  2. str1 拼接上当前时间戳 ts(秒级,如 1700000000),得到 str2

  3. str2 再次进行一次 MD5 加密,得到最终的 sign

公式表示为:sign=MD5MD5AppSecret+tssign = MD5( MD5(AppSecret) + ts)

请注意:时间戳 ts 必须与计算签名时使用的 ts 数值完全一致,且通常服务器会允许该时间戳在一定误差范围内(如300秒),需确保设备系统时间准确

3. 核心命令结构与推送流程

该音箱采用 HTTP POST 请求方式进行控制,数据格式为 JSON

  • 请求地址(URL)https://api.thingboot.com/{AppId}/device/control/?sign={sign}&ts={ts}(注:如果是私有化部署或局域网环境,请将域名替换为对应的服务器IP)

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

  • 请求体(Body)参数

4. 实操对接案例(代码示例)

以下提供两种最常用的对接方式示例,你可以根据现有的系统环境选择。

案例 1:使用 Python 语言对接

绝大多数后端服务(如Web框架、爬虫、自动化脚本)均支持Python。该示例展示了如何封装签名并推送“订单通知”

案例 2:通用 Curl 命令测试

你可以直接在命令行(Linux/Mac/Windows WSL)中使用 Curl 进行快速测试,验证接口连通性

5. 高级功能与参数调节

除了简单的文本播报,order 字段支持更多的 JSON 参数,以便动态调整播放行为

“order” 的 JSON 对象中,可以同时包含多个控制指令:

功能类别指令Key取值范围/说明应用场景示例
音量调节“volume”0-9 (0静音,9最大)“volume”:7
音色选择“voice”“man” / “woman”“voice”: “woman”
语速调节“speed”0-9 (正常为5)“speed”: 6
播放提示音“ring”1-5 (内置铃声)“ring”: 1
数字读法“num”“money”(金额) / “tel”(电话)用于优化播报体验

组合命令示例如果你希望音箱音量调到8,用女声播报“到账金额一百元”,且数字按金额模式读出,JSON 结构如下:

6. 注意事项与常见问题

  • 汉字编码:在 “play:gbk:16” 中,gbk 通常代表编码格式。绝大多数情况下直接传入标准字符串即可,但如果遇到乱码,请检查你的程序源码文件编码是否保存为 UTF-8 无 BOM 格式

  • 设备ID格式device 字段支持批量推送,如需多个音箱同时播报,可用英文逗号分隔 ID,例如 “820720,820721”

  • 响应速度:设备在线时,从 HTTP 请求发出到音箱发出声音,通常在 80ms-120ms 左右,几乎无延迟感

  • 网络稳定性:设备内置了5组WiFi设定,会自动重连最强信号,但在部署时请确保 WiFi 信号强度良好,避免断网导致推送失败

通过以上步骤,你可以快速将芯步的智能音箱集成到现有的任意系统中(如收银系统、监控警报系统或OA办公系统)。