Gestión de sesiones

Las sesiones son una parte integral del uso de los SDK para clientes de Vonage. Una sesión es un flujo de comunicación en vivo entre el Client SDK y los servidores de Vonage.

Creación de una sesión

Para comenzar a realizar o recibir llamadas con Vonage Client SDK, debes crear una sesión. Un requisito previo para crear una sesión es tener un usuario y un JWT para ese usuario. Puedes obtener más información sobre usuarios y JWT en la sección Crea tu solicitud de Applications guía. Una vez que tengas un usuario y el JWT asociado, puedes llamar a la createSession en el SDK. Los ejemplos de esta guía serán en JavaScript pero los nombres de las funciones son los mismos en las 3 plataformas.

client.createSession(jwt)
 .then(sessionId => {
    console.log("Id of created session: ", sessionId);
 })
 .catch(error => {
    console.error("Error creating session: ", error);
 });

Si la operación se realiza correctamente, obtendrás un ID de sesión. Esto te permitirá volver a conectarte a esta sesión concreta si fuera necesario. Las sesiones tienen un tiempo de vida (TTL) de 15 minutos.

Reconexión de una sesión

Si desea volver a conectarse a una sesión existente, el botón createSession toma opcionalmente un ID de sesión como parámetro.

client.createSession(jwt, existingSessionId)
 .then(sessionId => {
    console.log("Id of session: ", sessionId);
 })
 .catch(error => {
    console.error("Error: ", error);
 });

Solución de problemas de creación de sesiones

Si no consigues crear una sesión correctamente, el mensaje de error que aparezca te dará alguna pista sobre el problema. A continuación te indicamos algunos pasos generales para solucionar el problema

  1. Comprueba si el usuario de Vonage existe realizando una solicitud GET a la API de usuarios
  2. Si el usuario existe, asegúrate de que se encuentre en el mismo región al que el Vonage Client SDK está intentando conectarse. El user._links de la llamada a la API de usuarios tendrá la región del usuario en la lista.
  3. Introduzca su JWT en jwt.io para asegurarse de que el JWT tiene el nombre de usuario correcto en el sub y no ha caducado. Aquí también puede comprobar que el Rutas ACL son correctos y el objeto tiene el anidamiento correcto.

Actualizar una sesión

Si actualmente tienes una sesión activa y sabes que el JWT utilizado para crearla va a caducar pronto, puedes actualizar la sesión con un nuevo JWT.

client.refreshSession(jwt)
 .then(() => {
    console.log("Session refreshed");
 })
 .catch(error => {
    console.error("Error refreshing session: ", error);
 });

Borrar una sesión

También puedes eliminar una sesión. Esto se haría, por ejemplo, como parte del proceso de cierre de sesión.

client.deleteSession(jwt)
 .then(() => {
    console.log("Session deleted");
 })
 .catch(error => {
    console.error("Error deleting session: ", error);
 });

¿Tienes alguna pregunta?

Si tiene más preguntas, problemas o comentarios, póngase en contacto con nosotros en devrel@vonage.com o el Slack de la comunidad de desarrolladores de Vonage.