回調通知使用說明
功能說明
在影片相關處理環節(如上傳、轉碼、審核)完成後,系統會將處理結果提交到設定的回調地址,通知使用者處理進展和狀態,以便進行其他業務操作。
回調配置
登入雲端點播管理後台,在 設定 --> 回調設定 配置回調 URL。

事件類型
目前支援的事件通知類型參考如下:
一、影片上傳完成
點播服務端接收完上傳的影片檔案後,會產生影片上傳完成事件。 HTTP 請求方式為:GET。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由「upload」字串拼接 vid、secretkey 並做 MD5 運算產生。例如,vid 的值為 e2e84a738302f20a4f6eb202976f5c63_e,secretkey 的值為 7UagtQOq2A,將字串 uploade2e84a738302f20a4f6eb202976f5c63_e7UagtQOq2A 進行 MD5 計算,得到 sign 的值為:b245e3e65aa45b60dc02337b5cd914a7 |
| type | 回調類型:upload 已上傳,invalidVideo 不合規格影片(當上傳的影片的資訊無法被系統分析時,判斷為不合規格影片)。 |
| vid | 影片 ID |
| state | 使用者自訂資料,在上傳影片介面(上傳影片介面、上傳 SDK、非同步批量上傳影片)中,如果提交了該欄位,會在事件完成回調時透傳返回。 |
回調範例
http://demo.ipolyv.cn/callback?sign=b245e3e65aa45b60dc02337b5cd914a7&type=upload&vid=e2e84a738302f20a4f6eb202976f5c63_e
二、非同步上傳處理失敗
當使用管理後台的影片同步功能或者使用非同步方式上傳影片,處理失敗時會產生此事件。
當收到此回調時,表示遠端上傳影片失敗,需檢查來源影片的 URL 地址。
HTTP 請求方式為:GET。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 type、fileUrl、secretkey 按順序拼接並做 MD5 運算產生。例如:fileUrl 的值為 "http://a.mp4",secretkey 的值為 kXmHMLeX6M,將字串 async_uploadhttp://a.mp4kXmHMLeX6M 進行 MD5 計算,得到 c2f168b96d882c1a03f1021c29208916 |
| type | 回調類型,返回固定值:async_upload。 |
| fileUrl | 使用者提交的需要遠端上傳的影片 URL 地址 |
| title | 使用者提交的需要遠端上傳的影片標題 |
| state | 使用者自訂資料,在上傳遠端影片介面或非同步批量上傳影片中,如果提交了該欄位,會在事件完成回調時透傳返回。 |
回調範例
http://demo.ipolyv.cn/callback?sign=c2f168b96d882c1a03f1021c29208916&fileUrl=http://a.mp4&type=async_upload&title=test
三、影片同步失敗
當影片上傳成功後,系統需要把上傳至邊緣節點的影片來源檔案同步回中心節點,同步失敗時會產生此事件。
HTTP 請求方式為:GET。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 type、vid、secretkey 按順序拼接並做 MD5 運算產生。 |
| type | 回調類型,返回固定值:videoSyncedFail。 |
| vid | 影片 ID |
回調範例
http://demo.ipolyv.cn/callback?sign=b245e3e65aa45b60dc02337b5cd914a7&type=videoSyncedFail&vid=e2e84a738302f20a4f6eb202976f5c63_e
四、影片單個清晰度轉碼完成
影片的某種格式的某個清晰度(如:高畫質的 mp4 格式)轉碼完成時會產生此事件。
影片任一清晰度轉碼完成並審核通過後即可播放(影片狀態會更新為「已發佈」,如果其它清晰度的轉碼還未完成,播放器會自動選擇已完成轉碼的清晰度)。
HTTP 請求方式為:GET。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 type、format、vid、df、secretkey 按順序拼接並做 MD5 運算產生,例如 type 的值為 encode,format 的值為 mp4,vid 的值為 e2e84a738302f20a4f6eb202976f5c63_e,df 的值為 1,secretkey 的值為 7UagtQOq2A,將字串 encodemp4e2e84a738302f20a4f6eb202976f5c63_e17UagtQOq2A 進行 MD5 計算,得到 f6a7f9b3dce47c4c8d5bfbc96af79720 |
| type | 回調類型:encode 轉碼完成,encode_failed 轉碼失敗 |
| format | 轉碼後的影片格式,非加密影片預設是 mp4,加密影片預設是 hls |
| vid | 影片 ID |
| df | 影片清晰度:1 流暢,2 高畫質,3 超清 |
回調範例
http://demo.ipolyv.cn/callback?sign=f6a7f9b3dce47c4c8d5bfbc96af79720&type=encode&format=mp4&vid=e2e84a738302f20a4f6eb202976f5c63_e&df=1
五、影片全部清晰度轉碼完成
影片所有清晰度轉碼完成會產生此事件。
由於返回內容較多,該回調的請求方式為 POST。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 eventType、vid、secretkey 按順序拼接並做 MD5 運算產生。註:sign 不在 POST Body 中,而是作為回調 URL 中的一個參數返回 |
| eventType | 事件類型,取固定值:TranscodeComplete |
| status | 影片轉碼狀態,取值:success 成功,fail 失敗 。只要有一個清晰度轉碼成功即返回 success。 |
| vid | 影片 ID |
| videoInfos | 影片轉碼詳情 |
videoInfos 為陣列,每個影片流的資訊欄位如下
| 名稱 | 描述 |
|---|---|
| status | 單個清晰度影片轉碼狀態,取值:success 成功,fail 失敗 |
| format | 轉碼後的影片格式,非加密影片預設是 mp4,加密影片預設是 hls |
| df | 影片清晰度:1 流暢,2 高畫質,3 超清 |
| bitrate | 影片碼率 |
| duration | 影片時長,單位:秒 |
| size | 影片大小,單位:Byte |
| resolution | 影片解析度 |
回調範例
Content-Type:application/json
Request URL:http://demo.ipolyv.cn/callback?sign=f6a7f9b3dce47c4c8d5bfbc96af79720
HTTP POST Body:
{
"eventType": "TranscodeComplete",
"status": "success"
"vid": "812a792458101ebf5ff6a1e5e76e1c58_8",
"videoInfos": [
{
"duration": 883,
"df": 1,
"size": 15499011,
"format": "mp4",
"bitrate": 256,
"resolution": "480x360",
"status": "success"
},
{
"duration": 883,
"df": 2,
"size": 27574109,
"format": "mp4",
"bitrate": 512,
"resolution": "848x636",
"status": "success"
}
]
}
六、影片審核完成
影片任一清晰度轉碼完成後需經過智慧審核或人工審核,只有審核通過的影片才可播放。審核完成後會產生此事件。
HTTP 請求方式為:GET。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由「manage」字串拼接 type、vid、secretkey 並做 MD5 運算產生。例如,type 的值為 pass,vid 的值為 e2e84a738302f20a4f6eb202976f5c63_e,secretkey 的值為 7UagtQOq2A,將字串 managepasse2e84a738302f20a4f6eb202976f5c63_e7UagtQOq2A 進行 MD5 計算,得到 8ebb91d444ce53fafa3256670fb65d84 |
| type | 回調類型:pass 審核通過 nopass 審核不通過 |
| vid | 影片 ID |
回調範例
http://demo.ipolyv.cn/callback?type=pass&vid=e2e84a738302f20a4f6eb202976f5c63_e&sign=8ebb91d444ce53fafa3256670fb65d84
七、影片刪除完成
當影片檔案被刪除至回收站或者從回收站徹底刪除時,會產生此事件。
HTTP 請求方式為:POST。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 eventType、secretkey 按順序拼接並做 MD5 運算產生:md5("DeleteMediaComplete"+secretKey) 。註:sign 不在 POST Body 中,而是作為回調 URL 中的一個參數返回。 |
| eventType | 回調類型,取固定值:DeleteMediaComplete |
| operateTime | 操作時間,例如:2020-01-20 07:49:17 |
| operator | 操作者帳號 |
| status | 操作狀態,success 成功 |
| deleteType | 刪除方式:MoveToTrash 刪除到回收站 DeletePermanently 永久刪除 |
| vids | 被刪除影片的 vid,批量刪除時返回多個 vid |
回調範例
Content-Type:application/json
Request URL:http://demo.ipolyv.cn/callback?sign=f6a7f9b3dce47c4c8d5bfbc96af79720
HTTP POST Body:
{
"eventType": "DeleteMediaComplete",
"operateTime": "2020-01-20 07:49:17",
"operator": "aaa@polyv.net",
"status": "success",
"deleteType": "MoveToTrash",
"vids": "e2e84a738302f20a4f6eb202976f5c63_e,e2e84a738302f20a4f6eb202976f5c63_f"
}
八、影片內容安全審核不通過
當影片經過 AI 智慧掃描,發現有確認或疑似違規內容時,會產生此事件。
HTTP 請求方式為:POST。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 eventType、secretkey 按順序拼接並做 MD5 運算產生,md5("AIContentScanNotPassed"+secretKey)。 註:sign 不在 POST Body 中,而是作為回調 URL 中的一個參數返回 |
| eventType | 回調類型,取固定值:AIContentScanNotPassed |
| scanSource | 掃描來源,video 影片 ppt 三分屏課件 |
| vid | 影片 ID |
| scanResults | 掃描結果陣列,包含一個或多個掃描結果,詳見下表: |
掃描結果資訊如下:
| 名稱 | 描述 |
|---|---|
| imageUrl | 檢測圖片的 URL |
| scene | 檢測場景:porn 鑑黃 terrorism 暴恐涉政識別 |
| label | 檢測結果分類,當 scene=porn 時,label 取值為: normal:正常圖片 sexy:性感圖片 porn:色情圖片 當 scene 為 terrorism 時,label 取值為: normal:正常圖片 politics:涉政圖片 bloody:血腥圖片 weapon:武器 others:其它 |
| suggestion | 檢測建議:review 需人工複審;block 確認違規 |
| rate | 檢測結果為該分類的機率,取值範圍[0.00-100.00] |
回調範例
Content-Type:application/json
Request URL:http://demo.ipolyv.cn/callback?sign=6c5b14548fb9c06ee1b987debf88f639
HTTP POST Body:
{
"eventType": "AIContentScanNotPassed",
"scanSource": "video",
"vid": "8205ac89d3699e1fc08cd8f9b8486748",
"scanResults": [
{
"imageUrl": "http://img.videocc.net/uimage/8/8205ac89d3/8/8205ac89d3699e1fc08cd8f9b8486748_0_b.jpg",
"scene": "porn",
"label": "sexy",
"suggestion": "block",
"rate": 93.26
}
]
}
九、課件轉換完成
當上傳的課件(PPT、PDF 檔案)轉換圖片完成時,會產生此事件。
HTTP 請求方式為:POST。
事件內容
| 名稱 | 描述 |
|---|---|
| sign | 系統簽名,由 eventType、secretkey 按順序拼接並做 MD5 運算產生,md5("CoursewareConvertComplete"+secretKey)。 註:sign 不在 POST Body 中,而是作為回調 URL 中的一個參數返回 |
| eventType | 回調類型,取固定值:CoursewareConvertComplete |
| status | success 轉換成功, convertFailed 轉換失敗,auditNotPassed 內容審核不通過 |
| vid | 影片 ID |
| convertedImages | 轉換後的圖片,包含一個或多個圖片資訊,當轉換失敗時不返回。詳見下表: |
轉換後的圖片資訊如下:
| 名稱 | 描述 |
|---|---|
| pageNo | 課件頁碼,從 1 開始 |
| pageTitle | 課件頁標題,若 PPT 檔案中未設定頁標題,則值為空 |
| pageImage | 轉換後的圖片地址 |
| pageThumbnail | 縮圖地址 |
回調範例
Content-Type:application/json
Request URL:http://demo.ipolyv.cn/callback?sign=de9d5652a5682718c5662499c5e4e5bb
HTTP POST Body:
{
"eventType": "CoursewareConvertComplete",
"status": "success",
"vid": "f13e995735d99df23a7728be335e7a41_f",
"convertedImages": [
{
"pageNo": 1,
"pageTitle": "第一页的标题",
"pageImage": "https://doc-oss.polyv.net/images/2020/04/b0a8a0ed3425c117e6552cd027b6eb4b31243c9/b0a8a0e6d3425c117e6552cd027b6eb4b31243c9_0000.jpeg",
"pageThumbnail": "https://doc-oss.polyv.net/images/2020/04/b0a8a0ed3425c117e6552cd027b6eb4b31243c9/b0a8a0e6d3425c117e6552cd027b6eb4b31243c9_0000_s.jpeg"
},
{
"pageNo": 2,
"pageTitle": "第二页的标题",
"pageImage": "https://doc-oss.polyv.net/images/2020/04/b0a8a0ed3425c117e6552cd027b6eb4b31243c9/b0a8a0e6d3425c117e6552cd027b6eb4b31243c9_0001.jpeg",
"pageThumbnail": "https://doc-oss.polyv.net/images/2020/04/b0a8a0ed3425c117e6552cd027b6eb4b31243c9/b0a8a0e6d3425c117e6552cd027b6eb4b31243c9_0001_s.jpeg"
}
]
}
