开发工具/API 参考/智能音视频/RTC 语音/创建房间
创建房间
更新于: 2026-06-25 19:29:14
创建房间,并将智能体加入房间。
注意
扣子智能语音功能通过 RTC 技术实现用户和智能体的实时语音通话。在 RTC 领域中,房间是一个虚拟的概念,类似逻辑上的分组,同一个房间内的用户才能互相接收和交换音视频数据、实现音视频通话。
此 API 用于创建一个房间,并将智能体加入房间,然后才能调用 RTC SDK 和智能体开始语音通话。
|
请求方式 |
POST |
|---|---|
|
请求地址 |
|
|
权限 |
|
|
接口说明 |
创建房间,并将智能体加入房间。 |
|
参数 |
取值 |
说明 |
|---|---|---|
|
Authorization |
Bearer $Access_Token |
用于验证客户端身份的访问令牌。你可以在扣子编程中生成访问令牌,详细信息,参考准备工作。 |
|
Content-Type |
application/json |
解释请求正文的方式。 |
|
参数 |
类型 |
是否必选 |
示例 |
说明 |
|---|---|---|---|---|
|
bot_id |
String |
必选 |
73428668***** |
智能体 ID。 |
|
conversation_id |
String |
可选 |
734829333445931**** |
会话 ID。后续调用发起对话 API 产生的消息记录都会保存在此对话中。 |
|
voice_id |
String |
可选 |
734829333445931**** |
智能体使用的音色 ID,默认为 |
|
config |
Object of RoomConfig |
可选 |
- |
房间内的音视频参数配置。 |
|
uid |
String |
可选 |
uid_123 |
标识当前与智能体对话的用户,由使用方自行定义、生成与维护。uid 用于标识对话中的不同用户,不同的 uid,其对话的数据库等对话记忆数据互相隔离。如果不需要用户数据隔离,可以不传此参数。 |
|
参数 |
类型 |
是否必选 |
示例 |
说明 |
|---|---|---|---|---|
|
room_mode |
String |
可选 |
default |
房间模式,默认值为
|
|
audio_config |
Object of AudioConfig |
可选 |
\ |
房间音频配置。 |
|
video_config |
Object of VideoConfig |
可选 |
\ |
房间视频配置。 |
|
turn_detection |
Object of TurnDetectionConfig |
可选 |
{“type”:“server_vad”} |
语音检测配置,用于控制语音交互的检测方式。 |
|
prologue_content |
String |
可选 |
\ |
自定义开场白。 |
|
prologue_delay_duration_ms |
Integer |
可选 |
100 |
在进房后等待多长时间播放开场白,单位:ms。 |
|
参数 |
类型 |
是否必选 |
示例 |
说明 |
|---|---|---|---|---|
|
codec |
String |
可选 |
OPUS |
房间音频编码格式,支持设置为:
|
|
参数 |
类型 |
是否必选 |
示例 |
说明 |
|---|---|---|---|---|
|
codec |
String |
可选 |
H264 |
房间视频编码格式,支持设置为:
|
|
video_frame_rate |
Integer |
可选 |
15 |
每秒抽帧数,在视频通话过程中,摄像头/屏幕共享捕捉画面的频率。捕捉到的画面会作为视觉模型的输入。 |
|
stream_video_type |
String |
可选 |
main |
房间视频流类型, 支持 main 和 screen。
|
|
video_frame_expire_duration |
Integer |
可选 |
5 |
用户开始说话前,抽取多少秒画面。主要是兼容连贯动作的场景。用于帮模型理解用户没开始说话前在做什么。 |
|
参数 |
类型 |
是否必选 |
示例 |
说明 |
|---|---|---|---|---|
|
type |
String |
可选 |
server_vad |
语音检测类型,用于控制语音交互的检测方式,默认值为
|
|
参数 |
类型 |
示例 |
说明 |
|---|---|---|---|
|
code |
Long |
0 |
状态码。 |
|
data |
Object of CreateRoomData |
- |
接口返回的业务数据。 |
|
msg |
String |
“” |
状态信息。API 调用失败时可通过此字段查看详细错误信息。 |
|
detail |
Object of ResponseDetail |
{ “logid”: “202410291302044CD1CC3B4AE0897***” } |
本次请求的详细信息。 |
|
参数 |
类型 |
示例 |
说明 |
|---|---|---|---|
|
uid |
String |
uid_123 |
进入房间的用户 ID,和入参中 uid 一致。 |
|
token |
String |
token123 |
房间密钥,用户加入房间和智能体对话时需要通过 token 进行身份认证和鉴权。 |
|
app_id |
String |
app_id |
RTC 应用 ID。 |
|
room_id |
String |
room_id_123 |
已创建的 RTC 房间的房间 ID。 |
|
参数 |
类型 |
示例 |
说明 |
|---|---|---|---|
|
logid |
String |
20241210152726467C48D89D6DB2**** |
本次请求的日志 ID。如果遇到异常报错场景,且反复重试仍然报错,可以根据此 logid 及错误码联系扣子团队获取帮助。详细说明可参考获取帮助和技术支持。 |
curl --location --request POST 'https://api.coze.cn/v1/audio/rooms' \
--header 'Authorization: Bearer pat_OYDacMzM3WyOWV3Dtj2bHRMymzxP****' \
--header 'Content-Type: application/json' \
--data-raw '{
"bot_id": "734829333445931****"
}'
{
"detail": {
"logid": "202410291302044CD1CC3B4AE0897***"
},
"data": {
"room_id": "room_id_743105798342***", // 房间 id
"app_id": "6705332c79516e01****", // app_id
"token": "0016705*****NzkxMxcANTE1MjkFAAAAAAAAAAEAAAAAACAA58QEAvxd****/VB4b1xEFA=",
"uid": "uid_74310579834270***"
},
"code": 0,
"msg": ""
}
如果成功调用扣子编程的 API,返回信息中 code 字段为 0。如果状态码为其他值,则表示接口调用失败。此时 msg 字段中包含详细错误信息,你可以参考错误码文档查看对应的解决方法。