Creación de un token de conexión — PHP
Para autenticar a un usuario que se conecta a una sesión de OpenTok, el cliente debe conectarse mediante un token (véase esta visión general).
El siguiente ejemplo de código PHP muestra cómo generar un token utilizando la biblioteca de OpenTok para PHP del lado del servidor:
Copia
<?PHP
use OpenTok\OpenTok;
$opentok = new OpenTok(API_KEY,API_SECRET);
// Replace with the correct session ID:
print $opentok->generateToken('your_session_ID');
print "\n";
?>
Llamada al generateToken() El método devuelve una cadena. Esta cadena es el token. Utiliza código PHP del lado del servidor para incluir el token en la página web servida.
El siguiente ejemplo de código PHP muestra cómo obtener un token con el rol de «publisher» y que incluya una cadena de metadatos de conexión:
Copia
<?PHP
use OpenTok\OpenTok;
$opentok = new OpenTok(API_KEY,API_SECRET);
// Replace with meaningful metadata for the connection:
$connectionMetaData = "username=Bob,userLevel=4";
// Replace with the correct session ID:
print $opentok->generateToken('your_session_ID', array('role' => Role::PUBLISHER, 'expireTime' => time()+(7 * 24 * 60 * 60), 'data' => $connectionMetaData);
print "\n";
?>
El método admite los siguientes argumentos:
session_id(Cadena) — El identificador de sesión correspondiente a la sesión a la que se conectará el usuario.options(Opciones) — Un array con las opciones del token:role(Cadena) — Opcional. Define el rol que tendrá el usuario. Hay tres roles: suscriptor, editor y moderador. Los suscriptores solo pueden suscribirse a las transmisiones de la sesión (no pueden publicar). Los editores pueden suscribirse y publicar flujos en la sesión, y pueden utilizar la API de señalización. Los moderadores tienen los privilegios de los editores y, además, también pueden obligar a otros usuarios a desconectarse de la sesión o a dejar de publicar. El rol por defecto (si no se pasa ningún valor) es el de editor.expireTime(int) — Opcional. La hora a la que caducará el token, definida como un valor entero correspondiente a una marca de tiempo de Unix (en segundos). Si no se especifica este valor, los tokens caducan a las 24 horas de su creación. ElexpireTimeEl valor, si se especifica, debe estar dentro de un plazo de 30 días a partir de la fecha de creación.data(Cadena) — Opcional. Una cadena que contiene metadatos que describen la conexión. Por ejemplo, puedes pasar el ID de usuario, el nombre u otros datos que describan la conexión. Puedes obtener estos datos de una base de datos del lado del servidor o de los datos que te facilite el cliente, dependiendo de tu aplicación.