Actualizar server.js
This commit is contained in:
10
server.js
10
server.js
@@ -915,6 +915,7 @@ app.post("/public/auth/request-otp", async (req, res) => {
|
|||||||
const { phone, owner_id } = req.body;
|
const { phone, owner_id } = req.body;
|
||||||
if (!phone) return res.status(400).json({ ok: false });
|
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 targetOwnerId = owner_id || 1;
|
||||||
const cleanPhone = phone.replace(/\D/g, "");
|
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 code = String(Math.floor(1000 + Math.random() * 9000));
|
||||||
const hash = await bcrypt.hash(code, 10);
|
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(`
|
await pool.query(`
|
||||||
INSERT INTO login_codes (phone, code_hash, purpose, expires_at)
|
INSERT INTO login_codes (phone, code_hash, purpose, expires_at)
|
||||||
VALUES ($1, $2, 'client_portal', NOW() + INTERVAL '15 minutes')
|
VALUES ($1, $2, 'client_portal', NOW() + INTERVAL '15 minutes')
|
||||||
`, [cleanPhone, hash]);
|
`, [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.`;
|
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)
|
// 👇 SOLUCIÓN: Usamos EXACTAMENTE el mismo nombre que crea tu panel web
|
||||||
const instanceName = process.env.EVOLUTION_INSTANCE || `cliente_${targetOwnerId}`;
|
const instanceName = `cliente_${targetOwnerId}`;
|
||||||
|
|
||||||
|
console.log(`[OTP] Enviando WhatsApp a ${cleanPhone} por la instancia: ${instanceName}`);
|
||||||
sendWhatsAppAuto("34" + cleanPhone, msg, instanceName, false).catch(console.error);
|
sendWhatsAppAuto("34" + cleanPhone, msg, instanceName, false).catch(console.error);
|
||||||
|
|
||||||
res.json({ ok: true });
|
res.json({ ok: true });
|
||||||
|
|||||||
Reference in New Issue
Block a user