直播录制回调可通过控制台或调用AddLiveRecordNotifyConfig接口进行配置,本文介绍录制事件回调的格式和示例。

文件生成事件回调示例

目标录制文件生成时触发此回调,表示录制文件已经生成。
{
  "domain": "qt01.alivecdn.com",
  "app": "mp4flvtest_flv",
  "stream": "callback_test",
  "uri": "mp4flvtest_flv/callback_test/0_2017-03-08-23:09:46_2017-03-08-23:10:40.flv",
  "duration": 69.403,
  "start_time": 1488985786,
  "stop_time": 1488985840,
  "push_args": {
    "callback_args1": "value1",
    "callback_myid": "1231389741"
  }
}
                

其中,domain、app、stream分别为录制域名、应用名和流名,uri为目标录制文件在用户录制OSS Bucket下的路径,duration、start_time、stop_time分别为目标录制文件录制内容时长和起止时间(单位:秒),push_args为推流参数中前缀为callback_的参数。

说明
  • 以上回调示例,适用于所有没有定制回调模版的客户。
  • 同一个参数名只能有一个参数值,如果传入多个值,回调仅包含第一个值。如推流参数包含callback_args1=value1&callback_args1=value2,回调中仍为"callback_args1": "value1"

录制状态回调示例,当NeedStatusNotify=true时产生

NeedStatusNotify是AddLiveRecordNotifyConfig接口的一个入参,用于表示是否需要录制任务状态回调。

  1. 录制开始事件回调,表示录制已经成功开始。
    {
    "domain": "gs_domain",
    "app": "gs_app",
    "stream": "gs_stream",
    "event": "record_started"
    }
                        

    其中,domain、app、stream分别为录制域名、应用名和流名,event为事件名,可以为record_started、record_paused或record_resumed。

  2. 录制暂停事件回调,表示录制已经成功暂停。
    {
    "domain": "gs_domain",
    "app": "gs_app",
    "stream": "gs_stream",
    "event": "record_paused"
    }
                        
  3. 录制继续事件回调,表示录制已经成功恢复。
    {
    "domain": "gs_domain",
    "app": "gs_app",
    "stream": "gs_stream",
    "event": "record_resumed"
    }