录制服务事件

更新时间不可用

了解如何在云端录制中监听录制服务 Webhook 事件,以及各事件的类型、字段含义和回调示例。

当 payload 中的 serviceType 返回 0 时,表示该回调事件的服务类型是云端录制服务。

本页介绍录制服务相关的回调事件。如果你想查看其他云端录制的相关事件,可以参考回调事件概览。

录制服务回调包含如下事件:

eventType事件描述
1云端录制服务发生错误
2云端录制服务发生警告
3云端录制服务状态发生变化
4生成录制索引文件
11云端录制服务结束任务并退出
12云端录制启用高可用机制
表格内容超出当前宽度,可横向滚动查看更多列。

1 cloud_recording_error

eventType 为 1 表示云端录制服务发生错误, details 中包含以下字段:

  • msgName:String 类型,消息名称,即 "cloud_recording_error"。

  • module:Number 类型,发生错误的模块。

    • 0:录制模块
    • 1:上传模块
    • 2:云端录制服务
    • 6:页面录制服务
  • errorLevel:Number 类型,错误级别。

    • 1:debug
    • 2:minor
    • 3:medium
    • 4:major
    • 5:fatal。fatal 级别的错误很可能导致录制退出,如果收到该级别的消息请及时调用 query API 查询当前状态,并结合错误消息的内容进行处理。
  • errorCode:Number 类型,错误码。与 module 有关:

    • 如果 module 为 1,错误发生在上传模块,错误码可能为:
      • 32:第三方云存储信息错误。
      • 47:文件上传失败。
      • 51:上传时文件操作发生错误。
    • 如果 module 为 2,错误发生在云端录制服务模块,错误码可能为:
      • 50:上传超时。
      • 52:云端录制服务启动超时。
    • 如果 module 为其他,请参考响应状态码和错误码中的错误码说明。

    如果错误码未在文档中列出,请联系技术支持。

  • stat:Number 类型,事件状态,0 表示正常,其他值表示异常。

  • errorMsg:String 类型,具体的错误信息。

回调示例如下:

JSON
{
    "msgName": "cloud_recording_error",
    "module": 0,
    "errorLevel": 5,
    "errorCode": 3,
    "stat": 0,
    "errorMsg": ""
}

2 cloud_recording_warning

eventType 为 2 表示云端录制服务发生警告, details 中包含以下字段:

  • msgName:String 类型,消息名称,即 cloud_recording_warning。
  • module:Number 类型,发生警告的模块名。
    • 0:录制模块
    • 1:上传模块
  • warnCode:Number 类型,警告码。与 module 有关:
    • 如果 module 为 0,警告发生在录制模块,请参考警告码的说明。
    • 如果 module 为 1,警告发生在上传模块,警告码可能为:
      • 31:重传到指定的云存储。
      • 32:重传到声网备份云。

3 cloud_recording_status_update

eventType 为 3 表示云端录制服务状态与你调用的方法不匹配,导致调用失败。例如,云端录制服务已开始,导致再次调用 start 失败。details 中包含以下字段:

  • msgName:String 类型,消息名称,即 cloud_recording_status_update。
  • status:Number 类型,云端录制当前的状态:
    • 0:没有开始云端录制。
    • 1:云端录制初始化完成。
    • 2:录制组件开始启动。
    • 3:上传组件已启动。
    • 4:录制组件启动完成。
    • 5:已成功上传第一个文件。
    • 6:已经停止录制。
    • 7:云端录制服务全部停止。
    • 8:云端录制准备退出。
    • 20:云端录制异常退出。
  • recordingMode:Number 类型,录制模式。
    • 0:合流模式
    • 1:单流模式
  • fileList:String 类型,录制生成的 M3U8 索引文件名。

4 cloud_recording_file_infos

eventType 为 4 表示生成 M3U8 文件并上传。录制过程中,录制服务会反复上传和覆盖 M3U8 文件,以更新索引信息,但只有第一次生成并上传 M3U8 文件时会触发该回调。

合流录制和页面录制模式下,将 avFileType 设置为 ["hls","mp4"] 时,eventType 为 4 表示生成 M3U8 和 MP4 文件并上传。

details 中包含以下字段:

  • msgName:String 类型,消息名称,即 cloud_recording_file_infos。
  • fileList:String 类型,生成的 M3U8 和 MP4 文件名(如有)。

11 session_exit

eventType 为 11 表示云端录制服务结束任务并退出,details 中包含以下字段:

  • msgName:String 类型,消息名称,即 session_exit。
  • exitStatus:Number 类型,退出状态。
    • 0:正常退出,即录制结束、录制文件成功上传后,录制服务退出。
    • 1:异常退出,例如参数设置错误,导致录制停止。

12 session_failover

eventType 为 12 表示云端录制启用高可用机制,details 中包含以下字段:

  • msgName:String 类型,消息名称,即 session_failover。
  • newUid:Number 类型,启用高可用机制后,云端录制随机指定的录制用户 ID。云端录制将使用该录制用户 ID 加入频道,不再使用原有的录制用户 ID。