0f2708462e26636d9e82f59a9024d54ff2650411
Help Desk — Sistema Multi-Tenant de Gestión de Incidencias
Sistema web modular para gestión de tickets de soporte técnico, atención al cliente y administración multi-tenant (SaaS), construido sobre Node.js, Express 5 y MariaDB.
🎯 ¿Qué resuelve?
Centraliza la recepción, triaje, asignación y resolución de solicitudes de soporte técnico dentro de las organizaciones del ecosistema Telcotronics. Permite que múltiples empresas o departamentos gestionen sus tickets de forma completamente aislada a través de una arquitectura SaaS integrada.
👥 Roles de Usuario y Capacidades
| Rol | Dashboard / Acceso | Capacidades Principales |
|---|---|---|
| Superadmin | /saas/companies |
Alta de empresas, activación/suspensión de tenants y control de cuotas |
| Admin | /admin/dashboard |
Gestión de agentes y clientes, CRUD de departamentos y configuración del tenant |
| Agente | /agent/dashboard |
Bandeja de tickets, cambio de estado (abierto, en_progreso, cerrado), asignación y respuestas |
| Cliente | /client/dashboard |
Apertura de tickets con prioridad y departamento, consulta de historial y respuestas |
🛠️ Stack Tecnológico
- Backend: Node.js 18+ con Express 5.2.
- Vistas: EJS con partials modulares.
- Base de Datos: MariaDB / MySQL vía conector nativo
mysql2/promise. - Autenticación: Sesiones del lado del servidor con
express-sessiony contraseñas cifradas conbcryptjs. - Frontend: Bootstrap 5.3 + Font Awesome 6 (vía CDN) y CSS/JS personalizados.
📋 Requisitos Previos
- Node.js versión 18 o superior.
- MariaDB 10.x / MySQL 8.x con acceso a crear bases de datos y tablas.
🚀 Instalación y Puesta en Marcha
1. Clonar e instalar dependencias
git clone <url-repositorio> help_desk
cd help_desk
npm install
2. Configurar variables de entorno
Crea un archivo .env en la raíz basándote en la plantilla:
PORT=3008
DB_HOST=192.168.10.149
DB_USER=helpdesk
DB_PASSWORD=tu_password_segura
DB_NAME=help_desk
SESSION_SECRET=tu_secreto_de_sesion
JWT_SECRET=tu_jwt_secret
3. Inicializar y migrar la Base de Datos
Ejecuta el script de configuración automática para crear la base de datos, tablas, relaciones y datos semilla (empresa demo y usuarios iniciales):
node config/setup.js
4. Iniciar la Aplicación
# Modo producción
npm start
# Modo desarrollo
node app.js
Acceso en navegador: http://localhost:3008
🔑 Credenciales por Defecto (Seed)
| Rol | Correo Electrónico | Contraseña |
|---|---|---|
| Superadmin | super@helpdesk.com |
123456 |
| Admin | admin@helpdesk.com |
123456 |
| Agente | agent@helpdesk.com |
123456 |
| Cliente | client@helpdesk.com |
123456 |
📁 Documentación para Agentes e Infraestructura
- Punto de Entrada de Agentes: agents.md
- Documentación Interna del Proyecto: Carpeta .agente/
- Inventario Global del Ecosistema: .agente/infraestructura.md
- Identidad del Agente: id_agente.md
Description
Sistema de Help Desk, Tickets y FSM Multi-tenant del Ecosistema Telcotronics
530 KiB
Languages
EJS
53.8%
JavaScript
35%
CSS
7.3%
Shell
3.9%