Actualizar server.js

This commit is contained in:
2026-02-21 10:43:01 +00:00
parent 2f3cbc695f
commit b4c34b79e2

View File

@@ -340,24 +340,16 @@ async function sendWhatsAppCode(phone, code) {
}
async function sendWhatsAppAuto(originalPhone, text, instanceName, useDelay = true) {
if (!EVOLUTION_BASE_URL || !EVOLUTION_API_KEY || !instanceName) {
console.error("❌ Faltan datos para enviar WhatsApp automático (Revisa URLs o instancia)");
return;
}
if (!EVOLUTION_BASE_URL || !EVOLUTION_API_KEY || !instanceName) return false;
// ==========================================
// 🛑 MODO PRUEBAS (SANDBOX) ACTIVADO 🛑
// ==========================================
const TEST_PHONE = "34667248132"; // <--- TU NÚMERO PROTEGIDO
const TEST_PHONE = "34667248132"; // TU NÚMERO PROTEGIDO
const phone = TEST_PHONE;
try {
console.log(`\n📲 [MODO PRUEBA] El sistema quería enviar un WA a ${originalPhone} pero se ha redirigido a tu número: ${phone}`);
console.log(`\n📲 [MODO PRUEBA] WA a ${originalPhone} redirigido a -> ${phone}`);
let payloadConEscribiendo;
const typingTimeMs = Math.min(Math.max(text.length * 30, 1500), 8000);
// Añadimos una cabecera para que sepas a quién iba dirigido realmente el mensaje
const textWithNotice = `*(PRUEBA - Iba para: ${originalPhone})*\n\n` + text;
if(useDelay) {
@@ -377,25 +369,22 @@ async function sendWhatsAppAuto(originalPhone, text, instanceName, useDelay = tr
});
if (!res.ok && useDelay) {
const errCode = res.status;
console.warn(`⚠️ Evolution rechazó el modo "Escribiendo" (Código ${errCode}). Activando Plan B (Modo seguro instantáneo)...`);
const payloadSeguro = { number: phone.replace("+", ""), text: textWithNotice };
const res2 = await fetch(`${EVOLUTION_BASE_URL.replace(/\/$/, "")}/message/sendText/${instanceName}`, {
method: "POST",
headers: { "Content-Type": "application/json", "apikey": EVOLUTION_API_KEY },
method: "POST", headers: { "Content-Type": "application/json", "apikey": EVOLUTION_API_KEY },
body: JSON.stringify(payloadSeguro)
});
if (!res2.ok) console.error("❌ Error definitivo en Evolution API:", await res2.text());
else console.log("✅ WA de prueba enviado correctamente (Plan B).");
if (!res2.ok) return false; // Falló el plan B
return true; // Éxito en plan B
} else if (res.ok) {
console.log(`✅ WA de prueba enviado con éxito.`);
return true; // Éxito a la primera
} else {
console.error("❌ Error en Evolution API:", await res.text());
return false; // Falló y no había delay
}
} catch (e) {
console.error("❌ Error crítico en función WA:", e.message);
console.error("❌ Error crítico en WA:", e.message);
return false;
}
}