跳转到正文

接收 TRTC 房间事件 ​

由 TRTC 服务端发送房间关闭、用户进入或退出事件。客户端 SDK 不直接调用此接口。

POST /app/sdk/trtc/room-callback

调用方: TRTC 服务端 · 认证: TRTC 回调签名

由 TRTC 发送 SdkAppId 和 Sign 请求头,按原始请求内容验证签名。

请求参数 ​

参数类型必填说明
SdkAppIdstring是与管理后台配置一致的 TRTC 应用 ID。
Signstring是用回调密钥对原始 Body 做 HMAC-SHA256,再进行 Base64 编码,最长 128 字符。

JSON Body ​

参数类型必填说明
EventGroupIdinteger是事件组,当前处理房间事件组 1。
EventTypeinteger是102 房间关闭、103 用户进入、104 用户退出。其他事件类型验证通过后忽略。
CallbackTsinteger是回调生成时间,Unix 毫秒;与服务器时间误差不超过 5 分钟。
EventInfoobject是事件详情,必须是非空对象。
EventInfo.RoomIdinteger | string条件房间事件必填。正整数房间号,最大 4294967295,也可传对应十进制字符串。
EventInfo.UserIdstring条件103 / 104 必填。进入或退出房间的 TRTC 用户 ID。
EventInfo.EventMsTsinteger | string条件条件必填。事件发生时间,Unix 毫秒,优先使用;未提供时必须提交 EventTs。
EventInfo.EventTsinteger | string条件条件必填。事件发生时间,Unix 秒;仅没有 EventMsTs 时使用。

标有条件的必填项,只在相应操作或配置下需要提交。

请求示例 ​

bash
curl 'https://example.com/app/sdk/trtc/room-callback' \
  -H 'SdkAppId: 1400000000' \
  -H 'Sign: <TRTC 回调签名>' \
  -H 'Content-Type: application/json' \
  --data '{"EventGroupId":1,"EventType":103,"CallbackTs":1792301400000,"EventInfo":{"RoomId":1258001,"UserId":"p1_ae32d441a82f8c70","EventMsTs":1792301400000}}'

使用说明 ​

  • Body 总长度最多 65536 字节。签名针对收到的原始字节,验签前不要重新格式化 JSON。
  • 这组回调使用供应商的返回格式,没有 msg 和 data。客户端接口的 IM Token 不用于此处。
  • 控制台回调地址填写 https://example.com/app/sdk/trtc/room-callback。

返回参数 ​

此接口使用下列返回格式。

字段类型说明
codeinteger验证并处理成功为 0;验证失败时 HTTP 403、code=1。
json
{
  "code": 0
}

错误处理 ​

HTTP 403、{"code":1} 表示签名、时间或内容验证失败。检查回调配置、原始 Body 和服务器时钟。

返回音视频通话接口列表 · HTTP 请求约定