Files
Complejo_Cap1tan/php/Enviar_Codigo_WSP.php
MarcosFlorSalcedo 8ec55e40fc 1ra Versión
2026-07-14 18:24:27 -03:00

41 lines
1.5 KiB
PHP

<?php
set_time_limit(120);
header('Content-Type: application/json');
$data = json_decode(file_get_contents('php://input'), true);
if (!isset($data['telefono']) || empty($data['telefono'])) {
echo json_encode(['success' => false, 'message' => 'Falta el teléfono']);
exit;
}
// 1. Limpiamos el número y le agregamos el 549 de Argentina si no lo tiene
$telefono = preg_replace('/[^0-9]/', '', $data['telefono']);
if (substr($telefono, 0, 3) !== '549') {
$telefono = '549' . ltrim($telefono, '0');
}
$nombre = $data['nombre'];
// 2. Generamos el código
$codigoGenerado = (string) rand(1000, 9999);
$mensaje = "Hola $nombre, tu código de verificación para Complejo Cap1tan es: *$codigoGenerado*";
// 3. Ejecutamos Python en SEGUNDO PLANO (Asíncrono para Windows)
$ruta_script = "C:\\xampp\\htdocs\\TP-Taller\\ProyectoTaller\\python\\Enviar_WSP.py";
// Armamos el comando base
$comando_python = escapeshellcmd("python \"$ruta_script\" \"$telefono\" \"$mensaje\"");
// "start /B" inicia el proceso sin abrir una nueva ventana de CMD.
// "1> NUL 2>&1" tira a la basura los mensajes de consola de Python para que PHP no se quede esperando a leerlos.
// popen() y pclose() abren el proceso y lo cierran al instante en PHP, dejando a Python trabajando solo.
pclose(popen("start /B " . $comando_python . " 1> NUL 2>&1", "r"));
// 4. Devolvemos la respuesta INMEDIATAMENTE al JavaScript
echo json_encode([
'success' => true,
'codigo' => $codigoGenerado,
'debug_python' => 'Ejecutando en segundo plano... (No se captura salida)'
]);
?>