tencent cloud

文档反馈

添加数字水印

最后更新时间:2023-12-30 16:26:10

    功能说明

    数据万象支持自定义设置回调 URL,在任务完成后,系统向该 URL 发送 HTTP POST 请求,请求体中包含通知内容。您可通过配置的回调地址及时了解任务处理的进展和状态,以便进行其他业务操作。

    回调内容

    任务完成后,系统会向您设置的回调地址发送回调内容,该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
    <Response>
    <EventName>TaskFinish</EventName>
    <JobsDetail>
    <Code>Success</Code>
    <CreationTime>2022-06-30T18:37:37+0800</CreationTime>
    <EndTime>2022-06-30T18:39:08+0800</EndTime>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <JobId>ja8de3b46f86011ec9452c1c27f56a659</JobId>
    <Message/>
    <Operation>
    <DigitalWatermark>
    <Message>123456789ab</Message>
    <Type>Text</Type>
    <Version>V1</Version>
    </DigitalWatermark>
    <MediaInfo>
    <Format>
    <Bitrate>2533.526000</Bitrate>
    <Duration>215.638000</Duration>
    <FormatLongName>QuickTime / MOV</FormatLongName>
    <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>
    <NumProgram>0</NumProgram>
    <NumStream>2</NumStream>
    <Size>68290577</Size>
    <StartTime>0.000000</StartTime>
    </Format>
    <Stream>
    <Audio>
    <Bitrate>256.050000</Bitrate>
    <Channel>2</Channel>
    <ChannelLayout>stereo</ChannelLayout>
    <CodecLongName>AAC (Advanced Audio Coding)</CodecLongName>
    <CodecName>aac</CodecName>
    <CodecTag>0x6134706d</CodecTag>
    <CodecTagString>mp4a</CodecTagString>
    <CodecTimeBase>1/48000</CodecTimeBase>
    <Duration>215.637000</Duration>
    <Index>1</Index>
    <Language>eng</Language>
    <SampleFmt>fltp</SampleFmt>
    <SampleRate>48000</SampleRate>
    <StartTime>0.000000</StartTime>
    <Timebase>1/48000</Timebase>
    </Audio>
    <Subtitle/>
    <Video>
    <AvgFps>24.000000</AvgFps>
    <Bitrate>2272.528000</Bitrate>
    <CodecLongName>H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10</CodecLongName>
    <CodecName>h264</CodecName>
    <CodecTag>0x31637661</CodecTag>
    <CodecTagString>avc1</CodecTagString>
    <CodecTimeBase>1/12288</CodecTimeBase>
    <ColorPrimaries>unknown</ColorPrimaries>
    <ColorRange>unknown</ColorRange>
    <ColorTransfer>unknown</ColorTransfer>
    <Duration>215.583333</Duration>
    <Fps>24.000000</Fps>
    <HasBFrame>2</HasBFrame>
    <Height>1080</Height>
    <Index>0</Index>
    <Language>und</Language>
    <Level>40</Level>
    <NumFrames>5174</NumFrames>
    <PixFormat>yuv420p</PixFormat>
    <Profile>High</Profile>
    <RefFrames>1</RefFrames>
    <Rotation>0.000000</Rotation>
    <StartTime>0.000000</StartTime>
    <Timebase>1/12288</Timebase>
    <Width>1920</Width>
    </Video>
    </Stream>
    </MediaInfo>
    <MediaResult>
    <OutputFile>
    <Bucket>test-123456789</Bucket>
    <Md5Info>
    <Md5>043221daee3f4e15ff13f42329f15eb1</Md5>
    <ObjectName>output/digital.mp4</ObjectName>
    </Md5Info>
    <ObjectName>output/digital.mp4</ObjectName>
    <ObjectPrefix/>
    <Region>ap-chongqing</Region>
    </OutputFile>
    </MediaResult>
    <Output>
    <Bucket>test-123456789</Bucket>
    <Object>output/digital.mp4</Object>
    <Region>ap-chongqing</Region>
    </Output>
    <UserData>This is my DigitalWatermark job.</UserData>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <StartTime>2022-06-30T18:37:38+0800</StartTime>
    <State>Success</State>
    <SubTag>DigitalWatermark</SubTag>
    <Tag>DigitalWatermark</Tag>
    </JobsDetail>
    </Response>
    具体的数据内容如下:
    节点名称(关键字)
    父节点
    描述
    类型
    Response
    保存结果的容器
    Container
    Container 节点 Response 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    EventName
    Response
    固定值,为 TaskFinish
    String
    JobsDetail
    Response
    任务的详细信息
    Container
    Container 节点 JobsDetail 的内容: 同提交数字水印任务接口中的 Response.JobsDetail
    如果任务是通过工作流触发的,Response.JobsDetail.Input 还会包含 CosHeaders 节点,类型为 Container 数组。
    Container 节点 CosHeaders 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Key
    Response.JobsDetail.Input.CosHeaders
    自定义 Header 的名称
    String
    Value
    Response.JobsDetail.Input.CosHeaders
    自定义 Header 的值
    String
    如果任务是通过工作流触发的,Response.JobsDetail 还会包含 Workflow 节点,类型为 Container。
    Container 节点 Workflow 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    RunId
    Response.Workflow
    工作流实例 ID
    String
    WorkflowId
    Response.Workflow
    工作流 ID
    String
    WorkflowName
    Response.Workflow
    工作流名称
    String
    Name
    Response.Workflow
    工作流节点名称
    String

    实际案例

    案例 1:通过任务接口触发的任务回调

    <Response>
    <EventName>TaskFinish</EventName>
    <JobsDetail>
    <Code>Success</Code>
    <CreationTime>2022-06-30T18:37:37+0800</CreationTime>
    <EndTime>2022-06-30T18:39:08+0800</EndTime>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <JobId>ja8de3b46f86011ec9452c1c27f56a659</JobId>
    <Message/>
    <Operation>
    <DigitalWatermark>
    <Message>123456789ab</Message>
    <Type>Text</Type>
    <Version>V1</Version>
    </DigitalWatermark>
    <MediaInfo>
    <Format>
    <Bitrate>2533.526000</Bitrate>
    <Duration>215.638000</Duration>
    <FormatLongName>QuickTime / MOV</FormatLongName>
    <FormatName>mov,mp4,m4a,3gp,3g2,mj2</FormatName>
    <NumProgram>0</NumProgram>
    <NumStream>2</NumStream>
    <Size>68290577</Size>
    <StartTime>0.000000</StartTime>
    </Format>
    <Stream>
    <Audio>
    <Bitrate>256.050000</Bitrate>
    <Channel>2</Channel>
    <ChannelLayout>stereo</ChannelLayout>
    <CodecLongName>AAC (Advanced Audio Coding)</CodecLongName>
    <CodecName>aac</CodecName>
    <CodecTag>0x6134706d</CodecTag>
    <CodecTagString>mp4a</CodecTagString>
    <CodecTimeBase>1/48000</CodecTimeBase>
    <Duration>215.637000</Duration>
    <Index>1</Index>
    <Language>eng</Language>
    <SampleFmt>fltp</SampleFmt>
    <SampleRate>48000</SampleRate>
    <StartTime>0.000000</StartTime>
    <Timebase>1/48000</Timebase>
    </Audio>
    <Subtitle/>
    <Video>
    <AvgFps>24.000000</AvgFps>
    <Bitrate>2272.528000</Bitrate>
    <CodecLongName>H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10</CodecLongName>
    <CodecName>h264</CodecName>
    <CodecTag>0x31637661</CodecTag>
    <CodecTagString>avc1</CodecTagString>
    <CodecTimeBase>1/12288</CodecTimeBase>
    <ColorPrimaries>unknown</ColorPrimaries>
    <ColorRange>unknown</ColorRange>
    <ColorTransfer>unknown</ColorTransfer>
    <Duration>215.583333</Duration>
    <Fps>24.000000</Fps>
    <HasBFrame>2</HasBFrame>
    <Height>1080</Height>
    <Index>0</Index>
    <Language>und</Language>
    <Level>40</Level>
    <NumFrames>5174</NumFrames>
    <PixFormat>yuv420p</PixFormat>
    <Profile>High</Profile>
    <RefFrames>1</RefFrames>
    <Rotation>0.000000</Rotation>
    <StartTime>0.000000</StartTime>
    <Timebase>1/12288</Timebase>
    <Width>1920</Width>
    </Video>
    </Stream>
    </MediaInfo>
    <MediaResult>
    <OutputFile>
    <Bucket>test-123456789</Bucket>
    <Md5Info>
    <Md5>043221daee3f4e15ff13f42329f15eb1</Md5>
    <ObjectName>output/digital.mp4</ObjectName>
    </Md5Info>
    <ObjectName>output/digital.mp4</ObjectName>
    <ObjectPrefix/>
    <Region>ap-chongqing</Region>
    </OutputFile>
    </MediaResult>
    <Output>
    <Bucket>test-123456789</Bucket>
    <Object>output/digital.mp4</Object>
    <Region>ap-chongqing</Region>
    </Output>
    <UserData>This is my DigitalWatermark job.</UserData>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <StartTime>2022-06-30T18:37:38+0800</StartTime>
    <State>Success</State>
    <SubTag>DigitalWatermark</SubTag>
    <Tag>DigitalWatermark</Tag>
    </JobsDetail>
    </Response>

    案例 2:通过任务接口触发的任务回调, 格式为 JSON

    {
    "EventName": "TaskFinish",
    "JobsDetail": {
    "Code": "Success",
    "CreationTime": "2022-06-30T18:37:37+0800",
    "EndTime": "2022-06-30T18:39:08+0800",
    "Input": {
    "BucketId": "test-123456789",
    "Object": "input/demo.mp4",
    "Region": "ap-chongqing"
    },
    "JobId": "ja8de3b46f86011ec9452c1c27f56a659",
    "Operation": {
    "DigitalWatermark": {
    "Message": "123456789ab",
    "Type": "Text",
    "Version": "V1"
    },
    "MediaInfo": {
    "Format": {
    "Bitrate": "2533.526000",
    "Duration": "215.638000",
    "FormatLongName": "QuickTime / MOV",
    "FormatName": "mov,mp4,m4a,3gp,3g2,mj2",
    "NumProgram": "0",
    "NumStream": "2",
    "Size": "68290577",
    "StartTime": "0.000000"
    },
    "Stream": {
    "Audio": {
    "Bitrate": "256.050000",
    "Channel": "2",
    "ChannelLayout": "stereo",
    "CodecLongName": "AAC (Advanced Audio Coding)",
    "CodecName": "aac",
    "CodecTag": "0x6134706d",
    "CodecTagString": "mp4a",
    "CodecTimeBase": "1/48000",
    "Duration": "215.637000",
    "Index": "1",
    "Language": "eng",
    "SampleFmt": "fltp",
    "SampleRate": "48000",
    "StartTime": "0.000000",
    "Timebase": "1/48000"
    },
    "Video": {
    "AvgFps": "24.000000",
    "Bitrate": "2272.528000",
    "CodecLongName": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
    "CodecName": "h264",
    "CodecTag": "0x31637661",
    "CodecTagString": "avc1",
    "CodecTimeBase": "1/12288",
    "ColorPrimaries": "unknown",
    "ColorRange": "unknown",
    "ColorTransfer": "unknown",
    "Duration": "215.583333",
    "Fps": "24.000000",
    "HasBFrame": "2",
    "Height": "1080",
    "Index": "0",
    "Language": "und",
    "Level": "40",
    "NumFrames": "5174",
    "PixFormat": "yuv420p",
    "Profile": "High",
    "RefFrames": "1",
    "Rotation": "0.000000",
    "StartTime": "0.000000",
    "Timebase": "1/12288",
    "Width": "1920"
    }
    }
    },
    "MediaResult": {
    "OutputFile": {
    "Bucket": "test-123456789",
    "Md5Info": {
    "Md5": "043221daee3f4e15ff13f42329f15eb1",
    "ObjectName": "output/digital.mp4"
    },
    "ObjectName": "output/digital.mp4",
    "Region": "ap-chongqing"
    }
    },
    "Output": {
    "Bucket": "test-123456789",
    "Object": "output/digital.mp4",
    "Region": "ap-chongqing"
    },
    "UserData": "This is my DigitalWatermark job."
    },
    "QueueId": "p2242ab62c7c94486915508540933a2c6",
    "StartTime": "2022-06-30T18:37:38+0800",
    "State": "Success",
    "SubTag": "DigitalWatermark",
    "Tag": "DigitalWatermark"
    }
    }