Uso do Amazon EventBridge com o streaming em tempo real do IVS - Amazon IVS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Uso do Amazon EventBridge com o streaming em tempo real do IVS

Você pode usar o Amazon EventBridge para monitorar seus streams do Amazon Interactive Video Service (IVS).

O Amazon IVS envia eventos de alteração sobre o status de seus streams para o Amazon EventBridge. Todos os eventos que são fornecidos são válidos. No entanto, os eventos são enviados em uma base de melhor esforço, o que significa que não há garantia de que:

  • Os eventos serão entregues: um evento designado pode ocorrer (por exemplo, um participante realiza uma publicação), mas é possível que o Amazon IVS não envie um evento correspondente para o EventBridge. O Amazon IVS tenta entregar eventos por várias horas antes de desistir.

  • Os eventos que são entregues vão chegar em um período especificado: você pode receber eventos com até algumas horas de atraso.

  • Os eventos serão entregues em ordem: os eventos podem estar fora de ordem, especialmente se forem enviados com um curto intervalo de tempo. Por exemplo, você poderá ver participante não publicado antes de visualizá-lo como publicado.

Embora seja raro que os eventos estejam ausentes, atrasados ou fora de sequência, você deve lidar com essas possibilidades se você escrever programas críticos para os negócios que dependem da ordem ou da existência de eventos de notificação.

Você pode criar regras do EventBridge para qualquer um dos seguintes eventos.

Tipo de evento Evento Enviado quando …
Alteração do estado de composição do IVS Falha no destino Uma tentativa de envio para um destino falhou. Por exemplo, a transmissão para um canal falhou porque não havia chave de transmissão ou porque outra transmissão estava acontecendo.
Alteração do estado de composição do IVS Início do destino A saída para um destino foi iniciada com sucesso.
Alteração do estado de composição do IVS Fim do destino Conclusão da saída para um destino.
Alteração do estado de composição do IVS Reconexão de destino A saída para um destino foi interrompida e há uma tentativa de reconexão em andamento.
Alteração do estado de composição do IVS Início da sessão Uma sessão de composição foi criada. Esse evento é acionado quando um pipeline de processo de composição é inicializado com sucesso. Nesse momento, o funil de composição terá feito a inscrição com sucesso em um palco, estará recebendo mídia e será capaz de compor vídeos.
Alteração do estado de composição do IVS Término da sessão Uma sessão de composição concluída.
Alteração do estado de composição do IVS Falha na sessão Falha na inicialização de um pipeline de composição devido à indisponibilidade dos recursos do palco ou a qualquer outro erro interno.
Atualização de palco do IVS Publicação por participante Um participante começa a publicar em um palco.
Atualização de palco do IVS Publicação interrompida por participante Um participante parou de publicar em um palco.

Criação de regras do Amazon EventBridge para o Amazon IVS

Você pode criar uma regra do que é acionado em um evento emitido pelo Amazon IVS. Siga as etapas em Create a rule in Amazon EventBridge no Guia do usuário do Amazon EventBridge. Ao selecionar um serviço, escolha Interactive Video Service (IVS).

Exemplos: alteração do estado de composição do IVS

Falha no destino: esse evento é enviado quando uma tentativa de saída para um destino falha. Por exemplo, a transmissão para um canal falhou porque não havia chave de transmissão ou porque outra transmissão estava acontecendo.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination Failure", "stage_arn": "<stage-arn>", "id": "<Destination-id>", "reason": "eg. stream key invalid" } }

Início do destino: esse evento é enviado quando a saída para um destino é iniciada com sucesso.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination Start", "stage_arn": "<stage-arn>", "id": "<destination-id>", } }

Fim do destino: esse evento é enviado quando a saída para um destino é concluída.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination End", "stage_arn": "<stage-arn>", "id": "<Destination-id>", } }

Reconexão de destino: esse evento é enviado quando a saída para um destino é interrompida e há uma tentativa de reconexão.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Destination Reconnecting", "stage_arn": "<stage-arn>", "id": "<Destination-id>", } }

Início da sessão: esse evento é enviado quando uma sessão de composição foi criada. Esse evento é acionado quando um pipeline de processo de composição é inicializado com sucesso. Nesse momento, o funil de composição terá feito a inscrição com sucesso em um palco, estará recebendo mídia e será capaz de compor vídeos.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Session Start", "stage_arn": "<stage-arn>" } }

Fim da sessão: esse evento é enviado quando uma sessão de composição é concluída e todos os recursos são excluídos.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Session End", "stage_arn": "<stage-arn>" } }

Falha na sessão: esse evento é enviado quando um pipeline de composição falha na inicialização devido à falta de recursos do palco, à falta de participantes no palco ou a qualquer outro erro interno.

{ "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "IVS Composition State Change", "source": "aws.ivs", "account": "aws_account_id", "time": "2017-06-12T10:23:43Z", "region": "us-east-1", "resources": [ "arn:aws:ivs:us-east-1:aws_account_id:composition/123456789012" ], "detail": { "event_name": "Session Failure", "stage_arn": "<stage-arn>", "reason": "eg. no participants in the stage" } }

Exemplos: atualização de palco

Os eventos de atualização de palco incluem um nome de evento (que classifica o evento) e metadados sobre o evento. Os metadados incluem o ID do participante que acionou o evento, os IDs de sessão e palco associados e o ID do usuário.

Publicação por participante: este evento é enviado quando um participante começa a publicar em um palco.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Stage Update", "source": "aws.ivs", "account": "123456789012", "time": "2020-06-23T20:12:36Z", "region": "us-west-2", "resources": [ "arn:aws:ivs:us-west-2:123456789012:stage/AbCdef1G2hij" ], "detail": { "session_id": "st-1234567890", "event_name": "Participant Published", "user_id": "Your User Id", "participant_id": "xYz1c2d3e4f" } }

Publicação interrompida por participante: este evento é enviado quando um participante para de publicar em um palco.

{ "version": "0", "id": "12345678-1a23-4567-a1bc-1a2b34567890", "detail-type": "IVS Stage Update", "source": "aws.ivs", "account": "123456789012", "time": "2020-06-23T20:12:36Z", "region": "us-west-2", "resources": [ "arn:aws:ivs:us-west-2:123456789012:stage/AbCdef1G2hij" ], "detail": { "session_id": "st-1234567890", "event_name": "Participant Unpublished", "user_id": "Your User Id", "participant_id": "xYz1c2d3e4f" } }