"; echo "🔍 Verificación del Sistema WhatsApp Bot"; echo ""; echo "
"; echo "

🔍 Verificación del Sistema WhatsApp Bot

"; echo "

Fecha: " . date('Y-m-d H:i:s') . "

"; $errors = 0; $warnings = 0; $successes = 0; // 1. Verificar archivos principales echo "

📁 Verificación de Archivos

"; $requiredFiles = [ 'config/config.php' => 'Archivo de configuración principal', 'classes/Database.php' => 'Clase de base de datos', 'login.php' => 'Sistema de login', 'index.php' => 'Dashboard principal', 'api/webhook.php' => 'Webhook de WhatsApp', 'api/send_message.php' => 'API de envío de mensajes' ]; foreach ($requiredFiles as $file => $description) { if (file_exists($file)) { echo "
✅ $file - $description
"; $successes++; } else { echo "
❌ $file - $description FALTANTE
"; $errors++; } } // 2. Verificar configuración echo "

⚙️ Verificación de Configuración

"; if (file_exists('config/config.php')) { try { require_once 'config/config.php'; echo "
✅ Archivo config.php cargado correctamente
"; $successes++; // Verificar constantes $constants = ['DB_HOST', 'DB_NAME', 'DB_USER', 'DB_PASS']; foreach ($constants as $const) { if (defined($const)) { echo "
✅ Constante $const definida
"; $successes++; } else { echo "
❌ Constante $const NO definida
"; $errors++; } } } catch (Exception $e) { echo "
❌ Error cargando configuración: " . $e->getMessage() . "
"; $errors++; } } else { echo "
❌ Archivo config.php no encontrado
"; $errors++; } // 3. Verificar base de datos echo "

🗄️ Verificación de Base de Datos

"; if (defined('DB_HOST') && defined('DB_NAME') && defined('DB_USER') && defined('DB_PASS')) { try { $dsn = "mysql:host=" . DB_HOST . ";port=" . (defined('DB_PORT') ? DB_PORT : 3306) . ";dbname=" . DB_NAME . ";charset=utf8mb4"; $pdo = new PDO($dsn, DB_USER, DB_PASS); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "
✅ Conexión a base de datos exitosa
"; $successes++; // Verificar tablas principales $tables = ['conversations', 'conversations', 'system_config', 'message_templates']; foreach ($tables as $table) { $stmt = $pdo->query("SHOW TABLES LIKE '$table'"); if ($stmt->rowCount() > 0) { echo "
✅ Tabla '$table' existe
"; $successes++; } else { echo "
⚠️ Tabla '$table' no existe (puede necesitar importar schema.sql)
"; $warnings++; } } } catch (PDOException $e) { echo "
❌ Error de conexión a base de datos: " . $e->getMessage() . "
"; $errors++; } } else { echo "
❌ Configuración de base de datos incompleta
"; $errors++; } // 4. Verificar permisos echo "

🔐 Verificación de Permisos

"; $writableDirs = ['logs/', 'uploads/']; foreach ($writableDirs as $dir) { if (is_dir($dir)) { if (is_writable($dir)) { echo "
✅ Directorio '$dir' tiene permisos de escritura
"; $successes++; } else { echo "
❌ Directorio '$dir' NO tiene permisos de escritura (chmod 777 $dir)
"; $errors++; } } else { echo "
⚠️ Directorio '$dir' no existe
"; $warnings++; } } // 5. Verificar APIs echo "

🔌 Verificación de APIs

"; $apis = [ 'api/send_message.php', 'api/webhook.php', 'api/get_system_config.php', 'api/save_system_config.php', 'api/get_templates.php' ]; foreach ($apis as $api) { if (file_exists($api)) { // Verificar que usa la ruta correcta $content = file_get_contents($api); if (strpos($content, "require_once 'config/config.php'") !== false) { echo "
✅ API '$api' - Ruta de configuración correcta
"; $successes++; } else { echo "
❌ API '$api' - Ruta de configuración incorrecta
"; $errors++; } // Verificar autenticación if (strpos($content, 'requireAuthentication()') !== false) { echo "
✅ API '$api' - Requiere autenticación
"; $successes++; } else { echo "
⚠️ API '$api' - No requiere autenticación
"; $warnings++; } } else { echo "
❌ API '$api' no encontrada
"; $errors++; } } // 6. Verificar PHP echo "

🐘 Verificación de PHP

"; $phpVersion = phpversion(); if (version_compare($phpVersion, '7.4', '>=')) { echo "
✅ Versión PHP: $phpVersion (Compatible)
"; $successes++; } else { echo "
❌ Versión PHP: $phpVersion (Requiere 7.4+)
"; $errors++; } $requiredExtensions = ['pdo', 'pdo_mysql', 'curl', 'json']; foreach ($requiredExtensions as $ext) { if (extension_loaded($ext)) { echo "
✅ Extensión PHP '$ext' disponible
"; $successes++; } else { echo "
❌ Extensión PHP '$ext' NO disponible
"; $errors++; } } // Resumen final echo "

📊 Resumen de Verificación

"; $total = $successes + $errors + $warnings; echo "
"; echo "

Estadísticas:

"; echo "✅ Éxitos: $successes
"; echo "❌ Errores: $errors
"; echo "⚠️ Advertencias: $warnings
"; echo "📊 Total verificaciones: $total
"; if ($errors == 0) { echo "
🎉 ¡SISTEMA LISTO PARA USAR!
"; echo "El sistema está correctamente configurado y funcionando.
"; echo "
Próximos pasos:
"; echo "1. Acceder a login.php
"; echo "2. Usuario: admin
"; echo "3. Contraseña: 2fa904eee46f
"; echo "4. Configurar tokens de WhatsApp en el dashboard
"; } elseif ($errors <= 2) { echo "
⚠️ Sistema casi listo
"; echo "Hay algunos errores menores que corregir.
"; } else { echo "
❌ Requiere atención
"; echo "Hay varios errores que necesitan ser corregidos antes del uso.
"; } echo "
"; // Información adicional echo "

📋 Información Adicional

"; echo "
"; echo "Servidor: " . $_SERVER['SERVER_SOFTWARE'] . "
"; echo "PHP: " . PHP_VERSION . "
"; echo "Directorio actual: " . __DIR__ . "
"; echo "URL actual: " . (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . "
"; echo "
"; echo "
"; ?>