Creación de sesiones — Node.js

Puedes utilizar la biblioteca de OpenTok para Node.js para crear sesiones de OpenTok. Cada sesión tiene un identificador único, que puedes utilizar en una biblioteca de cliente de OpenTok para conectarte a una sesión de OpenTok. (Consulta «Unirse a una sesión» para Web, iOS, o Android.)

Creación de una sesión que utilice OpenTok Media Router

El siguiente código de Node.js crea una sesión que utiliza OpenTok Media Router:

var opentok = new OpenTok(API_KEY, API_SECRET);
var sessionId;
opentok.createSession({mediaMode:"routed"}, function(error, session) {
  if (error) {
    console.log("Error creating session:", error)
  } else {
    sessionId = session.sessionId;
    console.log("Session ID: " + sessionId);
  }
});

Utiliza el ID de sesión en una biblioteca de cliente de OpenTok para conectarte a una sesión de OpenTok.

También tendrás que generar un token para cada usuario que se conecte a la sesión de OpenTok. Consulta Creación de un token de conexión Para obtener información sobre el generateToken() método.

El OpenTok Media Router ofrece las siguientes ventajas:

  • El OpenTok Media Router puede reducir el consumo de ancho de banda en sesiones con varios participantes. (Cuando la propiedad «mediaMode» se establece en «MediaMode.RELAYED», cada cliente debe enviar un flujo de audio y vídeo independiente a cada cliente suscrito a él.)
  • El OpenTok Media Router puede mejorar la calidad de la experiencia del usuario a través de recuperación de audio y vídeo. Gracias a estas características, si la conexión de un cliente se deteriora hasta tal punto que no permite la reproducción del vídeo de una transmisión a la que está suscrito, el vídeo se interrumpe en ese cliente (sin que ello afecte al resto de clientes) y el cliente solo recibe el audio. Si la conexión del cliente mejora, el vídeo vuelve a mostrarse.
  • El OpenTok Media Router es compatible con el función de archivo, que te permite grabar, guardar y recuperar sesiones de OpenTok.

Crear una sesión retransmitida

A continuación se muestra un código de ejemplo de Node.js que crea una nueva sesión con el modo multimedia configurado para retransmisión:

var opentok = new OpenTok(API_KEY, API_SECRET);
var sessionId;
opentok.createSession({mediaMode:"relayed"}, function(error, session) {
  if (error) {
    console.log("Error creating session:", error)
  } else {
    sessionId = session.sessionId;
    console.log("Session ID: " + sessionId);
  }
});

En una sesión con retransmisión, los clientes intentarán enviar flujos directamente entre sí. Sin embargo, si los clientes no pueden conectarse debido a restricciones del cortafuegos, la sesión utiliza el servidor TURN de OpenTok para retransmitir los flujos de audio y vídeo.

Importante: Algunas funciones, como el archivado, solo están disponibles en sesiones enrutadas (no retransmitidas). Consulta la sección anterior para obtener instrucciones sobre cómo crear una sesión enrutada.

Creación de una sesión que se archive automáticamente

Puedes crear una sesión que se archive automáticamente. A continuación se muestra un código de ejemplo en Node que crea una sesión que se archiva automáticamente:

opentok.createSession({mediaMode:'routed', archiveMode:'always'}, function(err, session) {
  if (error) {
    console.log("Error creating session:", error)
  } else {
    sessionId = session.sessionId;
    console.log("Session ID: " + sessionId);
  }
});

Ten en cuenta que las sesiones archivadas deben utilizar el modo de medios enrutados.

Para más información, consulte el archivo guía del desarrollador.

Uso de sesiones en aplicaciones de cliente

Utiliza el ID de sesión en un Client SDK del cliente de OpenTok para conectarse a una sesión de OpenTok.

También tendrás que generar un token para cada usuario que se conecte a la sesión de OpenTok. Consulta Creación de un token de conexión Para obtener información sobre el generateToken() método.