視頻直播提供直播推流狀態、直播錄制、直播截圖和智能審核的事件回調,本文介紹如何通過控制臺配置對應的回調事件。
前提條件
視頻直播服務目前支持HTTP回調(兼容HTTPS)方式獲取事件通知。您需要部署一個HTTP服務來接收回調消息,并在控制臺或通過API配置回調地址。
當推流或斷流事件產生時,直播服務端會向該地址發起HTTP GET請求,具體內容將通過URL參數送達。
當其他事件產生時,直播服務端會向該地址發起HTTP POST請求,具體內容將通過JSON Body送達。
使用場景
當直播過程中某些事件被觸發時,阿里云將主動發送請求到客戶服務器,客戶服務器負責應答請求,驗證通過后,您可接收到事件回調信息的JSON數據包。
視頻直播支持回調直播推流狀態、直播錄制(按需錄制)、直播截圖、智能審核(視頻審核、語音審核)事件的信息,不同回調事件對應的回調參數和示例詳見回調管理。
使用限制
回調地址URL無需標識,只需可正常訪問,URL的應答有如下要求:如果訪問超時,會重試URL,目前超時時間是5秒,重試次數5次,重試間隔1秒。
推流回調只能在推流域名的回調事件中進行配置和編輯。錄制回調、截圖回調、視頻審核回調、語音審核回調只能在對應播放域名的回調事件中進行配置和編輯。
功能介紹
事件回調分為推流回調與播流回調
操作指南
- 登錄視頻直播控制臺。
在左側導航欄單擊功能管理>事件回調,進入事件回調頁面。
選擇您要配置的推/播流域名,推流域名支持設置推流回調,播流域名支持設置錄制回調、截圖回調、視頻審核回調和語音審核回調。
在回調設置頁簽下,配置對應功能。
推流回調
開啟推流回調開關。
配置回調參數。
參數
說明
回調地址
回調地址為您自身擁有的地址,當推流或斷流事件產生時,直播服務端會向該地址發起HTTP GET請求,具體內容將通過URL參數傳遞。
回調鑒權
選擇是否為推流回調地址開啟鑒權。如需鑒權,打開鑒權開關,輸入鑒權key。
單擊確定。
回調方式和回調內容,請參見直播推流狀態回調。您還可以調用APISetLiveStreamsNotifyUrlConfig - 設置推流回調通知地址配置。
錄制回調
開啟錄制回調開關。
配置回調參數。
參數
說明
回調地址
回調地址為您自身擁有的地址,當錄制回調事件發生時,直播服務端會向該地址發起HTTP POST請求,具體內容將通過JSON Body送達。
觸發事件
文件生成回調:錄制文件生成時產生回調。
錄制狀態回調:錄制文件生成、錄制開始、暫停、繼續錄制事件均生成回調。
按需回調地址
設置按需錄制方式后,當開始推直播流時,直播錄制服務會發送一條HTTP回調給事先設定的按需回調地址,通過該回調的返回內容決定是否錄制這條直播流。按需回調地址默認
*
,表示關閉按需錄制功能。說明設置按需回調地址前,需調用接口添加錄制配置配置錄制規則。其中
OnDemand
字段設置為1
,表示通過HTTP回調開啟按需錄制。單擊確定。
回調方式和回調內容,請參見直播錄制回調。您還調用APIAddLiveRecordNotifyConfig - 添加域名級別錄制回調配置。
截圖回調
開啟截圖回調開關。
配置回調參數。
參數
說明
回調地址
回調地址為您自身擁有的地址,當截圖回調事件發生時,直播服務端會向該地址發起HTTP POST請求,具體內容將通過JSON Body送達。
回調鑒權
選擇是否為推流回調地址開啟鑒權。如需鑒權,打開鑒權開關,輸入鑒權key。
回調方式和回調內容,請參見直播截圖回調。您還可以調用APIAddLiveSnapshotNotifyConfig - 添加截圖回調配置。
視頻審核回調
開啟視頻審核回調開關。
配置回調地址。
回調地址為您自身擁有的地址,當視頻審核回調事件發生時,直播服務端會向該地址發起HTTP POST請求,具體內容將通過JSON Body送達。
單擊確定。
回調方式和回調內容,請參見智能審核回調。您還可以調用APIAddLiveDetectNotifyConfig - 添加回調通知URL。
目前僅部分直播中心支持直播智能審核,具體支持該功能的直播中心,請參見服務地域。
視頻審核只會針對有問題的視頻內容進行回調通知,通知內容包含問題視頻截圖的審核信息和存儲信息。可在您的回調服務器中查看回調信息。回調信息的格式與示例,請參見智能審核回調。
在OSS中查找識別的內容。您可以根據審核回調信息,在OSS控制臺查找指定的審核內容。
根據AppName與StreamName查找指定的審核內容。
根據推流日期查找指定的審核內容。
語音審核回調
開啟語音審核回調開關。
配置回調地址。
回調地址為您自身擁有的地址,當語音審核回調事件發生時,直播服務端會向該地址發起HTTP POST請求,具體內容將通過JSON Body送達。
單擊確定。
回調方式和回調內容,請參見智能審核回調。您還可以調用APIAddLiveAudioAuditNotifyConfig - 添加音頻審核回調信息。
語音審核只會對于有問題的音頻內容進行回調通知,通知內容包含問題語音的文本信息以及最近一分鐘內的上下文信息。可在您的回調服務器中查看回調信息。回調信息的格式與示例,請參見智能審核回調。
在OSS中查找識別的內容。您可以根據審核回調信息,在OSS控制臺查找指定的審核內容。
根據AppName與StreamName查找指定的審核內容。
根據推流日期查找指定的審核內容。
推流回調邏輯
播推流狀態回調中開播(publish)狀態回調邏輯:
RTMP推流在阿里云直播服務收到On Publish消息后2秒內,如果推流端不主動斷開,阿里云直播服務就會發送推流成功回調。
假設您有推流域名A和播流域名B,如果您的域名B使用拉流直播(固定拉流和觸發回源拉流)需要回調,請在域名A配置推流回調。配置后域名B的拉流回調邏輯與上述一致,建聯后默認2秒無主動斷開即認為拉流成功,需要確保收到數據才認為成功。
建議您根據回調通知判斷推流、拉流接入是否正常。可以同時配合在線流列表查詢推流正常后,再下發直播流播放地址。
回調鑒權
推流回調鑒權功能默認關閉,用戶可在配置推流回調地址時啟用鑒權。啟用功能后,鑒權邏輯如下:
阿里云視頻直播發起回調請求時在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。
回調消息接收服務端接收回調消息時,將回調域名、ALI-LIVE-TIMESTAMP取值、鑒權Key進行拼接后計算MD5值,得到加密字符串,再將計算出的加密字符串與視頻直播發起的HTTP(S)請求頭中的ALI-LIVE-SIGNATURE字段值進行對比。如果不一致,則請求非法。