From c484a3a3957d6c6f0e0d9f170a62c45e886da5d7 Mon Sep 17 00:00:00 2001 From: AI Bot Date: Mon, 24 Aug 2026 14:08:23 -0500 Subject: [PATCH] feat(whatsapp): enrutar todas las notificaciones y aprobaciones exclusivamente a Notificaciones Almeira sin intervenir en grupos de origen --- src/app/api/webhooks/whatsapp/route.ts | 35 ++++++++++---------------- 1 file changed, 13 insertions(+), 22 deletions(-) diff --git a/src/app/api/webhooks/whatsapp/route.ts b/src/app/api/webhooks/whatsapp/route.ts index 4414e1e..220c202 100644 --- a/src/app/api/webhooks/whatsapp/route.ts +++ b/src/app/api/webhooks/whatsapp/route.ts @@ -189,27 +189,18 @@ export async function POST(req: Request) { return NextResponse.json({ success: true, message: 'Ignored empty message' }, { status: 200 }); } - // Descubrir si existe un grupo central de Notificaciones/Aprobaciones - const adminNotificationJid = await getNotificationGroupJid(); - const destinationJid = adminNotificationJid || remoteJid; - const isCentralizedAdmin = Boolean(adminNotificationJid && adminNotificationJid !== remoteJid); + // Descubrir el grupo central de Notificaciones y Aprobaciones (Notificaciones Almeira) + const adminNotificationJid = await getNotificationGroupJid() || '120363428012905103@g.us'; + const destinationJid = adminNotificationJid; - // Notificación de Progreso 1: Recepción inmediata (asíncrona / no bloqueante) - if (isCentralizedAdmin) { - sendWhatsAppMessage( - remoteJid, - `📥 *Comunicado Recibido*\n` + - `_Almeira Web • Redacción Editorial_\n\n` + - `Tu información ha sido recibida y remitida a la mesa editorial para su revisión.` - ).catch(e => console.warn('[WhatsApp Webhook] No se pudo enviar acuse a la fuente:', e.message)); - } else { - sendWhatsAppMessage( - remoteJid, - `📥 *Información Recibida*\n` + - `_Almeira Web • Asistente Editorial con IA_\n\n` + - `🤖 Iniciando análisis con IA y procesamiento de contenido...` - ).catch(e => console.warn('[WhatsApp Webhook] No se pudo enviar notificación de inicio:', e.message)); - } + // Notificación de Progreso 1: Enviada EXCLUSIVAMENTE a Notificaciones Almeira + sendWhatsAppMessage( + destinationJid, + `📥 *Nueva Información Recibida*\n` + + `📍 *Fuente:* ${filterResult.resolvedName}\n` + + `_Almeira Web • Asistente Editorial con IA_\n\n` + + `🤖 Iniciando análisis con IA, estructuración y optimización de contenido...` + ).catch(e => console.warn('[WhatsApp Webhook] No se pudo enviar notificación de inicio:', e.message)); // Recolectamos todas las imágenes/multimedia candidatas (mensaje actual + lote reciente del mismo chat) const candidateMediaList: Array<{ base64: string; mimeType: string }> = []; @@ -250,7 +241,7 @@ export async function POST(req: Request) { : `📄 *Formato:* Publicación en texto`; const progressMsg = `⚙️ *Procesando Publicación*\n` - + (isCentralizedAdmin ? `📍 *Fuente:* ${filterResult.resolvedName}\n\n` : '\n') + + `📍 *Fuente:* ${filterResult.resolvedName}\n\n` + `📌 *Titular:* ${parsed.titulo}\n` + `📂 *Categoría:* ${parsed.tipo.toUpperCase()}\n` + `${mediaStatus}\n\n` @@ -375,7 +366,7 @@ export async function POST(req: Request) { } const requestText = `🔔 *PUBLICACIÓN LISTA - SOLICITUD DE APROBACIÓN*\n\n` - + (isCentralizedAdmin ? `📍 *Fuente:* ${filterResult.resolvedName}\n\n` : '') + + `📍 *Fuente:* ${filterResult.resolvedName}\n\n` + `📌 *Titular:*\n${parsed.titulo}\n\n` + `🖼️ *Imagen Destacada:*\n${imageNotice}\n\n` + `📝 *Resumen:*\n${parsed.seo_descripcion}\n\n`