Ciclo de vida de una sesión

Una sesión es la unidad de trabajo principal en Whisperer: el período de tiempo durante el cual el cliente escucha una reunión, transcribe el habla y recibe respuestas del LLM. Entender el ciclo de vida te ayuda a usar correctamente el inicio/pausa, interpretar los estados en el panel y resolver problemas.

Cuándo leer este artículo

Lee este artículo si quieres entender:

  • qué ocurre con tus datos en cada fase de una reunión;
  • por qué a veces una respuesta se retrasa y cuándo se guarda la transcripción;
  • cómo funciona la conexión entre el cliente y el servidor.

Fases de la sesión

1. Inicio

Al presionar el botón "Iniciar" (o el atajo de teclado) el cliente entra en modo activo:

  1. El cliente abre una conexión al servidor y envía el identificador del dispositivo y el token.
  2. El servidor valida la suscripción y la cuota de minutos. Si la comprobación es correcta, confirma el inicio de la sesión y devuelve el identificador de sesión.
  3. El cliente activa la captura de audio y comienza a grabar.

2. Grabación (Streaming)

El audio se transmite en fragmentos cortos cada ~0,8 segundos. Cada fragmento está etiquetado con el hablante: el usuario o el interlocutor.

El servidor almacena temporalmente los fragmentos y los envía para su reconocimiento. La transcripción se devuelve al cliente en tiempo real y se muestra en el LiveTranscriptStrip.

3. Consulta y respuesta

Cuando el usuario presiona "Preguntar" (o el atajo de teclado), el cliente envía un frame ask con el contexto de transcripción actual.

El servidor ensambla el prompt del sistema (prompt de rol → contexto de usuario → RAG de la base de conocimiento) y consulta al LLM. La respuesta se transmite en streaming: el texto aparece a medida que se genera y se muestra inmediatamente en AnswerArea con soporte Markdown y paginación (si hay múltiples respuestas).

4. Pausa

Al presionar "Pausar" se detiene la captura de audio, pero la conexión WebSocket permanece abierta. El temporizador de sesión se pausa. Se reanuda al presionar "Reanudar".

5. Finalización

Al presionar "Detener" o cerrar el cliente:

  1. El cliente envía un frame session.end.
  2. El servidor vuelca las transcripciones almacenadas y la lista de respuestas completadas en la base de datos.
  3. El WebSocket se cierra.
  4. En el panel web, la sesión aparece en la sección Historial con la transcripción completa y las analíticas.

📸 [Captura de pantalla: panel de Whisperer en modo grabación — se ven el LiveTranscriptStrip y los botones de control]

Almacenamiento de datos

Por defecto, la transcripción y las respuestas del LLM se guardan en la base de datos y son accesibles en el panel. Si el modo no-logs está activado, los datos se eliminan al terminar la sesión — pero los minutos consumidos se siguen contabilizando.

Errores comunes

Error Causa Solución
La sesión no arranca Correo electrónico no confirmado o sin suscripción activa Comprueba el estado de la cuenta y la cuota
"No escucho al interlocutor" Permiso de grabación de pantalla no concedido (macOS) o captura de audio del sistema no disponible (Windows) Permisos en macOS / Windows
La transcripción no aparece Conexión a internet deficiente o pérdida del WebSocket Comprueba tu red; reinicia la sesión
La respuesta del LLM tarda demasiado El proveedor de IA está sobrecargado o se ha seleccionado un modelo lento Cambia el modelo en la configuración

Buenas prácticas

  • Detén la sesión explícitamente con el botón "Detener" — esto garantiza que los datos se escriben en el historial.
  • Pausa durante las pausas largas en la reunión — el temporizador se detiene y los minutos no se desperdician.
  • Usa el modo no-logs para reuniones confidenciales en las que no es deseable almacenar la transcripción.

Artículos relacionados