本文档 API 接口为最新版本接口,后续相关功能的新增都会在此更新,推荐使用最新版本接口。旧版接口文档请参考历史版本。
在你的音视频应用中,当你需要从业务服务端,向指定 RTC 房间内指定的一个应用客户端发送消息时,你可以使用 SendRoomUnicast 这个 OpenAPI 实现这一功能。
你可以调用 SendRoomUnicast 接口,指定你所属的 AppId,通过服务端向指定 RoomId 的 RTC 房间内的指定 userId 的用户发送点对点消息。
注意:
- 消息可以是文本消息,也可以是二进制消息。
- 文本消息大小不能超过 64 KB,二进制消息大小不能超过 64 KB。
消息发送成功后,用户会通过以下回调收到该消息:
关于调用接口的请求结构、公共参数、签名算法和返回结构,参看调用方法。
请求频率:对于每个 AppId,调用 SendUnicast、SendRoomUnicast、SendBroadcast与BatchSendRoomUnicast的频率上限之和是 500 次每秒。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数名称 | 数据类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
Action | String | 是 | SendRoomUnicast | 接口名称。当前 API 的名称为 SendRoomUnicast。 |
Version | String | 是 | 2023-07-20 | 接口版本。当前 API 的版本为 2023-07-20。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
AppId | String | 是 | Your_AppId | 应用的唯一标志 |
RoomId | String | 是 | RoomId | 房间 ID,是房间的唯一标志 |
From | String | 是 | from_server_id | 业务服务端的唯一标识。 命名规则符合正则表达式: [a-zA-Z0-9_@\-\.]{1,128}。在一个 AppID 下,不能和真实用户用于实时消息通信的 user_ID 重复;建议使用固定的 ID 的发送消息。 |
To | String | 是 | to_user_id | 消息接收用户调用 login 接口登录时设置的 ID,可用于接收房间内消息 |
Binary | Boolean | 是 | false |
|
Message | String | 是 | hello | 点对点消息内容。如果是二进制消息,需进行 base64 编码 |
下表仅列出本接口特有的返回参数,公共返回参数请参见返回结构。
参数 | 类型 | 示例值 | 描述 |
|---|---|---|---|
Message | String | Success | 请求成功时返回消息 Success,表示服务端成功接收到消息,失败时返回具体错误信息。 |
POST https://rtc.volcengineapi.com?Action=SendRoomUnicast&Version=2023-07-20
{
"AppId": "Your_AppId",
"From": "from_user_id",
"To": "to_user_id",
"RoomId" : "to_RoomId",
"Message": "hello",
"Binary" : true
}
json{
"ResponseMetadata": {
"RequestId": "Your_RequestId",
"Action": "SendRoomUnicast",
"Version": "2023-07-20",
"Service": "rtc",
"Region": "cn-north-1"
},
"Result":{
"Message": "Success"
}
}
json您可访问公共错误码,获取更多错误码信息。