Bot Discord - Commit completo con todos los cambios
This commit is contained in:
65
admin/set_test_webhook.php
Executable file
65
admin/set_test_webhook.php
Executable file
@@ -0,0 +1,65 @@
|
||||
<?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";
|
||||
Reference in New Issue
Block a user