全部產品
Search
文件中心

ApsaraVideo Live:推流回調格式說明

更新時間:Dec 31, 2024

流狀態即時資訊回調,可以及時通知使用者推流或斷流操作結果。

原理

通過HTTP介面向使用者服務器發送GET請求,將視頻流推送成功。斷流成功的狀態即時反饋給使用者,使用者服務器通過200響應返回介面的結果。

注意事項

  • URL無需標識,只需可正常訪問,URL的應答有如下要求:

    如果訪問逾時,會重試URL,目前逾時時間是5秒,重試次數5次,稍候再試1秒。

  • 直播推流狀態回調中開播(publish)狀態回調邏輯

    1. RTMP推流在阿里雲直播服務收到On Publish訊息後2秒內,如果推流端不主動斷開,阿里雲直播服務就會發推流成功回調。

    2. 假設您有推流網域名稱A和播流網域名稱B,如果您的網域名稱B使用拉流直播(固定拉流和觸發回源拉流)需要回調,請在網域名稱A配置推流回調。配置後網域名稱B的拉流回調邏輯與上一條一致,建聯後預設2秒無主動斷開即認為拉流成功。

    說明
    • 建議業務方不僅根據回調通知判斷推流、拉流接入正常,同時配合查詢網域名稱線上流列表介面查詢推流正常後,再下發直播流播放地址。

    • 當10秒內(包含十秒)沒有流資料推送到直播中心時,直播服務就會自動斷開推流。

  • 推流回調邏輯說明

    推流回調鑒權功能預設關閉,使用者可在配置推流回調地址時啟用鑒權。啟用功能後,鑒權邏輯如下:

    1. 阿里雲ApsaraVideo for Live發起回調請求時在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值,得到加密字串,再將計算出的加密字串與ApsaraVideo for Live發起的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

推流應用程式名稱。

time

Unix時間戳記。單位:秒。

usrargs

使用者推流的參數。

node

CDN接受流的節點或者機器名。

height

解析度的高。單位:像素。

說明

解析度資訊(height和width)僅在首次回調時產生。

width

解析度的寬。單位:像素。