回调设置

视频直播提供直播推流状态、直播录制、直播截图和智能审核的事件回调,本文介绍如何通过控制台配置对应的回调事件。

前提条件

视频直播服务目前支持HTTP回调(兼容HTTPS)方式获取事件通知。您需要部署一个HTTP服务来接收回调消息,并在控制台或通过API配置回调地址。

  • 当推流或断流事件产生时,直播服务端会向该地址发起HTTP GET请求,具体内容将通过URL参数送达。

  • 当其他事件产生时,直播服务端会向该地址发起HTTP POST请求,具体内容将通过JSON Body送达。

使用场景

当直播过程中某些事件被触发时,阿里云将主动发送请求到客户服务器,客户服务器负责应答请求,验证通过后,您可接收到事件回调信息的JSON数据包。

视频直播支持回调直播推流状态、直播录制(按需录制)、直播截图、智能审核(视频审核、语音审核)事件的信息,不同回调事件对应的回调参数和示例详见回调管理

使用限制

  • 回调地址URL无需标识,只需可正常访问。URL的应答有如下要求:

    • 如果访问超时,会重试URL。目前超时时间是5秒,重试次数5次,重试间隔1秒。

  • 不同类型回调的配置要求:

    • 推流回调只能在推流域名的回调事件中进行配置和编辑。

    • 录制回调、截图回调、视频审核回调、语音审核回调只能在对应播放域名的回调事件中进行配置和编辑。

功能介绍

事件回调分为推流回调与播流回调

操作指南

  1. 登录视频直播控制台
  2. 在左侧导航栏单击功能管理>事件回调,进入事件回调页面。

  3. 选择您要配置的推/播流域名,推流域名支持设置推流回调,播流域名支持设置录制回调、截图回调、视频审核回调和语音审核回调。

  4. 回调设置页签下,配置对应功能。image

推流回调

  1. 开启推流回调开关。

  2. 配置回调参数。

    参数

    说明

    回调类型

    推/断流回调:通知当前域名推流成功状态、断流状态。

    推流异常事件回调:通知当前域名推流异常事件。

    回调地址

    推/断流回调地址:回调地址为您自身拥有的地址,当推流或断流事件产生时,直播服务端会向该地址发起HTTP GET请求,具体内容将通过URL参数传递。

    异常事件回调地址:回调地址为您自身拥有的地址,当推流异常事件发生时,直播服务端会向该地址发起HTTP POST请求,具体内容将通过JSON Body送达。

    回调鉴权

    选择是否为推流回调地址开启鉴权。如需鉴权,打开鉴权开关,输入鉴权key

  3. 单击确定

说明

回调方式和回调内容,请参见直播推流回调。您还可以调用API设置推流回调通知地址配置

录制回调

  1. 开启录制回调开关。

  2. 配置回调参数。

    参数

    说明

    回调地址

    回调地址为您自身拥有的地址,当录制回调事件发生时,直播服务端会向该地址发起HTTP POST请求,具体内容将通过JSON Body送达。

    触发事件

    • 文件生成回调:录制文件生成时产生回调。

    • 录制状态回调:录制文件生成、录制开始、暂停、继续录制事件均生成回调。

    按需回调地址

    设置按需录制方式后,当开始推直播流时,直播录制服务会发送一条HTTP回调给事先设定的按需回调地址,通过该回调的返回内容决定是否录制这条直播流。按需回调地址默认* ,表示关闭按需录制功能。

    说明

    设置按需回调地址前,需调用接口添加录制配置配置录制规则。其中OnDemand字段设置为1,表示通过HTTP回调开启按需录制。

    回调鉴权

    默认关闭,开启后需设置鉴权Key,系统对每次回调请求进行签名,接收方可验签以确保请求安全。具体流程请参见回调鉴权

  3. 单击确定

说明

回调方式和回调内容,请参见直播录制回调。您还调用API添加域名级别录制回调配置

截图回调

  1. 开启截图回调开关。

  2. 配置回调参数。

    参数

    说明

    回调地址

    回调地址为您自身拥有的地址,当截图回调事件发生时,直播服务端会向该地址发起HTTP POST请求,具体内容将通过JSON Body送达。

    回调鉴权

    选择是否为推流回调地址开启鉴权。如需鉴权,打开鉴权开关,输入鉴权key

说明

回调方式和回调内容,请参见直播截图回调。您还可以调用API添加截图回调配置

视频审核回调

  1. 开启视频审核回调开关。

  2. 配置回调地址。

    回调地址为您自身拥有的地址,当视频审核回调事件发生时,直播服务端会向该地址发起HTTP POST请求,具体内容将通过JSON Body送达。

  3. 单击确定

说明
  • 回调方式和回调内容,请参见智能审核回调。您还可以调用APIAddLiveDetectNotifyConfig - 添加回调通知URL

  • 目前仅部分直播中心支持直播智能审核,具体支持该功能的直播中心,请参见服务地域

  • 视频审核只会针对有问题的视频内容进行回调通知,通知内容包含问题视频截图的审核信息和存储信息。可在您的回调服务器中查看回调信息。回调信息的格式与示例,请参见智能审核回调

  • OSS中查找识别的内容。您可以根据审核回调信息,在OSS控制台查找指定的审核内容。

    • 根据AppNameStreamName查找指定的审核内容。

    • 根据推流日期查找指定的审核内容。

语音审核回调

  1. 开启语音审核回调开关。

  2. 配置回调地址。

    回调地址为您自身拥有的地址,当语音审核回调事件发生时,直播服务端会向该地址发起HTTP POST请求,具体内容将通过JSON Body送达。

  3. 单击确定

说明
  • 回调方式和回调内容,请参见智能审核回调。您还可以调用API添加音频审核回调信息

  • 语音审核只会对于有问题的音频内容进行回调通知,通知内容包含问题语音的文本信息以及最近一分钟内的上下文信息。可在您的回调服务器中查看回调信息。回调信息的格式与示例,请参见智能审核回调

  • OSS中查找识别的内容。您可以根据审核回调信息,在OSS控制台查找指定的审核内容。

    • 根据AppNameStreamName查找指定的审核内容。

    • 根据推流日期查找指定的审核内容。

推流回调逻辑

播推流状态回调中开播(publish)状态回调逻辑:

  1. RTMP推流在阿里云直播服务收到On Publish消息后2秒内,如果推流端不主动断开,阿里云直播服务就会发送推流成功回调。

  2. 假设您有推流域名A和播流域名B,如果您的域名B使用拉流直播(固定拉流和触发回源拉流)需要回调,请在域名A配置推流回调。配置后域名B的拉流回调逻辑与上述一致,建联后默认2秒无主动断开即认为拉流成功。

说明

建议您根据回调通知判断推流、拉流接入是否正常。可以同时配合在线流列表查询推流正常后,再下发直播流播放地址。

回调鉴权

推流回调鉴权功能默认关闭,用户可在配置推流回调地址时启用鉴权。启用功能后,鉴权逻辑如下:

  1. 阿里云视频直播发起回调请求时在HTTP(S)请求头中带上ALI-LIVE-TIMESTAMP和 ALI-LIVE-SIGNATURE 字段,供回调消息接收服务端进行签名认证。其中,ALI-LIVE-SIGNATURE的值由如下计算而得:

    ALI-LIVE-SIGNATURE=MD5SUM(MD5CONTENT)MD5CONTENT=回调域名|ALI-LIVE-TIMESTAMP取值|鉴权KEY

    说明

    回调域名指配置回调URL的推流域名。鉴权Key指用户为推流回调URL配置的鉴权Key。

  2. 回调消息接收服务端接收回调消息时,将回调域名、ALI-LIVE-TIMESTAMP取值、鉴权Key进行拼接后计算MD5值,得到加密字符串,再将计算出的加密字符串与视频直播发起的HTTP(S)请求头中的ALI-LIVE-SIGNATURE字段值进行对比。如果不一致,则请求非法。