// Using Node built-in fetch // This script simulates a webhook payload entirely on localhost, // causing the endpoint to trigger Gemini and send a real message to the target WhatsApp group. async function testWebhook() { const payload = { event: 'messages.upsert', data: { key: { remoteJid: '573134848203-1408546044@g.us', // The Publications group fromMe: false, id: 'TEST_MESSAGE_ID_12345' }, pushName: 'Admin de Prueba (AI)', message: { conversation: 'Gran Bingo Bailable para la recolección de fondos navideños. Se aceptan donaciones hasta el 31 de noviembre. No faltes!' } } }; try { console.log("Enviando petición a la ruta local (asegúrate de tener 'npm run dev' abierto en otra terminal)..."); const response = await fetch('http://localhost:3000/api/webhooks/whatsapp', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(payload) }); const data = await response.json(); console.log("Respuesta del servidor local:", response.status, data); if (response.ok) { console.log("\n¡Si todo salió bien, debió aparecerte un mensaje de validación en tu grupo de WhatsApp!"); } } catch (e) { console.error("Error contactando al servidor local (Quizás no está encendido):", e.message); } } testWebhook();