From fe21f2e2ca9993ea0d86e862eb613cdb5b7c71b8 Mon Sep 17 00:00:00 2001 From: marsalva Date: Sat, 14 Mar 2026 17:20:58 +0000 Subject: [PATCH] Actualizar server.js --- server.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/server.js b/server.js index 35227fb..6ccde91 100644 --- a/server.js +++ b/server.js @@ -915,6 +915,7 @@ app.post("/public/auth/request-otp", async (req, res) => { const { phone, owner_id } = req.body; if (!phone) return res.status(400).json({ ok: false }); + // Asumimos el ID de la empresa (Para el cliente p煤blico ser谩 1) const targetOwnerId = owner_id || 1; const cleanPhone = phone.replace(/\D/g, ""); @@ -922,17 +923,18 @@ app.post("/public/auth/request-otp", async (req, res) => { const code = String(Math.floor(1000 + Math.random() * 9000)); const hash = await bcrypt.hash(code, 10); - // Guardamos el c贸digo (dejamos user_id nulo porque es un cliente externo) + // Guardamos el c贸digo en la base de datos await pool.query(` INSERT INTO login_codes (phone, code_hash, purpose, expires_at) VALUES ($1, $2, 'client_portal', NOW() + INTERVAL '15 minutes') `, [cleanPhone, hash]); - // Enviar el WhatsApp const msg = `馃攼 Tu c贸digo de acceso para solicitar asistencia es: *${code}*\n\nSi no has solicitado este c贸digo, ignora este mensaje.`; - // Usar la instancia global de la configuraci贸n web (ej. ADMIN) - const instanceName = process.env.EVOLUTION_INSTANCE || `cliente_${targetOwnerId}`; + // 馃憞 SOLUCI脫N: Usamos EXACTAMENTE el mismo nombre que crea tu panel web + const instanceName = `cliente_${targetOwnerId}`; + + console.log(`[OTP] Enviando WhatsApp a ${cleanPhone} por la instancia: ${instanceName}`); sendWhatsAppAuto("34" + cleanPhone, msg, instanceName, false).catch(console.error); res.json({ ok: true });