页面录制事件

更新时间不可用

了解如何在云端录制中监听页面录制 Webhook 事件,以及各事件的类型和字段含义。

当 payload 中的 serviceType 返回 6 时,表示该回调事件的服务类型是页面录制。

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

页面录制回调包含如下事件:

eventType事件描述
70页面录制已启动
71页面录制已停止
72待录制页面使用了不受支持的功能,录制即将停止
73待录制页面重新加载
100页面录制 CDN 推流状态变化
表格内容超出当前宽度,可横向滚动查看更多列。

70 web_recorder_started

eventType 为 70 表示页面录制已启动, details 中包含以下字段:

  • msgName:String 类型,消息名称,即 "web_recorder_started"。
  • recorderStartTime: Number 类型,录制开始时间(UTC 时间)。Unix 时间戳,精确到毫秒。

71 web_recorder_stopped

eventType 为 71 表示页面录制已停止, details 中包含以下字段:

  • msgName:String 类型,消息名称,即 "web_recorder_stopped"。
  • code:Number 类型,错误码。如果错误码不为 0,则表示页面录制异常停止。
  • message:String 类型,错误消息,用于提示录制正常或异常停止的原因。
  • details:String 类型,错误消息具体描述,用于提示录制正常或异常停止的原因的具体描述,你可以根据该信息采取相应措施。
  • fileList:JSON Array。由每个录制文件的具体信息组成的数组。
    • filename:String 类型,录制产生的 M3U8 或 MP4 文件的文件名。
    • sliceStartTime:Number 类型,该文件的录制开始时间,Unix 时间戳,单位为毫秒。

code 和 message 字段说明如下:

codemessage说明
0ok正常,用户主动停止录制。
1max_recording_hour录制时长达到设置的最大录制时长(maxRecordingHour)导致录制停止。
2capability_limit待录制页面使用了不受支持的功能导致录制停止。
3start_engine_failed录制服务启动失败导致录制停止。
4page_load_timeout使用检测页面加载超时功能的情况下,页面加载超时导致录制停止。
5access_url_failed打开待录制页面发生错误导致录制停止。
6recorder_error录制发生错误不可继续导致录制停止。
表格内容超出当前宽度,可横向滚动查看更多列。

回调示例如下:

JSON
{
    "msgName": "web_recorder_stopped",
    "code": 1,
    "message": "max_recording_hour",
    "details": "max recording hour is 4",
    "fileList": [
        {
            "filename": "test_p1627613634_www.m3u8",
            "sliceStartTime": 1627613641393
        },
        {
            "filename": "test_p1627613634_www_0.mp4",
            "sliceStartTime": 1627613641393
        }
    ]
}

72 web_recorder_capability_limit

eventType 为 72 表示待录制页面使用了不受支持的功能,录制即将停止。details 中包含以下字段:

  • msgName:String 类型,消息名称,即 "web_recorder_capability_limit"。
  • limitType:String 类型,限制类型名称,包含如下几种
    • "resolution":待录制页面中包含超过 1920 × 1080 分辨率的视频源。
    • "WebGL":待录制页面使用了 WebGL 功能。
    • "bandwidth":上行带宽超过 10 M,或者下行带宽超过 1 G。

73 web_recorder_reload

eventType 为 73 表示页面录制过程中,页面重新加载, details 中包含以下字段:

  • msgName:String 类型,消息名称,即 "web_recorder_reload"。
  • reason:String 类型,页面重新加载的原因。包含以下原因:
  • "audio_silence":检测到页面音频丢失。
  • "page_load_timeout":检测到页面加载超时。该回调仅在以下条件下返回该字段:启用检测页面加载超时功能,且页面加载超时。

100 rtmp_publish_status

eventType 为 100 表示页面录制的 CDN 推流状态变化, details 中包含以下字段:

  • msgName:String 类型,消息名称,即 "rtmp_publish_status"。
  • rtmpUrl:String 类型,CDN 推流地址。
  • status:String 类型,页面录制当前的推流状态,包括以下状态:
    • connecting:正在连接 CDN 服务器。
    • publishing:正在推流。
    • onhold:推流暂停。
    • disconnected:连接 CDN 服务器失败,声网建议你更换 CDN 推流地址。