6cec747ae3efd3909c14ffaa221b4a6422190332
🤖 Sistema de WhatsApp Bot Manager
Un sistema completo de gestión de chatbot para WhatsApp Business API con interfaz web moderna, menús parametrizables y gestión avanzada de conversaciones.
✨ Características
🔧 Funcionalidades Principales
- Bot Inteligente con menús parametrizables por números
- Interfaz Web Moderna para gestión completa
- API REST para integración con sistemas externos
- Respuestas Automáticas configurables
- Envío de Mensajes individuales y masivos
- Gestión de Usuarios con estados y seguimiento
- Dashboard Analytics con gráficos en tiempo real
- Logs Detallados de todas las interacciones
- Sistema de Plantillas para mensajes predefinidos
🎯 Sistema de Menús
- Menús jerárquicos con navegación por números (1, 2, 3, etc.)
- Acciones configurables: navegar, mensaje, API call, finalizar
- Soporte para servicios, pagos, soporte técnico
- Completamente parametrizable desde la interfaz
📱 Compatibilidad WhatsApp
- Integración completa con WhatsApp Business API
- Soporte para mensajes de texto, imágenes, audio, video
- Plantillas de WhatsApp Business
- Estados de entrega y lectura
- Webhook seguro con verificación
🚀 Instalación
1. Prerrequisitos
- PHP 8.0 o superior
- MySQL 5.7 o superior
- Servidor web (Apache/Nginx)
- WhatsApp Business API Token
- Dominio con SSL (para webhook)
2. Configuración de Base de Datos
# Importar el esquema de la base de datos
mysql -u pym -p'Nicolas2796*+' -h 46.202.93.92 whatsapp < database/schema.sql
3. Configuración del Proyecto
# Subir archivos al servidor
# Ajustar permisos
chmod 755 -R bot/
chmod 666 config/config.php
4. Configurar WhatsApp Business API
-
Acceder a Facebook Developers
- Crear una aplicación en developers.facebook.com
- Agregar el producto "WhatsApp Business API"
-
Configurar Webhook
- URL del Webhook:
https://tudominio.com/migrador/api/webhook.php - Token de Verificación:
mi_token_secreto_123 - Suscribirse a:
conversations
- URL del Webhook:
-
Obtener Tokens
- Token de Acceso (ya proporcionado)
- Phone Number ID:
938177732702718
5. Configuración en la Interfaz
- Abrir:
https://tudominio.com/migrador/ - Ir a Configuración
- Completar:
- Token de WhatsApp
- Phone Number ID
- Token de Verificación
- Nombre de la empresa
- Mensaje de bienvenida
📖 Uso del Sistema
🎮 Interfaz Web
- Dashboard: Estadísticas y actividad en tiempo real
- Conversaciones: Ver y gestionar todas las conversaciones
- Usuarios: Administrar usuarios y estados
- Menús: Configurar y editar el flujo del bot
- Mensajes: Enviar mensajes individuales o masivos
- Configuración: Ajustar parámetros del sistema
🤖 Bot de WhatsApp
Comandos Disponibles
menu- Mostrar menú principalayuda- Mostrar ayudasalir- Salir del menú actual
Flujo de Menús (Ejemplo)
📋 Menú Principal
Selecciona una opción:
1. 💼 Ver servicios disponibles
2. 💳 Realizar pago
3. 🆘 Contactar soporte
0. ❌ Salir
💬 Responde con el número de la opción que deseas
🔧 API Endpoints
Webhook
POST /api/webhook.php
# Recibe mensajes de WhatsApp
Enviar Mensaje
POST /api/send_message.php
Content-Type: application/json
{
"recipient": "573168950803",
"type": "text",
"message": "Hola, este es un mensaje de prueba"
}
Obtener Estadísticas
GET /api/get_stats.php
🏗️ Estructura del Proyecto
migrador/
├── api/ # Endpoints de la API
│ ├── webhook.php # Webhook principal
│ ├── send_message.php # Envío de mensajes
│ ├── get_stats.php # Estadísticas
│ └── ... # Otras APIs
├── assets/ # Recursos estáticos
│ ├── css/ # Estilos CSS
│ └── js/ # JavaScript
├── classes/ # Clases principales
│ └── Database.php # Conexión a BD
├── config/ # Configuración
│ └── config.php # Configuración principal
├── database/ # Base de datos
│ └── schema.sql # Esquema de BD
├── services/ # Servicios del sistema
│ ├── WhatsAppService.php # Servicio WhatsApp
│ └── BotService.php # Lógica del bot
└── index.php # Página principal
📊 Base de Datos
Tablas Principales
users- Usuarios del sistemaconversations- Historial de mensajesmenus- Configuración de menúsmenu_options- Opciones de cada menúautoresponses- Respuestas automáticassystem_config- Configuración del sistemawebhook_logs- Logs de webhooks
🔧 Configuración Avanzada
Menús Personalizados
-- Crear menú personalizado
INSERT INTO menus (name, title, description, is_root) VALUES
('mi_menu', '🏪 Mi Tienda', 'Menú de productos', TRUE);
-- Agregar opciones
INSERT INTO menu_options (menu_id, option_number, text, action_type, action_value) VALUES
(1, 1, '📱 Ver catálogo', 'message', 'Aquí tienes nuestro catálogo: www.mitienda.com'),
(1, 2, '🛒 Hacer pedido', 'message', 'Para hacer un pedido, envía el código del producto'),
(1, 0, '🔙 Volver', 'menu', 'main_menu');
Respuestas Automáticas
-- Agregar respuesta automática
INSERT INTO autoresponses (trigger_type, trigger_value, response_text) VALUES
('keyword', 'precio', 'Para consultar precios, escribe *catalogo* o visita www.mitienda.com'),
('keyword', 'horarios', 'Atendemos de Lunes a Viernes de 8am a 6pm');
🔐 Seguridad
- Validación de tokens en webhook
- Escape de datos SQL
- Headers de seguridad HTTP
- Logs de todas las transacciones
- Autenticación de API
🐛 Solución de Problemas
Error de Conexión a BD
# Verificar credenciales en config/config.php
# Verificar que el servidor MySQL esté activo
# Comprobar permisos del usuario de BD
Webhook No Funciona
# Verificar que la URL sea accesible públicamente
# Comprobar que tenga SSL (HTTPS)
# Revisar logs en /api/get_logs.php
Bot No Responde
# Verificar token de WhatsApp en configuración
# Comprobar que el webhook esté configurado
# Revisar logs de errores PHP
📞 Ejemplo de Uso Completo
1. Configuración Inicial
# Bot configurado para empresa de servicios
# Menús: Servicios, Pagos, Soporte
# Respuestas automáticas para palabras clave
2. Flujo de Usuario
Usuario: "Hola"
Bot: "¡Hola! 👋 Bienvenido a nuestro servicio automatizado. Escribe *menu* para ver las opciones disponibles."
Usuario: "menu"
Bot: "📋 Menú Principal
1. 💼 Ver servicios disponibles
2. 💳 Realizar pago
3. 🆘 Contactar soporte
0. ❌ Salir"
Usuario: "1"
Bot: "💼 Servicios
1. 📋 Consulta de información
2. 📞 Agendar cita
3. 💰 Cotizar servicio
0. 🔙 Volver al menú principal"
Usuario: "2"
Bot: "Para agendar una cita, por favor proporciona tu nombre completo y tu disponibilidad horaria."
🎨 Personalización
Colores y Estilos
/* Modificar en assets/css/styles.css */
:root {
--primary-color: #25d366; /* Verde WhatsApp */
--secondary-color: #128c7e;
--tertiary-color: #075e54;
}
Mensajes del Bot
-- Modificar mensaje de bienvenida
UPDATE system_config
SET config_value = 'Tu mensaje personalizado'
WHERE config_key = 'welcome_message';
📈 Monitoreo
- Dashboard en tiempo real con métricas
- Gráficos de actividad por día
- Estados de entrega de mensajes
- Logs detallados de todas las operaciones
🤝 Soporte
Para soporte técnico o consultas:
- Email: soporte@tuempresa.com
- WhatsApp: +57 1 234 5678
- Web: www.tuempresa.com
Desarrollado con ❤️ para facilitar la comunicación empresarial a través de WhatsApp
© 2025 - Sistema WhatsApp Bot Manager v1.0.0
Languages
PHP
84.8%
JavaScript
6.4%
HTML
5.9%
Shell
1.4%
CSS
0.9%
Other
0.5%