文档中心
ExpressAudioSDK 实时语音
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 实时语音
  • 服务端 API
  • 回调说明
  • 流关闭回调

服务端 API 版块于4月16日至5月15日升级维护,期间暂停信息更新,如有任何疑问,请联系ZEGO技术支持。

流关闭回调

更新时间:2025-04-15 17:17

1 描述

当开发者有维护直播列表的需求时,APP 在流媒体服务器有流关闭时,将会以 POST 的形式对回调地址进行请求。

2 回调说明

  • 请求方法:POST。

    回调数据格式为 JSON,您需要对其进行 UrlDecode 解码。

  • 请求地址:请在 ZEGO 控制台 上配置回调地址。
  • 传输协议:HTTPS/HTTP,建议使用 HTTPS。

3 回调参数

公共参数 类型 描述
event
String
回调事件,此回调返回值为 stream_close。
appid
String
AppId。
timestamp
String
服务器当前时间,Unix 时间戳。
nonce
String
随机数。
signature
String
检验串,请参考 回调说明 - 检验说明。
业务参数 类型 描述
room_id
String
房间 ID,对应客户端的 RoomID,同 channel_id 意义相同,不超过 127 字节。
room_session_id
String
房间生命周期唯一标识,在该房间的整个生命周期中保持不变。
user_id
String
用户 ID,不超过 255 字节。
user_name
String
用户昵称,不超过 255 字节。
channel_id
String
频道 ID,对应客户端的 RoomID,不超过 127 字节。
type
String
关闭类型。
  • 0:正常关闭(用户调用 SDK 的 stopPublishingStream 接口停止推流)。
  • 非 0 为异常关闭:
    • 1:用户心跳超时关闭。
    • 2:用户重复登录同一个房间,关闭上次登录会话的流。
    • 3:服务端接口 kickout 用户,关闭用户创建的流。
    • 4:tcp 掉线关闭流(可配置通知时间)。
    • 5:房间被清除关闭流。
    • 100:调用服务端接口 DeleteStream 关闭流。
stream_alias
String
流名,对应客户端的 StreamID,不超过 255 字节。
stream_id
String
流 ID,对应客户端的 StreamID,同 stream_alias 意义相同。
stream_sid
String
流 server ID, 流的唯一标识,由 ZEGO 后台生成,开发者可不关注。
stream_seq
String
服务器流列表变更的 seq,每次流变更都会加 1。
third_define_data
String
客户自定义数据。
create_time_ms
String
流创建时间,服务器当前时间,Unix 时间戳。单位:毫秒。
destroy_timemillis
String
流关闭时间,服务器当前时间,Unix 时间戳。单位:毫秒。

建议您将部分参数转换为 Int 进行逻辑处理,相关字段包括 type、destroy_timemillis、stream_seq、create_time_ms、room_session_id。

4 数据示例

{
    "event": "stream_close",
    "appid": "1",
    "timestamp": "1666786067",
    "nonce": "7266888922840654370",
    "signature": "xxx",
    "room_id": "room1",
    "room_session_id": "123456789",
    "user_id": "user1",
    "user_name": "user1_name",
    "channel_id": "0xb-0x1",
    "type": "0",
    "stream_alias": "aaa",
    "stream_id": "stream_id",
    "stream_sid": "s-115205136669740000000000104",
    "stream_seq": "700",
    "third_define_data": "{\"u\":\"S1lxOUxMN2tRZ3lIY0JMSUs3VlMxZz09\"}",
    "create_time_ms": "1666786067353",
    "destroy_timemillis": "1666986067248"
}

5 返回响应

返回 HTTP status code 为 2XX (例如 200)表示成功,其他响应都表示失败。

6 回调重试策略

如果 ZEGO 服务器没有收到响应,或收到的 HTTP status code 不为 2XX(例如 200),都会尝试重试,最多进行 5 次重试。每次重试请求与上一次请求的间隔时间分别为 2s、4s、8s、16s、32s。若第 5 次重试后仍然失败,将不再重试,该回调丢失。

本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈