Skip to content

Latest commit

 

History

History
37 lines (26 loc) · 1.64 KB

reporte.md

File metadata and controls

37 lines (26 loc) · 1.64 KB

Reporte de Implementación: Mejoras al Chat con WebSockets

Características Implementadas

1. Notificaciones de Conexión/Desconexión

  • Se implementó un sistema de seguimiento de usuarios usando un Map para almacenar IDs de socket y nombres de usuario
  • Se agregaron eventos 'user status' para notificar cuando los usuarios entran o salen del chat
  • Los mensajes de estado se muestran en el chat con un estilo diferenciado (texto en gris e itálica)

2. Funcionalidad "Usuario está escribiendo"

  • Se implementó la detección de escritura usando el evento 'input' del campo de texto
  • Se agregó un tiempo de espera (timeout) de 2 segundos para determinar cuando el usuario deja de escribir
  • Los estados de escritura se muestran en una zona dedicada debajo del chat
  • Se implementó la limpieza del estado cuando:
    • El usuario envía el mensaje
    • Pasan 2 segundos sin actividad de escritura

Mejoras Técnicas

  1. Se agregó un sistema de nombres de usuario automático basado en el ID del socket
  2. Se implementó un sistema de broadcasting para notificaciones
  3. Se mejoró el diseño visual con estilos CSS para los nuevos elementos

Consideraciones de Escalabilidad

  • El sistema de usuarios está diseñado para manejar múltiples conexiones simultáneas
  • Los eventos están optimizados para minimizar el tráfico de red
  • La implementación es compatible con futuras mejoras como nombres de usuario personalizados

Pruebas Recomendadas

  1. Conexión de múltiples usuarios simultáneos
  2. Verificación de notificaciones de estado
  3. Comprobación del comportamiento del indicador "está escribiendo"
  4. Pruebas de desconexión y reconexión