<?php
// Cargar configuración del entorno de pruebas
$envFile = __DIR__ . '/.env.pruebas';
if (!file_exists($envFile)) {
    die("Error: No se encontró el archivo de configuración de pruebas (.env.pruebas)\n");
}

// Cargar variables de entorno
$lines = file($envFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($lines as $line) {
    if (strpos(trim($line), '#') === 0) continue;
    list($name, $value) = explode('=', $line, 2);
    $name = trim($name);
    $value = trim($value, "'\" \t\n\r\0\x0B");
    if (!empty($name)) $_ENV[$name] = $value;
}

// Configuración
$botToken = $_ENV['TELEGRAM_BOT_TOKEN'] ?? '';
$webhookToken = $_ENV['TELEGRAM_WEBHOOK_TOKEN'] ?? 'webhook_secure_token_12345';
$webhookUrl = 'https://pruebaspons.duckdns.org/telegram_bot_webhook.php?auth_token=' . urlencode($webhookToken);

if (empty($botToken)) die("Error: No se configuró TELEGRAM_BOT_TOKEN\n");

echo "Configurando webhook para pruebas...\nURL: $webhookUrl\n";

// Configurar webhook
$apiUrl = "https://api.telegram.org/bot{$botToken}/setWebhook";
$postData = ['url' => $webhookUrl, 'allowed_updates' => json_encode(['message', 'callback_query'])];

$ch = curl_init($apiUrl);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => $postData,
    CURLOPT_SSL_VERIFYPEER => true,
]);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);

// Mostrar resultados
echo "\nRespuesta de la API de Telegram (HTTP $httpCode):\n";
if ($error) {
    echo "Error: $error\n";
} else {
    $result = json_decode($response, true);
    if (json_last_error() === JSON_ERROR_NONE) {
        if ($result['ok'] ?? false) {
            echo "✅ Webhook configurado correctamente.\n";
            echo "URL: " . ($result['result']['url'] ?? 'N/A') . "\n";
            echo "Tiene certificado: " . ($result['result']['has_custom_certificate'] ? 'Sí' : 'No') . "\n";
            echo "Updates pendientes: " . ($result['result']['pending_update_count'] ?? '0') . "\n";
        } else {
            echo "❌ Error al configurar el webhook: " . ($result['description'] ?? 'Error desconocido') . "\n";
        }
    } else {
        echo "Respuesta no válida: " . substr($response, 0, 200) . "...\n";
    }
}

echo "\nPara verificar la configuración actual del webhook, ejecuta:\n";
echo "curl -s 'https://api.telegram.org/bot{$botToken}/getWebhookInfo' | jq\n\n";
