体验中心
体验中国电信星辰大模型效果
协议类型:WebSocket(WS)
| 环境 | 地址 |
|---|---|
| 公网 | wss://api-maas.teleai.com.cn/aipaas/voice/v1/rttsStreamTwoWay/bistreaming |
/aipaas/voice/v1/rttsStreamTwoWay/bistreamingWebSocketapplication/json服务接口调用时需要严格遵循服务鉴权规则,采用请求头携带鉴权信息,在建立 WebSocket 连接时通过 Header 传递:
Authorization: <鉴权信息>
| 请求头 | 必填 | 说明 |
|---|---|---|
Content-Type |
是 | 内容类型,固定 application/json |
X-APP-ID |
是 | 买家中心 → 已购能力 → 【X-APP-ID】 |
Device-Uuid |
否 | 设备uuid |
Authorization |
是 | 鉴权信息 |
Authorization: Bearer <用户申请的API-KEY>
| 请求头 | 必填 | 说明 |
|---|---|---|
Content-Type |
是 | 内容类型,固定 application/json |
Device-Uuid |
否 | 设备uuid |
Authorization |
是 | Bearer |
| 修订日期 | 算法版本号 | 修订内容 |
|---|---|---|
| 2025-12-09 | V1.0.0 | 算法首次上线 |
| 返回码 | 说明 | 错误信息 | 解决方法 |
|---|---|---|---|
101 |
成功 | {"message":"success"} |
成功,开始语音合成 |
4001 |
授权失败 | {"message":"check sign fail"} |
联系商务,更新授权 |
4002 |
并发请求过多 | {"message":"Too many requests."} |
联系商务,增加并发 |
客户端通过 WebSocket 连接发送 JSON 消息,请求报文为 Json Object:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
req_id |
string | 是 | 请求全局唯一 ID,记录该值便于排查问题 |
synth_status |
int | 是 | 合成状态:0 开始合成;1 发送文本流;2 结束文本流 |
text |
string | 是 | 待合成的文本,需要为 UTF-8 编码 |
format |
string | 否 | 音频编码格式,支持 PCM 格式,默认值:PCM |
sample_rate |
int | 否 | 音频采样率,支持 24000Hz、22050Hz、16000 Hz 和 8000 Hz,默认值:24000 |
voice |
string | 否 | 说话人,支持音色 huoponv、cixingnan、songchinan、surennan、cixingnan2、zhubonan、kefunan、zhuchinan、jilunan2、surennv、xianliaonv、mansunv、kefunv1、ruyanv、xinwennv、kefunv2、luolinv、huoponv2、qingtiannv、lucas、joyce、guangzhounv、shanghainv、xiannv、chengdunv、zhengzhounv、xiamennv、changshanv、dongbeinv,默认音色为 huoponv |
volume |
int | 否 | 音量,取值范围:[0, 100],默认值:50 |
speech_rate |
float | 否 | 语速,取值范围:[0.5, 2.0],默认值:1.0 |
enable_markdown_filter |
boolean | 否 | 是否开启 markdown 过滤,默认值为 false |
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
code |
int | 是 | 状态码,见服务码说明 |
message |
string | 是 | 状态说明,见服务码说明 |
sid |
string | 是 | 会话全局唯一 id,用于记录本次会话 |
result |
object | 是 | 合成结果数据 |
result| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
audio |
string | 是 | 合成音频数据,经过 base64 编码 |
audio_len |
int | 是 | 合成音频长度,单位:ms |
is_end |
boolean | 是 | 标志位:true 最后一个合成片段;false 中间合成片段 |
客户端发起请求,服务端确认请求有效。其中在请求消息中进行参数设置,输入参数如下表所示:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
req_id |
string | 是 | 请求全局唯一 ID,记录该值便于排查问题 |
synth_status |
int | 是 | 合成状态:0 开始合成;1 发送文本流;2 结束文本流 |
format |
string | 否 | 音频编码格式,支持 PCM,默认值:PCM |
sample_rate |
int | 否 | 音频采样率,支持 24000Hz、22050Hz、16000 Hz 和 8000 Hz,默认值:24000 |
voice |
string | 否 | 说话人音色,见 4.2.1 说明,默认音色为 huoponv |
volume |
int | 否 | 音量,取值范围:[0, 100],默认值:50 |
speech_rate |
float | 否 | 语速,取值范围:[0.5, 2.0],默认值:1.0 |
enable_markdown_filter |
boolean | 否 | 是否开启 markdown 过滤,默认值为 false |
输入参数组成的 JSON 字段示例:
{
"req_id": "3a87fe9793c9-4ebd-95d4-4ce2-a80c054b",
"synth_status": 0
}
客户端发起开始合成请求后,服务端建立会话,并进行参数解析,并返回对应的消息:
| 名称 | 类型 | 说明 |
|---|---|---|
code |
int | 状态码,见服务码说明 |
message |
string | 状态说明,见服务码说明 |
sid |
string | 会话全局唯一 id,用于记录本次会话 |
开始合成响应示例:
{
"code": 10000,
"message": "Success",
"sid": "4eHgiLCBhbGdvcml"
}
客户端接收到服务端发送的确认合成请求有效的响应后,开始发送文本流数据,请求 body 各参数含义如下:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
synth_status |
int | 是 | 合成状态:1 发送文本流 |
text |
string | 是 | 文本流,需要为 UTF-8 编码 |
发送文本流示例:
{
"synth_status": 1,
"text": "今天"
}
接收合成数据响应示例:
{
"code": 10000,
"message": "Success",
"result": {
"audio": "//6YYmNiDlSUXjZlDP8yADQAQ1E2ANKJOaTqFGUgIwDQAKAA==",
"audio_len": 2500,
"is_end": false
}
}
客户端文本流发送完成后,结束文本流,请求 body 各参数含义如下:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
synth_status |
int | 是 | 合成状态:2 结束文本流 |
text |
string | 是 | 文本流,需要为 UTF-8 编码 |
输出参数示例:
{
"synth_status": 2,
"text": "怎么了"
}
合成结束响应示例:
{
"code": 10000,
"message": "Success",
"result": {
"audio": "//6YYmNiDlSUXjZlDP8yADQAQ1E2ANKJOaTqFGUgIwDQAKAA==",
"audio_len": 2500,
"is_end": true
}
}
| 状态码 | 说明 | 描述 | 解决方法 |
|---|---|---|---|
10000 |
Success | 成功 | 执行下一步操作 |
10301 |
Parameter error | 参数错误 | 检查请求体是否符合接口协议 |
10304 |
Parse request body fail | 请求格式错误 | 查看请求的 URL body 格式是否正确,参考接口文档 |
10401 |
Session not found | 会话 id 查询失败 | 检查客户端发送的请求,通常是因为没有发送开始合成请求 |
10402 |
Session not begun | 尚未发送开始合成标志 | 检查是否发送开始合成标志 |
10403 |
Session is running | 重复发送开始合成标志 | 检查是否重复发送开始合成标志,若重复,请先发送结束合成标志 |
10503 |
Server connection time out | 服务连接超时 | 联系技术人员 |
10903 |
Synthesis failed | 合成失败 | 联系技术人员 |