From e96f507a060d68ec142d8af3f60320c7ca229730 Mon Sep 17 00:00:00 2001 From: Lizandro Guarnizo <77708265+lizandrogd@users.noreply.github.com> Date: Wed, 28 Jan 2026 03:09:52 -0500 Subject: [PATCH] up --- README.md | 184 +++++++++++++----- conversations.php | 9 +- index.php | 9 +- INSTALACION.md => legacy/INSTALACION.md | 0 instalacion.html => legacy/instalacion.html | 0 instalar_bd.php => legacy/instalar_bd.php | 0 install.php => legacy/install.php | 0 .../install_integrated.php | 0 .../install_manual.php | 0 .../install_simple.php | 0 .../install_ultra_basic.php | 0 login.php | 12 +- 12 files changed, 148 insertions(+), 66 deletions(-) rename INSTALACION.md => legacy/INSTALACION.md (100%) rename instalacion.html => legacy/instalacion.html (100%) rename instalar_bd.php => legacy/instalar_bd.php (100%) rename install.php => legacy/install.php (100%) rename install_integrated.php => legacy/install_integrated.php (100%) rename install_manual.php => legacy/install_manual.php (100%) rename install_simple.php => legacy/install_simple.php (100%) rename install_ultra_basic.php => legacy/install_ultra_basic.php (100%) diff --git a/README.md b/README.md index 7b8d143..cb0448b 100644 --- a/README.md +++ b/README.md @@ -1,93 +1,177 @@ # WhatsApp Bot Manager 🚀 -**WhatsApp Bot Manager** es un panel administrativo para gestionar bots y envíos de WhatsApp. Desarrollado por U‑Site.app, pensado para instalaciones autohospedadas con PHP y MySQL. +

+ PHP 8.2+ + MariaDB + Docker Ready + WhatsApp API +

+ +

+ Panel administrativo para gestionar bots y envíos de WhatsApp Business +

+ +

+ Desarrollado con 💚 por U-Site.app +

--- -## 🔧 Características principales +## 🏢 Sobre U-Site.app -- Gestión de conversaciones y plantillas -- Integración con WhatsApp Business API -- Control de usuarios y seguridad (protección contra fuerza bruta) -- Manejo de archivos multimedia y envíos -- Scripts de instalación y migración incluidos +**U-Site.app** es una casa de desarrollo de software especializada en soluciones empresariales, automatización y aplicaciones web modernas. Creamos herramientas que simplifican procesos y potencian negocios. + +🌐 **Website:** [u-site.app](https://u-site.app) --- -## ✅ Requisitos +## ✨ Características -- PHP 8.0+ (extensiones: PDO/MySQL, mbstring, curl, openssl, json) -- MySQL/MariaDB -- Servidor web (Apache/Nginx) o PHP built-in para desarrollo +- 📱 **Gestión de conversaciones** - Interfaz tipo WhatsApp Web +- 📨 **Plantillas de mensajes** - Envíos masivos con templates aprobados +- 🤖 **Bot automatizado** - Respuestas automáticas configurables +- 🔐 **Autenticación segura** - Protección contra fuerza bruta +- 📎 **Multimedia** - Soporte para imágenes, documentos, audio y video +- 🔔 **Notificaciones SSE** - Tiempo real sin polling +- 🐳 **Docker Ready** - Despliegue en contenedores +- 🇨🇴 **Zona horaria Colombia** - Configurado para América/Bogotá --- -## 🛠 Instalación rápida (desarrollo) +## 🛠️ Requisitos -1. Clonar el repositorio y entrar en la carpeta: +| Requisito | Versión | +|-----------|---------| +| PHP | 8.0+ | +| MariaDB/MySQL | 10.11+ / 8.0+ | +| Redis | 7.0+ | +| Docker | 24.0+ (opcional) | +**Extensiones PHP requeridas:** PDO, MySQL, mbstring, curl, openssl, json, gd + +--- + +## 🚀 Instalación + +### Opción 1: Docker (Recomendado) + +```bash +# Clonar repositorio +git clone https://github.com/tu-usuario/whatsapp.git +cd whatsapp + +# Desarrollo local +docker-compose -f docker-compose.dev.yml up -d + +# Producción +docker-compose -f docker-compose.prod.yml up -d +``` + +**URLs de acceso (desarrollo):** +- 🌐 App: http://localhost:8080 +- 🗄️ phpMyAdmin: http://localhost:8084 + +### Opción 2: Instalación Manual + +1. Clonar y configurar: ```bash - git clone whatsapp + git clone https://github.com/tu-usuario/whatsapp.git cd whatsapp + cp .env.example .env ``` -2. Configurar la base de datos en `config/config.php` o crear un archivo `.env` en la raíz. +2. Editar `.env` con tus credenciales -3. Ejecutar el instalador desde el navegador: `http://tu-servidor/install.php` y seguir los pasos. - -4. Para levantar un servidor de desarrollo rápido: - - ```bash - php -S 127.0.0.1:8000 -t . >/tmp/php-server.log 2>&1 & - # Abre: http://127.0.0.1:8000 - ``` +3. Ejecutar instalador: `http://tu-servidor/install.php` --- -## 🧭 Archivos y scripts útiles +## 📁 Estructura del Proyecto -- `install.php`, `instalar_bd.php` — instalador y creación de tablas -- `create_media_table.sql`, `execute_media_table.php` — tabla de media -- `config/config.php` — configuración principal y carga de `.env` -- `run_tests.php` — pruebas básicas -- `deploy.sh` — script de despliegue (producción) -- `verify_*` y `diagnostico_*` — páginas de diagnóstico y verificación - -Consulta `README_SETUP.md`, `INSTALACION.md` y `DEPLOYMENT_GUIDE.md` para documentación extendida. +``` +whatsapp/ +├── api/ # Endpoints API REST +├── assets/ # CSS, JS, imágenes +├── classes/ # Clases PHP (Database, Services) +├── config/ # Configuración +├── database/ # Scripts SQL y backups +├── docker/ # Configuración Docker (nginx, php, supervisor) +├── services/ # Servicios (WhatsApp, Bot) +├── uploads/ # Archivos subidos +├── Dockerfile # Imagen principal +├── Dockerfile.worker # Imagen para workers +├── docker-compose.dev.yml # Desarrollo +├── docker-compose.prod.yml # Producción +└── deploy-vps.sh # Script de despliegue +``` --- -## 🎨 Personalización de UI +## ⚙️ Configuración -- Estilos principales: `assets/css/styles.css` -- Para ajustar el tamaño global de fuente cambia `html { font-size: ... }` o `body { font-size: ... }` +### Variables de Entorno (.env) + +```env +# Base de datos +DB_HOST=mysql +DB_PORT=3306 +DB_NAME=usite_whatsapp_bot +DB_USER=tu_usuario +DB_PASS=tu_password + +# WhatsApp Business API +WHATSAPP_TOKEN=tu_token_aqui +WHATSAPP_PHONE_NUMBER_ID=tu_phone_id +WEBHOOK_VERIFY_TOKEN=tu_webhook_token + +# Redis +REDIS_HOST=redis +REDIS_PORT=6379 +``` + +### Webhook de WhatsApp + +Configura el webhook en Meta Developer Console: +- **URL:** `https://tu-dominio.com/api/webhook.php` +- **Verify Token:** El mismo que `WEBHOOK_VERIFY_TOKEN` --- -## 🧪 Solución rápida de problemas +## 🐳 Contenedores Docker -- Logs del servidor integrado: `/tmp/php-server.log` -- Verificar tokens y configuración con: `verificar_servidor.php`, `verificar_token.php`, `verificar_whatsapp_config.php` -- Comprobar tablas con: `verify_media_table.php`, `check_table_structure.php` +| Contenedor | Descripción | Puerto | +|------------|-------------|--------| +| `whatsapp-app` | PHP + Nginx | 80, 443 | +| `whatsapp-mysql` | MariaDB 10.11 | 3306 | +| `whatsapp-redis` | Redis 7 | 6379 | +| `whatsapp-worker` | Procesos background | - | --- -## � Notas de seguridad: directorios de pruebas +## 📖 Documentación Adicional -Los recursos de pruebas y depuración (scripts `test_*`, `debug_*`, `diagnostico_*`, `tests/`, `scripts/` de prueba, etc.) han sido movidos al directorio `dev/`. **No** expongas `dev/` en entornos de producción. Recomendaciones: - -- Mantén `dev/` fuera del documento raíz público o protégelo con HTTP auth/.htaccess. -- Añade `dev/` y `tmp/` a `.gitignore` y rota credenciales que hayan estado en `CREDENCIALES_BASICO.txt`. -- Revisa y elimina cualquier endpoint que active modo `debug` vía parámetros en producción. +- [Guía de Instalación](INSTALACION.md) +- [Guía de Despliegue](DEPLOYMENT_GUIDE.md) +- [Configuración SSE](README_SSE.md) +- [Solución de Problemas](SOLUCION_HOSTING.md) --- -## �📬 Soporte y créditos +## 🔒 Seguridad -Desarrollado por **U‑Site.app** — https://u-site.app - -Para soporte, abre un issue o contacta al correo de soporte configurado en la app. +- Los directorios `dev/`, `tests/`, `scripts/` contienen herramientas de desarrollo +- **NO exponer** estos directorios en producción +- Proteger con `.htaccess` o configuración de nginx +- Rotar credenciales regularmente --- -*README corto y enfocado. Revisa los archivos de documentación para guías detalladas.* \ No newline at end of file +## 📄 Licencia + +Propietario - © 2026 [U-Site.app](https://u-site.app) + +--- + +

+ Desarrollado con 💚 por U-Site.app +

diff --git a/conversations.php b/conversations.php index b11bde1..d157c8b 100644 --- a/conversations.php +++ b/conversations.php @@ -995,11 +995,9 @@ if (!isset($_SESSION['user_id'])) { // ESTE LOG DEBE APARECER PRIMERO console.clear(); console.log('%c═══════════════════════════════════════════', 'color: #25d366; font-weight: bold;'); - console.log('%c🚀 WHATSAPP BOT v1.2.0 - CARGANDO...', 'background: #25d366; color: white; padding: 10px 20px; font-size: 18px; font-weight: bold; border-radius: 5px;'); - console.log('%c📅 Build: 27 Enero 2026 - 16:45 hrs', 'color: #2575fc; font-weight: bold; font-size: 14px;'); + console.log('%c🚀 WHATSAPP BOT v1.2.0 - Desarrollado por U-Site.app', 'background: #25d366; color: white; padding: 10px 20px; font-size: 18px; font-weight: bold; border-radius: 5px;'); console.log('%c═══════════════════════════════════════════', 'color: #25d366; font-weight: bold;'); window.__APP_VERSION__ = '1.2.0'; - window.__BUILD_TIME__ = ''; + + + \ No newline at end of file diff --git a/index.php b/index.php index 8213c5f..0203a84 100644 --- a/index.php +++ b/index.php @@ -2,16 +2,9 @@ /** * Página principal del sistema WhatsApp Bot - * Fecha: 13 de noviembre de 2025 + * Desarrollado por U-Site.app */ -// Verificar si la instalación está completada -$installationLockFile = '.installation_completed'; -if (!file_exists($installationLockFile)) { - header('Location: instalacion.html'); - exit(); -} - require_once 'config/config.php'; // Verificar autenticación - redirigir al login si no está logueado diff --git a/INSTALACION.md b/legacy/INSTALACION.md similarity index 100% rename from INSTALACION.md rename to legacy/INSTALACION.md diff --git a/instalacion.html b/legacy/instalacion.html similarity index 100% rename from instalacion.html rename to legacy/instalacion.html diff --git a/instalar_bd.php b/legacy/instalar_bd.php similarity index 100% rename from instalar_bd.php rename to legacy/instalar_bd.php diff --git a/install.php b/legacy/install.php similarity index 100% rename from install.php rename to legacy/install.php diff --git a/install_integrated.php b/legacy/install_integrated.php similarity index 100% rename from install_integrated.php rename to legacy/install_integrated.php diff --git a/install_manual.php b/legacy/install_manual.php similarity index 100% rename from install_manual.php rename to legacy/install_manual.php diff --git a/install_simple.php b/legacy/install_simple.php similarity index 100% rename from install_simple.php rename to legacy/install_simple.php diff --git a/install_ultra_basic.php b/legacy/install_ultra_basic.php similarity index 100% rename from install_ultra_basic.php rename to legacy/install_ultra_basic.php diff --git a/login.php b/login.php index 477c968..3541ff3 100644 --- a/login.php +++ b/login.php @@ -7,11 +7,8 @@ require_once 'config/config.php'; -// Verificar si la instalación está completada -if (!isInstallationCompleted()) { - header('Location: install.php'); - exit('Sistema no instalado. Instalar ahora'); -} +// Con Docker, la instalación siempre está completada +// El archivo .installation_completed se crea automáticamente o no es necesario // Si ya está logueado, redirigir al panel if (isUserLoggedIn()) { @@ -320,5 +317,10 @@ if ($_POST && !$loginBlocked) { }); + + + \ No newline at end of file