StreamEvent es un evento que puede tener el tipo «streamCreated» o «streamDestroyed». El objeto Session envía estos eventos cuando otro cliente inicia o detiene la publicación de un flujo a un Sesión. En el caso de la transmisión de un cliente local, el objeto Publisher envía el evento.
Ejemplo: evento «streamCreated» enviado por el objeto «Session»
El siguiente código se conecta a una sesión y configura un detector de eventos para cuando se cree un flujo publicado por otro cliente:
session.on("streamCreated", function(event) {
subscriber = session.subscribe(event.stream, targetElement);
}).connect(token);
Ejemplo: evento «streamDestroyed» enviado por el objeto «Session»
El siguiente código se conecta a una sesión y configura un detector de eventos para cuando finalicen las transmisiones de otros clientes:
session.on("streamDestroyed", function(event) {
console.log("Stream " + event.stream.name + " ended. " + event.reason);
}).connect(token);
Ejemplo: evento «streamCreated» enviado por un objeto Publisher
El siguiente código publica un flujo y añade un detector de eventos para cuando comience la transmisión
var publisher = session.publish(targetElement)
.on("streamCreated", function(event) {
console.log("Publisher started streaming.");
});
Ejemplo: evento «streamDestroyed» enviado por un objeto Publisher
El siguiente código publica un flujo y deja el Publisher en el DOM de HTML cuando se detiene la transmisión:
var publisher = session.publish(targetElement)
.on("streamDestroyed", function(event) {
event.preventDefault();
console.log("Publisher stopped streaming.");
});
Propiedades
| Nombre | Tipo | Descripción |
|---|---|---|
cancelable |
Booleano | Si el evento tiene un comportamiento predeterminado que se puede cancelar (true) o no (false). Puedes anular el comportamiento predeterminado llamando a la función preventDefault() método del objeto StreamEvent en la función de escucha de eventos. El streamDestroyed El evento se puede cancelar. (Véase preventDefault().) |
reason |
Cadena | Para un streamDestroyed evento, una descripción del motivo por el que se destruyó el flujo. Esta propiedad puede tener uno de los siguientes valores: - "clientDisconnected" — Un cliente se ha desconectado de la sesión llamando a la disconnect() método del objeto Session o al cerrar el navegador. (Véase Session.disconnect().) - "forceDisconnected" — Un moderador ha desconectado al autor de la retransmisión de la sesión, mediante la orden forceDisconnect() método del objeto `Session`. (Véase Session.forceDisconnect().) - "forceUnpublished" — Un moderador ha obligado al editor de la retransmisión a dejar de emitirla, llamando al forceUnpublish() método del objeto `Session`. (Véase Session.forceUnpublish().) - "mediaStopped" — El usuario que está transmitiendo ha dejado de compartir contenido multimedia. Por ejemplo, el usuario ha cerrado la ventana que servía de fuente para una transmisión de pantalla compartida. O bien, el usuario ha desconectado un micrófono que era la fuente de audio para una transmisión solo de audio. O bien, las fuentes de vídeo y audio son elementos `MediaStreamTrack` y las fuentes de los contenidos multimedia se han detenido o se han eliminado. - "networkDisconnected" — La conexión de red se interrumpió de forma repentina (por ejemplo, el cliente perdió la conexión a Internet) y la plataforma de la Video API de Vonage lo detectó. - "reset" — Se eliminó la retransmisión de un editor en respuesta a una petición dirigida a su Publisher.destroy() método. - "serverRotation" — El flujo del editor se ha perdido porque el cliente se ha desconectado de la sesión debido a Rotación de servidores de la Video API. Dependiendo del contexto, esta descripción puede permitir al desarrollador ajustar las medidas que adopte en respuesta a un suceso. Para un streamCreated evento, esta cadena no está definida. |
stream |
Transmisión | Un objeto `Stream` correspondiente al flujo que se ha añadido (en el caso de un streamCreated evento) o eliminado (en el caso de un streamDestroyed evento). |
streams |
Matriz | Obsoleto. Utiliza el stream propiedad. A streamCreated o streamDestroyed Se envía un evento cada vez que se añade o se elimina una secuencia. |
Métodos
| Nombre | Descripción |
|---|---|
isDefaultPrevented() → {Boolean} |
Si se ha impedido el comportamiento predeterminado del evento mediante una llamada a preventDefault() (true) o no (false). |
preventDefault() |
Evita que se produzca el comportamiento predeterminado asociado al evento. |
isDefaultPrevented() → {Boolean}
Si se ha impedido el comportamiento predeterminado del evento mediante una llamada a
preventDefault() (true) o no (false).
Véase preventDefault().
Devoluciones:
preventDefault()
Evita que se produzca el comportamiento predeterminado asociado al evento.
Para el streamDestroyed evento enviado por el objeto Session,
el comportamiento por defecto es que todos los objetos Subscriber suscritos al flujo se
disengranan y se eliminan del DOM HTML. Cada objeto Subscriber envía un
destroyed evento que se produce cuando el elemento se elimina del DOM HTML. Si llamas a la función
preventDefault() método en el oyente de eventos para el streamDestroyed
evento, se impide el comportamiento predeterminado y puedes limpiar los objetos Subscriber utilizando tu
propio código. Consulta
Session.getSubscribersForStream().
Para el streamDestroyed evento enviado por un objeto Publisher; el comportamiento
por defecto es que el objeto Publisher se elimina del DOM HTML. El objeto Publisher
envía un destroyed evento que se produce cuando el elemento se elimina del DOM HTML.
Si llamas a la función preventDefault() método en el oyente de eventos para el
streamDestroyed evento, se impide el comportamiento predeterminado y puedes
conservar el Publisher para reutilizarlo o eliminarlo mediante tu propio código.
Para comprobar si un evento tiene un comportamiento predeterminado, consulta el cancelable propiedad de
el objeto del evento.
Llame al preventDefault() método en la función de escucha de eventos correspondiente a dicho evento.