StreamEvent é um evento que pode ter o tipo “streamCreated” ou “streamDestroyed”. Esses eventos são disparados pelo objeto Session quando outro cliente inicia ou interrompe a publicação de um stream para um Sessão. No caso de um stream de um cliente local, o objeto Publisher dispara o evento.

Exemplo — evento `streamCreated` disparado pelo objeto `Session`

O código a seguir se conecta a uma sessão e configura um ouvinte de eventos para quando um stream publicado por outro cliente for criado:

session.on("streamCreated", function(event) {
  subscriber = session.subscribe(event.stream, targetElement);
}).connect(token);

Exemplo — evento `streamDestroyed` disparado pelo objeto `Session`

O código a seguir se conecta a uma sessão e configura um ouvinte de eventos para quando os fluxos de outros clientes forem encerrados:

session.on("streamDestroyed", function(event) {
    console.log("Stream " + event.stream.name + " ended. " + event.reason);
}).connect(token);

Exemplo — evento `streamCreated` disparado por um objeto `Publisher`

O código a seguir publica um fluxo e adiciona um ouvinte de eventos para quando a transmissão começar

var publisher = session.publish(targetElement)
  .on("streamCreated", function(event) {
    console.log("Publisher started streaming.");
  });

Exemplo — evento `streamDestroyed` disparado por um objeto `Publisher`

O código a seguir publica um fluxo e mantém o Publisher no DOM HTML quando a transmissão é interrompida:

var publisher = session.publish(targetElement)
  .on("streamDestroyed", function(event) {
    event.preventDefault();
    console.log("Publisher stopped streaming.");
  });

Propriedades

Nome Tipo Descrição
cancelable Booleano Se o evento possui um comportamento padrão que pode ser cancelado (true) ou não (false). É possível cancelar o comportamento padrão chamando o preventDefault() método do objeto StreamEvent na função do ouvinte de eventos. O streamDestroyed O evento pode ser cancelado. (Veja preventDefault().)
reason String Para um streamDestroyed evento, uma descrição do motivo pelo qual o fluxo foi destruído. Essa propriedade pode assumir um dos seguintes valores: - "clientDisconnected" — Um cliente se desconectou da sessão chamando o disconnect() método do objeto Session ou ao fechar o navegador. (Veja Session.disconnect().) - "forceDisconnected" — Um moderador desconectou o autor da transmissão da sessão, chamando o forceDisconnect() método do objeto `Session`. (Veja Session.forceDisconnect().) - "forceUnpublished" — Um moderador obrigou o autor da transmissão a interromper a transmissão, ao ligar para o forceUnpublish() método do objeto `Session`. (Veja Session.forceUnpublish().) - "mediaStopped" — O usuário que está transmitindo a transmissão interrompeu o compartilhamento de mídia. Por exemplo, o usuário fechou a janela que servia de fonte para uma transmissão de compartilhamento de tela. Ou o usuário desconectou um microfone que era a fonte de áudio para uma transmissão apenas de áudio. Ou as fontes de vídeo e áudio são elementos MediaStreamTrack e as fontes da mídia foram interrompidas ou destruídas. - "networkDisconnected" — A conexão de rede foi interrompida abruptamente (por exemplo, o cliente perdeu a conexão com a internet) e foi detectada pela plataforma da Video API da Vonage. - "reset" — A transmissão de uma editora foi interrompida em resposta a uma solicitação dirigida à sua Publisher.destroy() método. - "serverRotation" — O stream do Publisher foi destruído porque o cliente foi desconectado da sessão devido a Rotação do servidor da Video API. Dependendo do contexto, essa descrição pode permitir que o desenvolvedor refine o curso de ação que adotará em resposta a um evento. Para um streamCreated evento, essa string não está definida.
stream Transmissão Um objeto `Stream` correspondente ao fluxo que foi adicionado (no caso de um streamCreated evento) ou excluído (no caso de um streamDestroyed evento).
streams Matriz Obsoleto. Use o stream propriedade. A streamCreated ou streamDestroyed O evento é disparado sempre que um fluxo é adicionado ou removido.

Métodos

Nome Descrição
isDefaultPrevented() → {Boolean} Se o comportamento padrão do evento foi impedido por meio de uma chamada para preventDefault() (true) ou não (false).
preventDefault() Impede que o comportamento padrão associado ao evento ocorra.

isDefaultPrevented() → {Boolean}

Se o comportamento padrão do evento foi impedido por meio de uma chamada para preventDefault() (true) ou não (false). Veja preventDefault().

Devoluções:

preventDefault()

Impede que o comportamento padrão associado ao evento ocorra.

Para o streamDestroyed evento disparado pelo objeto Session, o comportamento padrão é que todos os objetos Subscriber inscritos no fluxo sejam cancelados e removidos do DOM HTML. Cada objeto Subscriber dispara um destroyed evento que ocorre quando o elemento é removido do DOM HTML. Se você chamar o preventDefault() método no ouvinte de eventos para o streamDestroyed evento, o comportamento padrão é suspenso e você pode limpar os objetos Subscriber usando seu próprio código. Consulte Session.getSubscribersForStream().

Para o streamDestroyed evento disparado por um objeto Publisher; o comportamento padrão é que o objeto Publisher seja removido do DOM HTML. O objeto Publisher dispara um destroyed evento que ocorre quando o elemento é removido do DOM HTML. Se você chamar o preventDefault() método no ouvinte de eventos para o streamDestroyed evento, o comportamento padrão é impedido, e você pode manter o Publisher para reutilização ou liberá-lo usando seu próprio código.

Para verificar se um evento possui um comportamento padrão, verifique o cancelable propriedade do objeto do evento.

Ligue para o preventDefault() método na função de ouvinte do evento.