Notificaciones en Tiempo Real
Las notificaciones llegan instantaneamente gracias a WebSocket.
Como Funciona
Arquitectura
Flujo de Notificacion en Tiempo Real
- Evento ocurre en el sistema
- Servidor procesa el evento
- WebSocket Service distribuye a usuarios relevantes
- Usuarios reciben la notificacion en tiempo real
Solo los usuarios que aplican reciben la notificacion; los demas no son notificados.
Conexion WebSocket
Cuando abres la aplicacion:
- Tu navegador conecta al servidor WebSocket
- Se autentica con tu sesion
- Se suscribe a tus canales:
- Notificaciones personales
- Eventos de tu empresa
- Actualizaciones de candidatos
- La conexion permanece abierta
- Mensajes llegan instantaneamente
Tipos de Eventos en Tiempo Real
Notificaciones
Evento: notification
Cuando llega una nueva notificacion:
{
"type": "notification",
"data": {
"id": "notif-123",
"title": "Maria te menciono",
"message": "@juan, revisa esto",
"notificationType": "mention",
"createdAt": "2024-01-20T14:30:00Z"
}
}
Tu navegador:
- Actualiza contador de campana
- Muestra popup (si configurado)
- Reproduce sonido (si configurado)
Actualizaciones de Inbox
Evento: thread:message
Cuando llega un mensaje nuevo:
{
"type": "thread:message",
"data": {
"threadId": 456,
"message": {
"content": "Hola, tengo una pregunta...",
"sender": "candidato"
}
}
}
Si tienes el inbox abierto, el mensaje aparece inmediatamente.
Movimientos de Candidatos
Evento: task:moved
Cuando un candidato cambia de etapa:
{
"type": "task:moved",
"data": {
"taskId": 789,
"fromStep": "Screening",
"toStep": "Entrevista",
"movedBy": "Maria Lopez"
}
}
Si tienes el board abierto, la tarjeta se mueve en vivo.
Typing Indicator
Evento: thread:typing
Cuando alguien esta escribiendo:
{
"type": "thread:typing",
"data": {
"threadId": 456,
"userId": 123,
"isTyping": true
}
}
En el chat aparece "Maria esta escribiendo..."
Indicador de Conexion
Estados
En la esquina de la app:
| Color | Estado |
|---|---|
| Verde | Conectado (tiempo real activo) |
| Amarillo | Reconectando... |
| Rojo | Desconectado |
Si ves amarillo o rojo:
- Las notificaciones no llegaran en vivo
- Refresca la pagina
- O verifica tu conexion a internet
Reconexion Automatica
Si la conexion se pierde:
- Sistema detecta desconexion
- Intenta reconectar automaticamente
- Intervalos: 1s, 2s, 4s, 8s... (exponencial)
- Al reconectar: Sincroniza notificaciones perdidas
Push Notifications
Diferencia con WebSocket
WebSocket:
- Requiere app abierta en navegador
- Tiempo real inmediato
- Actualiza UI directamente
Push Notification:
- Funciona sin app abierta
- Aparece en sistema operativo
- Requiere permiso del navegador
- Click abre la app
Activar Push
- En configuracion de notificaciones
- Click [Activar Push]
- Navegador muestra dialogo:
[Talivo] quiere enviarte notificaciones
Las notificaciones pueden incluir alertas, sonidos e iconos de insignia. Se pueden configurar en Ajustes.
[Bloquear] [Permitir]
- Click "Permitir"
- Listo, recibiras push
Recibir Push
Cuando llega una push notification:
Talivo - ahora
Maria te menciono "@juan, puedes revisar este candidato?"
Aparece en:
- Esquina del escritorio (Mac/Windows)
- Centro de notificaciones
- Pantalla de bloqueo (movil)
Click en la notificacion abre la app en el punto relevante.
Sonidos
Configurar
Seccion: Notificaciones -> Sonidos
- Reproducir sonido para notificaciones
- Volumen: 80%
- Sonido: Default (ding), Subtle (pop), Alert (chime), o Silencioso
Cuando Suena
Sonido se reproduce cuando:
- Nueva notificacion (si configurado)
- Nuevo mensaje en inbox
- Alerta de sistema
No suena si:
- En horario de silencio
- Sonido desactivado
- Navegador en segundo plano (depende)
- Sistema operativo silenciado
Popup de Notificacion
Toast
Cuando llega notificacion:
Nueva notificacion
Maria te menciono "@juan, revisa esto"
[Ignorar] [Ver]
Aparece en esquina de la app. Desaparece en 5 segundos. Click en "Ver" va al contenido.
Configurar Popups
Seccion: Notificaciones -> Popups
- Mostrar popup para nuevas notificaciones
- Duracion: 5 segundos
- Posicion:
- Esquina superior derecha
- Esquina superior izquierda
- Esquina inferior derecha
- Esquina inferior izquierda
Sincronizacion Multi-Dispositivo
Como Funciona
Si tienes la app abierta en multiples dispositivos, todos conectan al servidor via WebSocket.
Cuando llega notificacion:
- Ambos reciben en tiempo real
- Al leer en uno, se marca en todos
- Sincronizado instantaneamente
Conflictos
Si lees en un dispositivo:
- Accion llega al servidor
- Servidor notifica a otros dispositivos
- Otros dispositivos actualizan UI
- Contador se sincroniza
No hay conflictos, todo coordinado.
Troubleshooting
No Recibo Notificaciones
Verificar:
- Estas conectado? - Ve indicador de conexion (esquina)
- Navegador tiene permiso? - Ajustes navegador -> Notificaciones
- Configuracion correcta? - Revisa preferencias de notificaciones
- Sistema operativo permite? - Ajustes sistema -> Notificaciones
- Horario de silencio activo? - Revisa configuracion de horario
Conexion Inestable
Si ves reconexiones frecuentes:
- Verifica internet
- Desactiva VPN temporalmente
- Prueba otro navegador
- Limpia cache del navegador
- Contacta soporte si persiste
Push No Funcionan
Verificar:
- Diste permiso? - Chrome: candado -> Notificaciones -> Permitir
- Navegador soportado? - Chrome, Firefox, Edge, Safari
- Sistema operativo permite?
- Mac: Preferencias -> Notificaciones
- Windows: Configuracion -> Notificaciones
- Modo No Molestar? - Desactiva temporalmente
Datos Tecnicos
Protocolo
| Aspecto | Valor |
|---|---|
| Protocolo | WebSocket sobre SSL (WSS) |
| Puerto | 443 (mismo que HTTPS) |
| Heartbeat | cada 30 segundos |
| Reconexion | exponential backoff |
No requiere configuracion especial de firewall en la mayoria de redes.
Compatibilidad
Navegadores soportados:
- Chrome 60+
- Firefox 55+
- Safari 12+
- Edge 79+
- Opera 47+
Push notifications:
- Todas las versiones modernas
- Excepto Safari iOS (limitado)
Permisos
Todos los usuarios autenticados tienen acceso a tiempo real. No requiere permisos especiales.
Proximos Pasos
- Preferencias - Configurar notificaciones
- Centro de Notificaciones - Donde verlas
- Tipos de Notificaciones - Cada categoria