sistema de notificacion - ManuelJDonoso/Proyecto_daw GitHub Wiki
Sistema de Notificaciones
Propósito y Alcance
El sistema de notificaciones proporciona un canal estructurado de comunicación entre los usuarios y los administradores/moderadores en la aplicación Crónicas de Mérida. Sus funciones principales incluyen:
- Permitir a los usuarios enviar solicitudes de ayuda.
- Habilitar a los administradores y moderadores para responder a estas solicitudes.
- Mantener un registro de las comunicaciones con seguimiento de estado.
- Soportar conversaciones de múltiples pasos entre usuarios y el personal.
Este documento cubre la implementación técnica de este sistema, incluyendo el flujo de solicitudes de ayuda, la estructura de la base de datos y la interfaz administrativa.
Arquitectura del Sistema
El sistema de notificaciones consta de varios componentes interconectados que gestionan el flujo de solicitudes de ayuda y respuestas.
Diagrama de Arquitectura
Nota: Aquí se incluiría un diagrama visual representando los componentes y su interacción.
Roles de los Componentes
Componente | Archivo | Función Principal |
---|---|---|
Interfaz de Chat de Ayuda | views/button_help.php |
Proporciona la interfaz de burbuja de chat para que los usuarios envíen solicitudes de ayuda. |
Manejador de Solicitudes | controllers/guardar_mensaje_help.php |
Guarda las solicitudes de ayuda de los usuarios en la base de datos. |
Página de Notificaciones | views/notificacion.php |
Muestra los mensajes categorizados y la interfaz de respuesta. |
Controlador de Notificaciones | controllers/notificacion.php |
Procesa acciones y recupera datos de mensajes. |
Cargador de Mensajes | controllers/cargar_mensaje.php |
Carga detalles de mensajes para solicitudes AJAX. |
Estructura de la Base de Datos
El sistema de notificaciones utiliza dos tablas principales y varias vistas de base de datos para organizar y presentar los datos de los mensajes.
Esquema de la Base de Datos
Nota: Aquí se incluiría una descripción detallada de las tablas help
y notification
, incluyendo sus campos y relaciones.
Vistas de la Base de Datos
Se utilizan tres vistas de base de datos para proporcionar acceso estructurado a los datos de notificaciones:
vista_mensaje_help
: Une la tablahelp
con la información del usuario.vista_notificacion_procesando
: Muestra las notificaciones que están siendo procesadas.vista_notificacion_procesando_finalizado
: Muestra las notificaciones que han sido finalizadas.
Flujo de Solicitudes de Ayuda
El sistema de notificaciones comienza con un usuario enviando una solicitud de ayuda a través de la interfaz de burbuja de chat.
Diagrama del Proceso de Solicitud de Ayuda
Nota: Aquí se incluiría un diagrama visual representando el flujo desde la solicitud del usuario hasta la respuesta del administrador.
Implementación de la Interfaz de Chat de Ayuda
La interfaz de chat de ayuda se implementa como una burbuja flotante en la aplicación que se expande en una ventana de chat al hacer clic. Esto proporciona una forma accesible para que los usuarios soliciten asistencia desde cualquier página.
Sistema de Respuesta Administrativa
Los administradores y moderadores acceden a una página de notificaciones dedicada para ver y responder a las solicitudes de ayuda.
Flujo de Estado de los Mensajes
Nota: Aquí se incluiría una descripción de los diferentes estados por los que puede pasar una solicitud de ayuda (por ejemplo, nueva, en proceso, finalizada).
Acciones de Respuesta
El sistema de notificaciones admite cuatro acciones principales que los administradores y moderadores pueden realizar sobre los mensajes:
- Enviar: Respuesta inicial a una solicitud de ayuda, que la mueve del estado "nueva" a "procesando".
- Ampliar: Añadir información adicional a una solicitud en curso.
- Finalizar: Marcar una solicitud como completada.
- Eliminar: Eliminar una solicitud de la vista activa.