Experiencia con Composer

Experience Composer es un servicio basado en la nube que te permite capturar cualquier página web de acceso público y publicarla como una transmisión en una sesión existente de la API de OpenTok. Esto flujo compuesto Se puede utilizar para la grabación de archivos, la emisión y la retransmisión en directo a otras sesiones interactivas de OpenTok, al tiempo que se mantienen intactas las experiencias de interfaz de usuario y experiencia de usuario (UI/UX) del sitio web.

Métodos de la API REST

Utiliza la Video API REST API para realizar lo siguiente:

OpenTok SDK para servidores También incluyen métodos para utilizar Experience Composer.

Casos de uso

Archivo de Experience Composer

Puedes utilizar OpenTok archivo función para grabar audio y vídeo de una sesión de OpenTok. Sin embargo, el formato de vídeo del archivo resultante se limita a los formatos compatibles opciones de diseño de vídeo.

Puede utilizar Experience Composer para utilizar el sitio de su actual Diseño para el diseño del archivo:

  1. Crea un «Experience Composer» cuya URL apunte a una página web que se suscriba a los flujos de una sesión, aplicando el diseño adecuado.

  2. Haz que Experience Composer publique la página en un flujo de una nueva sesión de OpenTok.

  3. Utiliza el API REST de OpenTok o el método del SDK del servidor de OpenTok para archivar la transmisión de Experience Composer.

Configure la resolución del archivo para que coincida con la resolución de Experience Composer (que se configura al iniciar Experience Composer).

Descubre Composer Broadcast

Con OpenTok función de retransmisión en directo, puedes retransmitir una sesión de OpenTok a una transmisión HLS o RTMP. Sin embargo, el formato de vídeo para una retransmisión en directo se limita a los formatos compatibles opciones de diseño de vídeo.

Puede utilizar Experience Composer para utilizar el sitio de su actual para el diseño de emisión:

  1. Crea un «Experience Composer» cuya URL apunte a una página web que se suscriba a los flujos de una sesión, aplicando el diseño adecuado.

  2. Haz que Experience Composer publique la página en un flujo de una nueva sesión de OpenTok.

  3. Utiliza el API REST de OpenTok o el método del SDK del servidor OpenTok para retransmitir la transmisión de Experience Composer a una transmisión HLS o RTMP.

Configure la resolución del archivo para que coincida con la resolución de Experience Composer (que se configura al iniciar Experience Composer).

Ampliar las retransmisiones interactivas en directo para incluir a más participantes (hasta millones).

Las retransmisiones en directo de OpenTok permiten que hasta 15 000 clientes vean una sesión interactiva de OpenTok. El número admitido depende del número de clientes que emitan transmisiones en la sesión (consulta la Retransmisiones interactivas en directo (guía).

Puede utilizar Experience Composer para ampliar el número de espectadores:

  1. Crea un «Experience Composer» cuya URL apunte a una página web que se suscriba a las transmisiones de la sesión principal de OpenTok que se va a retransmitir.

  2. Haz que Experience Composer publique la página en una nueva sesión de OpenTok.

  3. Repite este proceso con varias instancias más de Experience Composer: cada una de ellas se suscribirá a los flujos de la primera sesión y los publicará en una nueva sesión.

  4. Tu servidor de aplicaciones enviará los identificadores de sesión para el Disfruta de las sesiones de Composer a cada uno de los clientes de visualización (clientes que no están publicando en la primera sesión). El servidor de aplicaciones deberá llevar un control del número de clientes que se añaden a cada sesión de Experience Composer, de modo que no se conecten más de 15 000 a ninguna de ellas.

La matriz resultante de sesiones de Experience Composer admitirá hasta 15 000 * (15 000 - 2) usuarios (224 970 000 usuarios) cuando haya dos editores. Para otros números de editores, consulte la tabla de clientes compatibles en el Retransmisiones interactivas en directo guía, y esta técnica te servirá de ayuda 15,000 * ([number supported from that table] - [number of publishers]) clientes.

Otros casos de uso

Puedes utilizar Experience Composer para capturar cualquier página web y enviarla como una transmisión de audio y vídeo a una sesión de OpenTok para que otros puedan verla. La página puede incluir audio y vídeo procedentes de fuentes distintas a las transmisiones de OpenTok. O bien, puede incluir contenido dinámico con un diseño de interfaz de usuario complejo que puedan ver los clientes conectados a la sesión de OpenTok.

Limitaciones

No es compatible con la GPU

Los servidores de renderizado de Experience Composer no son compatibles con la GPU. No son capaces de ejecutar applications web que, por lo general, utilizarían más del 10 % de la GPU al ejecutarse en Chrome en un ordenador de sobremesa. Si la aplicación web que envías a Experience Composer utiliza OpenGL (u otro código que se beneficie de la GPU), el rendimiento y la representación en Experience Composer pueden verse afectados.

Sesiones rutinarias necesarias

Experience Composer solo es compatible con sesiones enrutadas (sesiones que utilizan el OpenTok Media Router).

Rotación de servidores

Un Experience Composer finaliza durante la rotación del servidor para la sesión que utiliza. Puede reiniciar un Experience Composer en respuesta a eventos de notificación de rotación del servidor. Consulte Rotación de servidores y migración de sesiones.

Configuración de las retrollamadas

Para configurar las respuestas seguras para los webhooks de Experience Composer, consulta esta guía.

Cuando cambia el estado de un Experience Composer, se enviará una solicitud HTTP POST a la URL configurada. Si no se ha configurado ninguna URL de devolución de llamada, no se enviará ninguna actualización de estado. Los datos sin procesar de la solicitud HTTP son un mensaje codificado en JSON con el siguiente formato:

{
  "id": "<experience-composer-id>",
  "sessionId": "<session-id>",
  "streamId": "<output-stream-id>",
  "status": "stopped",
  "reason": "Max duration exceeded."
  "event": "render"
}

El objeto JSON incluye las siguientes propiedades:

  • id — El identificador único del Experience Composer.
  • sessionId — El identificador de sesión de OpenTok.
  • streamId — El identificador de la transmisión compuesta que se está publicando. Es posible que el streamId no esté disponible cuando el estado sea «fallido».
  • estado — El estado del Experience Composer. Esta propiedad puede adoptar uno de los siguientes valores:
    • «iniciado» — La plataforma de la Video API de Vonage se ha conectado correctamente al servidor de aplicaciones remoto y está publicando la vista web en una transmisión de OpenTok.
    • «detener» — El Experience Composer se ha detenido.
    • «falló»: se ha producido un error y Experience Composer no ha podido continuar. Esto puede ocurrir al iniciar el programa si el servidor de OpenTok no puede conectarse al servidor de aplicaciones remoto o volver a publicar la transmisión. También puede ocurrir en cualquier momento durante el proceso debido a un error de la plataforma de la Video API de Vonage.
  • motivo — Este campo solo está disponible cuando el estado es «detenido» o «fallido». Si el estado es «detenido», el campo «motivo» contendrá «Duración máxima superada» o «Solicitud de detención». Si el estado es «fallido», el campo «motivo» mostrará «Error interno del servidor».
  • evento — Para todos los eventos de devolución de llamada de Experience Composer, este valor se establece en «render».

Visualización de datos

Visualización de datos en la API de Insights

Puedes utilizar el API de Insights para consultar los datos de uso de Experience Composer. El experienceComposer Los datos de uso muestran las actas publicadas por Experience Composer.

El experienceComposerArchive y experienceComposerBroadcast están obsoletas. Anteriormente, las propiedades experienceComposer los datos de uso no incluían actas de los periodos en los que un Experience Composer estaba conectado a un archivo o a una emisión. Sin embargo, esto ya no es así. (Los paquetes «Experience Composer Archive» y «Experience Composer Broadcast» ya no están disponibles.)

Actualizaciones

12 de marzo de 2026

Se han añadido las siguientes mejoras:

  • La versión del SDK nativo se ha actualizado a la 2.29.0.
  • Mejora la frecuencia de fotogramas del vídeo utilizando el códec VP9.
  • Plataforma «Respect» eventos de migración de servidores deteniéndose con elegancia y enviando una devolución de llamada al cliente.
  • El moderador «Respect» ha enviado forzar desconexión y forzar despublicación eventos, deteniéndose de forma controlada y enviando una notificación al cliente.
  • Correcciones de seguridad.

8 de agosto de 2025

Se han añadido las siguientes mejoras:

  • Mayor escalabilidad y fiabilidad con mejoras para absorber mejor los picos bruscos de tráfico.

8 de julio de 2025

Se han añadido las siguientes mejoras:

  • Mayor escalabilidad y fiabilidad gracias a un mejor equilibrio de carga y a la conmutación por error regional, lo que permite una respuesta más rápida ante los picos de tráfico.

  • Se ha revertido la versión del navegador a la M126 y la del SDK nativo a la 2.27.1 debido a problemas de inestabilidad.

  • Correcciones de seguridad.

  • Corrección de errores.

3 de junio de 2025

Se han añadido las siguientes mejoras:

  • Versión del SDK nativo actualizada a 2.29.1.

  • El servicio se detiene automáticamente al detectarse un error interno y se envía un evento a la URL de devolución de llamada registrada.

  • Se han aplicado las actualizaciones de seguridad.

26 de mayo de 2025

Se han añadido las siguientes mejoras:

  • Se ha actualizado la versión del navegador a la M133, lo que mejora la seguridad.

  • Corrección de errores.

3 de octubre de 2024

Se han añadido las siguientes mejoras:

  • Optimizaciones del motor de control de velocidad para flujos de vídeo complejos de alta calidad.

  • Optimizaciones del codificador para flujos complejos de vídeo de alta calidad.

  • Se ha actualizado la versión de libwebrtc, lo que ha permitido mejorar el rendimiento y la estabilidad.