O Intelligent Media Services (IMS) oferece eventos de callback para upload de ativos de mídia, processamento de mídia e edição em cloud. Configure eventos de callback específicos para receber atualizações oportunas sobre o progresso e o status das tarefas. As seções a seguir apresentam exemplos de corpos de mensagem para cada tipo de evento, juntamente com as descrições dos campos.
Uso
Em uma solicitação HTTP(S), o corpo da mensagem corresponde ao corpo da requisição. Para uma fila MNS, trata-se do conteúdo da mensagem recebida.
Lista de eventos
Tabela 1. Upload de ativo de mídia
|
Evento |
Descrição |
|
Um arquivo de áudio ou vídeo foi carregado. |
|
|
Upload de arquivo realizado a partir de uma URL. |
|
|
Uma imagem foi carregada. |
|
|
Carregamento de um ativo de mídia auxiliar concluído. |
|
|
Um fluxo de mídia foi registrado. |
|
|
Fluxo de mídia carregado com sucesso. |
|
|
Upload de fluxo de mídia efetuado via URL. |
Tabela 2. Gerenciamento de ativos de mídia
|
Evento |
Descrição |
|
Revisão manual finalizada. |
|
|
Registro de ativo de mídia concluído. |
|
|
Um ativo de mídia foi excluído. |
|
|
Atualização das informações básicas do ativo de mídia. |
Evento
FileUploadComplete
Exemplo de corpo da mensagem:
{
"EventType": "FileUploadComplete",
"UserId": 183322097756****,
"EventTime": "2022-07-15T08:48:14Z",
"MessageBody": {
"Status": "Success",
"FileUrl": "http://outin-***.oss-cn-shanghai.aliyuncs.com/sv/93ad7c5-182010aa3dc/93ad7c5-182010a****.mp4",
"MediaId": "c321b3a0041a71eda1590674a2ce****",
"AppId": "app-1000000",
"Size": "5510872",
"MediaType": "video"
}
}
Parâmetros do corpo da mensagem:
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | Horário do evento (UTC), no formato | |
MessageBody | - | Object | - | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
MediaType | String | Sim | O tipo do ativo de mídia. Valores válidos:
| |
FileUrl | String | Sim | A URL do arquivo. | |
Size | String | Sim | O tamanho do arquivo. | |
AppId | String | Sim | O ID da aplicação. | |
UserData | String | Não | Os dados definidos pelo usuário. | |
Status | String | Sim | O status do evento. Valores válidos: | |
UploadByURLComplete
Exemplo de corpo da mensagem:
{
"EventType": "UploadByURLComplete",
"UserId": 183322097756****,
"EventTime": "2022-07-15T08:48:14Z",
"MessageBody": {
"Status": "Success",
"SourceURL": "http://***/big_buck_bunny.mp4",
"MediaId": "c321b3a0041a71eda1590674a2ce****",
"AppId": "app-1000000",
"MediaType": "video",
"JobId": "88aabd2461ec4ad389f439f6ff92****"
}
}
A tabela a seguir descreve os parâmetros do corpo da mensagem.
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O formato é | |
MessageBody | - | Object | - | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
MediaType | String | Sim | O tipo do ativo de mídia. Valores válidos:
| |
SourceURL | String | Sim | A URL do arquivo de origem. | |
JobId | String | Sim | O ID da tarefa. | |
AppId | String | Sim | O ID da aplicação. | |
UserData | String | Não | Os dados definidos pelo usuário. | |
Status | String | Sim | O status da tarefa. Valores válidos: | |
ImageUploadComplete
Exemplo de corpo da mensagem:
{
"EventType": "ImageUploadComplete",
"UserId": 183322097756****,
"EventTime": "2022-07-06T08:27:52Z",
"MessageBody": {
"Status": "Success",
"FileUrl": "https://outin-***.oss-cn-shanghai.aliyuncs.com/image/default/E81B931FA75246B3972844D35291****-6-2.jpg",
"MediaId": "7e976e80fd0571ec82115523919d****",
"AppId": "app-1000000",
"Size": "132066",
"MediaType": "image"
}
}
O corpo da mensagem contém os seguintes parâmetros:
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O formato é | |
MessageBody | - | Object | - | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
MediaType | String | Sim | O tipo do ativo de mídia. Valor válido: | |
FileUrl | String | Sim | A URL do arquivo. | |
Size | String | Sim | O tamanho do arquivo. | |
AppId | String | Sim | O ID da aplicação. | |
UserData | String | Não | Os dados definidos pelo usuário. | |
Status | String | Sim | O status. Valores válidos: | |
AttachedMediaUploadComplete
Exemplo de corpo da mensagem:
{
"EventType": "AttachedMediaUploadComplete",
"UserId": 183322097756****,
"EventTime": "2022-07-15T06:38:33Z",
"MessageBody": {
"Status": "Success",
"FileUrl": "https://outin-***.oss-cn-shanghai.aliyuncs.com/subtitle/4C3C3021EC704639A9F2F55BB0C9****-3-3.ass",
"MediaId": "b3e59350040871ed9d535532918c****",
"AppId": "app-1000000",
"Size": "34758",
"MediaType": "text"
}
}
O corpo da mensagem contém os seguintes parâmetros.
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O formato é | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
MediaType | String | Sim | O tipo do ativo de mídia. Valor válido: | |
FileUrl | String | Sim | A URL do arquivo. | |
Size | String | Sim | O tamanho do arquivo. | |
AppId | String | Sim | O ID da aplicação. | |
UserData | String | Não | Os dados definidos pelo usuário. | |
Status | String | Sim | O status do upload. Valores válidos: | |
RegisterStreamComplete
Exemplo de corpo da mensagem:
{
"EventType": "RegisterStreamComplete",
"UserId": 127753575120****,
"EventTime": "2022-07-13T09:34:39Z",
"MessageBody": {
"Status": "Success",
"FileUrl": "https://***.oss-cn-shenzhen.aliyuncs.com/InterfaceTest/900d1-b****.aac",
"MediaId": "fa04bee0028e71edb10f81848c01****",
"UserData": "{\"MessageCallback\":{\"CallbackURL\":\"***\",\"CallbackType\":\"http\"}}"
}
}
A tabela a seguir lista os parâmetros do corpo da mensagem.
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O horário está no formato | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID da mídia. | |
FileUrl | String | Sim | A URL do arquivo. | |
UserData | String | Não | Dados opcionais definidos pelo usuário. | |
Status | String | Sim | O status. Os valores válidos são | |
StreamUploadComplete
Exemplo de corpo da mensagem:
{
"EventType": "StreamUploadComplete",
"UserId": 174809843091****,
"EventTime": "2022-07-05T12:53:30Z",
"MessageBody": {
"Status": "Success",
"FileUrl": "http://***.aliyuncs.com/vod-f1e0dd/stream/b37ff450fc6071ec9c5e472190a9****/a0c69a523724cc432c897dcaa6f3****-fd.mp4",
"MediaId": "b37ff450fc6071ec9c5e472190a9****",
"UserData": "{\"MessageCallback\":\"{\\\"CallbackURL\\\":\\\"***\\\",\\\"CallbackType\\\":\\\"http\\\"}\"}"
}
}
Campos do corpo da mensagem:
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário do evento em UTC. O formato é | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
FileUrl | String | Sim | A URL do arquivo. | |
UserData | String | Não | Os dados definidos pelo usuário. | |
Status | String | Sim | O status. Valores válidos: | |
UploadStreamByURLComplete: Upload de URL de fluxo de mídia concluído
Exemplo de corpo da mensagem:
{
"EventType": "UploadStreamByURLComplete",
"UserId": 174809843091****,
"EventTime": "2022-07-07T08:09:14Z",
"MessageBody": {
"Status": "Success",
"SourceURL": "http://***/example/html5/mov_bbb.mp4",
"MediaId": "0f65faa0fdcc71ecbfcd472190a9****",
"UserData": "{\"MessageCallback\":\"{\\\"CallbackURL\\\":\\\"***\\\",\\\"CallbackType\\\":\\\"http\\\"}\"}",
"JobId": "7f0d49297cb0fa50ab7341fd60f4****"
}
}
Esta tabela lista os parâmetros do corpo da mensagem.
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O formato é | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
SourceURL | String | Sim | A URL do arquivo source. | |
JobId | String | Sim | O ID do job. | |
UserData | String | Não | Os dados do usuário. | |
Status | String | Sim | O status do job. Valores válidos: Success ou Fail. | |
CreateAuditComplete: Revisão manual concluída
Exemplo de corpo de mensagem:
{
"EventType": "CreateAuditComplete",
"UserId": 183320223010****,
"EventTime": "2022-06-23T13:11:33Z",
"MessageBody": {
"Status": "Success",
"Auditor": "auditor",
"Comment": "test",
"AuditStatus": "Normal",
"MediaId": "71151b80f2d471ecb21b472190a9****",
"CreationTime": "2022-06-23T13:11:33Z",
"Reason": "test"
}
}
O corpo da mensagem contém os seguintes parâmetros:
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O formato é | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
AuditStatus | String | Sim | O status da revisão. Valores válidos:
| |
Auditor | String | Sim | O revisor que executou a revisão manual. | |
Reason | String | Sim | O motivo do resultado da revisão. | |
Comment | String | Sim | O comentário do revisor. | |
CreationTime | String | Sim | O horário de criação da tarefa de revisão manual. | |
Status | String | Sim | O estado da tarefa de revisão manual. Valores válidos:
| |
RegisterMediaComplete
Descrição do evento:
Para registrar um ativo de mídia na biblioteca de conteúdo, chame RegisterMediaInfo. Um callback é acionado após a conclusão da análise do ativo de mídia.
Exemplo de corpo de mensagem:
{
"EventType": "RegisterMediaComplete",
"UserId": 183320223010****,
"EventTime": "2022-06-23T13:11:33Z",
"MessageBody": {
"Status": "Success",
"MediaId": "71151b80f2d471ecb21b472190a9****"
}
}
O corpo da mensagem inclui os seguintes parâmetros:
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário do evento em UTC, no formato ISO 8601: | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
Status | String | Sim | O status da tarefa de registro. Os valores válidos incluem:
| |
UserData | String | Não | Dados definidos pelo usuário. | |
ErrorCode | String | Não | O código de erro retornado se a tarefa falhar. | |
ErrorMessage | String | Não | A mensagem de erro retornada se a tarefa falhar. | |
DeleteMediaComplete
Evento
Este callback é acionado quando você chama uma das seguintes operações OpenAPI:
Exemplo de corpo de mensagem:
{
"EventType": "DeleteMediaComplete",
"UserId": 183320223010****,
"EventTime": "2022-06-23T13:11:33Z",
"MessageBody": {
"Status": "Success",
"MediaId": "71151b80f2d471ecb21b472190a9****",
"DeleteType": "all"
}
}
O corpo da mensagem contém os seguintes parâmetros.
Parâmetro | Tipo | Obrigatório | Descrição | |
EventType | String | Sim | O tipo do evento. | |
UserId | Long | Sim | O ID do usuário. | |
EventTime | String | Sim | O horário em UTC em que o evento ocorreu, no formato | |
MessageBody | - | Object | Sim | O corpo da mensagem. |
MediaId | String | Sim | O ID do ativo de mídia. | |
Status | String | Sim | O status da tarefa de exclusão do ativo de mídia. Valores válidos:
| |
DeleteType | String | Sim | O tipo de recurso a ser excluído. Valores válidos:
| |
FileURLs | String | Não | Este parâmetro está presente apenas se | |
ErrorCode | String | Não | O código de erro. | |
ErrorMessage | String | Não | A mensagem de erro. | |
MediaBaseChangeComplete: Informações básicas de mídia atualizadas
Descrição do evento:
Chamar uma das seguintes operações OpenAPI aciona este callback:
Exemplo de corpo de mensagem:
{
"EventType": "MediaBaseChangeComplete",
"UserId": 183320223010****,
"EventTime": "2022-06-23T13:11:33Z",
"MessageBody": {
"Status":"Success",
"MediaId":"3b46b391419aj294m83b459f7435****",
"MediaType":"video",
"OperateMode":"update",
"MediaContent":"{\"CoverURL\":\"{\\\"OldValue\\\":\\\"https://outin-8e7b1c7d2a3811eb83da00163e00****.oss-cn-shanghai.aliyuncs.com/0202342e8ae944d09695fd7dbc6d69dc/snapshots/4a6c26eb46a841a3b60c1d56acce****-00005.jpg\\\",\\\"NewValue\\\":\\\"http://cdn.com/ee.png\\\"}\"}"
}
}
O corpo da mensagem contém os seguintes parâmetros:
Parâmetro | Tipo | Obrigatório | Descrição | ||
EventType | String | Sim | O tipo do evento. | ||
UserId | Long | Sim | O ID do usuário. | ||
EventTime | String | Sim | O horário em que o evento ocorreu, em UTC. O formato deve ser | ||
MessageBody | - | Object | Sim | O corpo da mensagem. | |
Status | String | Sim | O status da tarefa de atualização do ativo de mídia. Valores válidos:
| ||
MediaType | String | Sim | O tipo de mídia. Valores válidos:
| ||
MediaId | String | Sim | O ID da mídia. | ||
OperateMode | String | Sim | O modo de operação. Valores válidos:
| ||
MediaContent | - | Object | Sim | O conteúdo da modificação do ativo de mídia. Este objeto contém informações básicas para arquivos de áudio e vídeo. | |
Title | String | Não | O título, formatado como uma string JSON. Exemplo: | ||
Description | String | Não | A descrição, formatada como uma string JSON. Exemplo: | ||
CoverURL | String | Não | A URL da imagem de miniatura, formatada como uma string JSON. Exemplo: | ||
CateId | String | Não | O ID da categoria, formatado como uma string JSON. Exemplo: | ||
Tags | String | Não | As tags, formatadas como uma string JSON. Exemplo: | ||