CATALOG

芯步30W壁挂播报器通过HTTP接口实现文本推送播报,核心流程非常简单:向指定API发送一条包含设备ID和播报内容的JSON即可。以下方案涵盖接口签名计算、命令格式、多设备管理等关键环节。

解决方案:基于HTTP接口集成芯步30W壁挂远程语音播报器

1. 概述

芯步的30W智能语音壁挂音箱(包括标准版、Pro版及有线网版)支持通过HTTP API进行远程控制。该方案允许开发者通过向其发送HTTP POST请求,将文本内容实时推送到音箱进行TTS(文字转语音)播报

2. 前置准备

在开始集成前,需要准备以下三个关键信息(在芯步控制台获取):

  • AppID: 应用唯一标识。

  • AppSecret: 应用密钥,用于计算签名。

  • Device ID: 目标播报器的设备ID(可在控制台设备列表或设备外壳标签上找到)

3. 接口鉴权与请求地址

为了保证安全性,所有API请求需携带动态签名。

  • 请求地址https://api.thingboot.com/{AppID}/device/control/

  • 必需Query参数

    • ts: 当前Unix时间戳(秒),例如:1714528000

    • sign: 请求签名。

  • 签名算法sign = md5( md5(AppSecret) + ts )计算步骤

    1. 将AppSecret进行MD5哈希,得到32位小写字符串 md5_secret

    2. md5_secret 与时间戳 ts 进行字符串拼接。

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

4. 核心播报命令详解

该设备的核心功能是播报文本,通过向指定设备发送 play:gbk:16 命令实现,支持中文、英文及数字的自然朗读

  • 请求方式: POST

  • HeaderContent-Type: application/json

  • Body参数结构

参数类型描述示例
devicestring目标设备ID"826540"
orderobject指令集合{"play:gbk:16": "文本内容"}
  • 文本播报Body示例

  • 高级播报命令除了纯文本,还可以在JSON中增加参数来控制语速、音量和音色,无需额外请求,在同一次调用中下发即可。具体参数如下

命令字段取值范围说明
volume0-9音量大小(数值越大越响)
speed0-9语速(数值越快语速越快)
tone0-9语调(调节声音的抑扬顿挫)
voice0 或 1音色(0:女声,1:男声)
  • 带参数的完整播报示例

(此命令让音箱用男声、中等语速、70%音量播报内容)

5. 代码实现示例 (Python)

以下是一个简单的Python函数,演示如何集成上述逻辑来发送播报

6. 多设备与分组播报

  1. 同时控制多个设备如果需要对多个30W音箱同时播报,在 device 参数中使用英文逗号 , 连接多个ID即可。一次最多支持100个设备

  2. 分组播报利用分组ID进行控制。首先需要在平台将设备加入一个分组(Group),然后调用分组控制接口,该接口的请求地址为: https://api.thingboot.com/{AppID}/group/control/

7. 常见问题和需要注意的点

  • 文本长度限制: 单条播报命令的文本内容不超过200个字符。若文本过长,拆分后连续发送

  • 播报队列机制: 如果设备正在播报,此时接收到新的文本,新任务不会打断当前播报,而是会自动进入队列排队(先进先出,FIFO),确保消息不丢失

  • 响应延迟: 从调用接口到设备发出声音,通常在 80ms - 300ms 之间,属于毫秒级响应

  • 网络环境: 该设备支持WiFi 2.4G有线网络(视型号而定),无需网关,接上网络即可使用

通过以上步骤,你可以快速将芯步的30W壁挂语音播报器集成到任何支持HTTP协议的业务系统(如订单系统、安防警报或生产看板)中。