通知發布成功後,您可以在Message ServiceMNS(Message Service)中通過隊列方式或主題通知方式接收訊息通知。本文為您介紹如何接收訊息通知。
前提條件
您已設定訊息通知。具體操作,請參見設定訊息通知。
隊列方式接收訊息通知
- 說明
樣本語言採用Java,其他語言使用說明,請參見SDK使用手冊。
主題通知方式接收訊息通知
- 說明
樣本語言採用Java,其他語言使用說明,請參見SDK使用手冊。
單任務訊息格式
參數名稱 | 說明 |
jobId(JobId) | 作業ID。 |
requestId(RequestId) | 請求ID。 |
type(Type) | 作業類型。值為:
|
state(State) | 作業狀態。值為:
|
code | 錯誤碼。任務出錯時返回。 |
msg | 錯誤訊息詳情。任務出錯時返回。 |
UrlPattern | 截圖含預留位置的URL,相當於URL模板。 說明 type(Type)為Snapshot,且截圖情境為按指定時間點截圖時返回。 |
LastUrl | 最後一張截圖的URL。 說明 type(Type)為Snapshot,且截圖情境為按指定時間點截圖時返回。 |
Count | 截圖總張數。 說明 type(Type)為Snapshot,且截圖情境為按指定時間點截圖時返回。 |
TimeArray | 截圖時間點,由小到大。 說明 type(Type)為Snapshot,且截圖情境為按指定時間點截圖時返回。 |
成功回調樣本
{
"jobId": "8f91f1b630f3469eb5ecf445028f****",
"JobId": "8f91f1b630f3469eb5ecf445028f****",
"Type": "Snapshot",
"userData": "{}",
"UserData": "{}",
"State": "Success",
"state": "Success",
"type": "Snapshot",
"LastUrl": "http://example.oss-cn-shanghai.aliyuncs.com/example_output/2021-11-14/V4/Async-V2-00005.jpg",
"TimeArray": [10050, 50000, 110000, 1000500, 1100500],
"UrlPattern": "http://eaxmple.oss-cn-shanghai.aliyuncs.com/example_output/2021-11-14/V4/Async-V2-{Count}.jpg",
"Count": 5
}
失敗回調樣本
{
"msg": "TimeArray greater than video duration.",
"Msg": "TimeArray greater than video duration.",
"code": "InvalidParameter.TimeArray",
"userData": "{}",
"UserData": "{}",
"type": "Snapshot",
"Code": "InvalidParameter.TimeArray",
"jobId": "f8abc5d9dee0425fa26bb9946df1****",
"Type": "Snapshot",
"State": "Fail",
"UrlPattern": "http://example.oss-cn-shanghai.aliyuncs.com/example_output/2023-11-15/regression_test/TimePoint/V1/Async-V1-{Count}.jpg",
"TimeArray": [10050, 50000, 110000, 1000500, 1100500, 1800000],
"state": "Fail",
"JobId": "f8abc5d9dee0425fa26bb9946df1****"
}
工作流程訊息格式
媒體工作流程訊息通知的訊息體是JSON格式,詳細的欄位名稱、類型、描述請參見新增媒體中媒體工作流程訊息部分。
結構的層次定義如下:
開始
活動基本屬性
中活動類型Type
是Start
。結構
詳細說明見下文代碼注釋。
完成
活動基本屬性
中活動類型Type
是Report
。樣本
{ //頂層,JSON對象,定義:{當前活動基本屬性,工作流程執行對象} //當前活動基本屬性:非獨立對象,是直接屬於頂層的索引值屬性。定義:{工作流程執行ID,活動名稱,活動類型,活動狀態,錯誤資訊(如有)} "RunId": "8f8aba5a62ab4127ae2add18da20****", "Name": "Act-4", "Type": "Report", "State": "Success", //工作流程執行詳情對象:JSON對象,定義:{工作流程執行ID,媒體工作流程ID,媒體工作流程名稱,媒體ID,輸入檔案,工作流程執行類型,使用中的物件數組,建立時間} "MediaWorkflowExecution": { "Name": "ConcurrentSuccess", "RunId": "8f8aba5a62ab4127ae2add18da20****", "Input": { "InputFile": { "Bucket": "exampleBucket****", "Location": "oss-test", "Object": "mediaWorkflow/ConcurrentSuccess/01.wmv", } }, "State": "Success", "MediaId": "2be491ab4cb6499cd0befe5fcf0c****", //使用中的物件數組:JSON對象,包含執行到目前狀態的所有活動 //例如:開始訊息中只有一個Start使用中的物件,完成訊息則包含所有使用中的物件。 //定義:[使用中的物件1,使用中的物件2,...] "ActivityList": [ //使用中的物件:JSON對象,定義:{活動名稱,活動類型,作業ID,活動狀態,開始時間,結束時間,錯誤資訊(如有)} { "RunId": "8f8aba5a62ab4127ae2add18da20****", "Name": "Act-1", "Type": "Start", "State": "Success", "StartTime": "2016-03-15T02: 53: 41Z", "EndTime": "2016-03-15T02: 53: 41Z", }, { "RunId": "8f8aba5a62ab4127ae2add18da20****", "Name": "Act-2", "Type": "Transcode", "JobId": "f34b6d1429dd491faa7a6c1c8f90****", "State": "Success", "StartTime": "2016-03-15T02: 53: 43Z", "EndTime": "2016-03-15T02: 53: 47Z", }, { "RunId": "8f8aba5a62ab4127ae2add18da20****", "Name": "Act-3", "Type": "Snapshot", "JobId": "c14150be33304825a5d67cd5364c****", "State": "Success", "StartTime": "2016-03-15T02: 53: 44Z", "EndTime": "2016-03-15T02: 53: 45Z", }, { "RunId": "8f8aba5a62ab4127ae2add18da20****", "Name": "Act-4", "Type": "Report", "State": "Success", "StartTime": "2016-03-15T02: 53: 49Z", "EndTime": "2016-03-15T02: 53: 49Z", } ], "CreationTime": "2016-03-15T02: 53: 39Z", } }