回调格式说明

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

原理

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

注意事项

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

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

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

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

    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&ip=192.168.XX.XX&id=world&app=example.aliyundoc.com&appname=liveApp****&time=1609220385&usrargs={用户参数}&
node=cdnvideocenter01020711****.cm3&height=720&width=1280
参数描述
action事件。
  • publish:推流。
  • publish_done:断流。
ip推流的客户端IP。
id推流流名称。
app推流域名。默认为自定义的推流域名,如果未绑定推流域名即为播流域名。
appname推流应用名称。
timeUnix时间戳。单位:秒。
usrargs用户推流的参数。
nodeCDN接受流的节点或者机器名。
height分辨率的高。单位:像素。
说明 分辨率信息(height和width)仅在首次回调时产生。
width分辨率的宽。单位:像素。