直播中關鍵資訊回呼
更新時間:2024-04-22 19:18:32
作用
直播過程中,回呼講師的行為和網路狀態(目前僅支援講師,未來會逐步支援嘉賓等角色)
詳情
設定介面位址後,如果帳號下相關頻道在直播時,直播講師的若干操作以及講師當時的網路狀態會以POST方式提交到給使用者自訂的回呼介面進行通知。
回呼參數說明
回呼包含的參數(透過 form-data 參數請求):
| 參數名 | 類型 | 說明 |
|---|---|---|
| logList | string | 為物件陣列 json 格式 |
| timestamp | number | 目前時間戳 |
| sign | string | 簽名驗證,前後加 polyvlog,中間由資料的 key 和 value 組成,key 值依首字母從小到大排序。md5 轉碼後,轉為大寫。例如,參數為 {roomId:'200060', channelId:'005200060',user:{nick:'yang'}},則簽名為 md5/('polyvlog'+'channelId'+'005200060'+'roomId'+'200060'+'user'+JSON.stringify({nick:'yang'})+'polyvlog').toLocaleUpperCase();'} |
說明
- 回呼會累計 1 秒內的資料統一進行回呼
- 新舊版後台都支援
- 因回呼較為頻繁,可能對客戶服務端造成壓力,需提前與客戶溝通
- 介面回傳 json 物件,json 物件中有欄位 code,200 表示成功。如果沒有回傳 200,會重試 3 次,超過 3 次則丟棄日誌
logList 參數 json 物件陣列格式
| 參數名 | 類型 | 說明 |
|---|---|---|
| EVENT | string | 操作事件類型,下面說明 |
| sessionId | string | 場次 id |
| roomId | string | 頻道號 |
| userOrigin | string | 資訊來源,client 表示客戶端,webClient 表示網頁開播 |
| timestamp | number | 資料產生時的時間戳 |
EVENT 類型
目前 EVENT 包括 AV_DEVICE_INFO、PPT_OPERATION、NETWORK_STATUS,每種類型的資料格式不一致。
AV_DEVICE_INFO
AV_DEVICE_INFO 的資料格式為:
| 參數名 | 類型 | 說明 |
|---|---|---|
| audio | Object | 音訊資訊 |
| video | Object | 視訊資訊 |
audio 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| switch | boolean | 音訊流總開關狀態 |
| microphone | Object | 音訊來源類型之一:麥克風 |
| speaker | Object | 音訊來源類型之一:系統聲音。只有開關狀態 |
| media | Object | 音訊來源類型之一:多媒體檔案音訊。只有開關狀態 |
audio.microphone 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| deviceId | string | 裝置唯一識別碼 |
| deviceName | string | 描述該裝置的字串(例如「麥克風陣列」)。 |
| switch | boolean | 目前音訊軌道是否包含該裝置音訊 |
| volume | number | 設定音量 |
audio.speaker 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| switch | boolean | 開關狀態 |
audio.media 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| switch | boolean | 開關狀態 |
video 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| switch | boolean | 視訊流總開關狀態 |
| camera | Object | 視訊採集類型之一:攝影機 |
| screen | Object | 視訊採集類型之一:螢幕共享 |
video.camera 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| switch | Boolean | 開關狀態 |
| deviceList | Array[Object] | 攝影機裝置列表。 |
video.camera.deviceList 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| deviceId | string | 裝置唯一識別碼 |
| deviceName | string | 描述該裝置的字串(例如「外部 USB 網路攝影機」)。 |
video.screen 參數包括:
| 參數名 | 類型 | 說明 |
|---|---|---|
| displaySurface | string | 指示正在擷取的螢幕共享類型,可能是:browser 單一瀏覽器標籤頁 monitor 螢幕 window 應用程式視窗 |
| switch | boolean | 開關狀態 |
PPT_OPERATION
PPT_OPERATION 的資料格式為:
| 參數名 | 類型 | 說明 |
|---|---|---|
| operation | string | 操作類型,open:開啟 ppt,switchpage:切頁,switchAnimation:切動畫 |
| fileId | string | 檔案唯一識別碼 |
| fileName | string | 檔案名稱 |
| pageId | number | 頁面 id |
| step | number | 頁面切換步驟 |
NETWORK_STATUS
NETWORK_STATUS 的資料格式為:
| 參數名 | 類型 | 說明 |
|---|---|---|
| networkQuality | number | 網路品質,共分為:0-6 檔位:0:網路品質未知;1:網路品質極好;2:網路品質較好;3:網路品質一般;4~5:網路品質差,建議及時調整;6:目前已斷網。 |
| networkDelay | number | 從推流端到雲端的往返延遲,單位 ms。該數值越小越好:如果 rtt < 50ms,意味著較低的音視訊通話延遲;如果 rtt > 200ms,則意味著較高的音視訊通話延遲。 |
| uplinkLossRate | number | 上行丟包率,取值範圍為 [0, 1](可選,如未回傳 uplinkVideoLossRate 及 uplinkAudioLossRate 則必選) |
| uplinkVideoLossRate | number | 上行視訊丟包率,取值範圍為 [0, 1](可選,如未回傳 uplinkLossRate 則必選) |
| uplinkAudioLossRate | number | 上行音訊丟包率,取值範圍為 [0, 1](可選,如未回傳 uplinkLossRate 則必選) |
| downlinkLossRate | number | 下行丟包率,取值範圍為 [0, 1](可選,如未回傳 downlinkVideoLossRate 及 downlinkAudioLossRate 則必選) |
| downlinkVideoLossRate | number | 下行視訊丟包率,取值範圍為 [0, 1](可選,如未回傳 downlinkLossRate 則必選) |
| downlinkAudioLossRate | number | 下行音訊丟包率,取值範圍為 [0, 1](可選,如未回傳 downlinkLossRate 則必選) |
| uplinkAudios | Array[Object] | 上行音訊流資訊 |
| uplinkAudios[index].volume | number | 音訊流音量,取值範圍為 [0, 100] |
如何設定
透過後台設定:
登入帳戶 - 進入【雲直播】 - 點選【開發設定】- 點選【回呼設定】- 直播狀態改變回呼 URL
注意:提交的介面位址必須要以 http:// 或者 https:// 開頭
後台設定參考圖片
後台設定:

