流状态实时信息回调,可以及时通知用户推流或断流操作结果。

原理

通过HTTP接口向用户服务器发送GET请求,将视频流推送成功。断流成功的状态实时反馈给用户,用户服务器通过200响应返回接口返回结果。

注意事项

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

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

  • 直播推流状态回调中开播(publish)状态回调逻辑
    1. RTMP推流在阿里云直播服务收到On Publish消息后2秒内,如果推流端不主动断开,阿里云直播服务就会发推流成功回调。如果您的业务需要阿里云直播收到On Publish建联并真正收到直播流数据后才发推流成功回调,请提交工单联系我们后台配置。
    2. 假设您有推流域名A和播流域名B,如果您的域名B使用拉流直播(固定拉流和触发回源拉流)需要回调,请在域名A配置推流回调。配置后域名B的拉流回调逻辑与上一条一致,建联后默认2秒无主动断开即认为拉流成功,需要真正收到数据才认为成功。请提交工单申请配置。
    说明 建议业务方不仅根据回调通知判断推流、拉流接入正常,同时配合在线流列表查询推流正常后,再下发直播流播放地址。
  • 推流回调逻辑说明
    推流回调鉴权功能默认关闭,用户可在配置推流回调地址时启用鉴权。启用功能后,鉴权逻辑如下:
    1. 阿里云视频直播发起回调请求时在HTTP(S)请求头中带上ALI-LIVE-TIMESTAMPALI-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字段值进行对比。如果不一致,则请求非法。

举例说明

举例如下:http:// 1.1.1.1?action=publish&app=xc.cdnpe.com&appname=hello&id=world&ip=42.120.74.183&node=cdnvideocenter010207116011.cm3&height=720&width=1280

参数 类型 取值说明
time String Unix时间戳。单位:秒。
usrargs String 用户推流的参数。
action String publish表示推流,publish_done表示断流。
app String 默认为自定义的推流域名,如果未绑定推流域名即为播流域名。
appname String 应用名称。
id String 流名称。
ip String 推流的客户端IP。
node String CDN接受流的节点或者机器名。
height String 分辨率的高。单位:像素。
说明 分辨率信息(height和width)仅在首次回调时产生。
width String 分辨率的宽。单位:像素。