ezezezeze

This commit is contained in:
julien 2025-05-06 16:54:40 +02:00
parent 73f9ea74d5
commit c3ed2a5405

View File

@ -129,11 +129,11 @@ app.post('/sendInteractiveImage', async (req, res) => {
} }
try { try {
// 1) Construire l'URL publique de l'image // 1) URL publique de votre image
const BASE_URL = process.env.BASE_URL || 'https://wa.canguidev.fr'; const BASE_URL = process.env.BASE_URL || 'https://wa.canguidev.fr';
const imageUrl = `${BASE_URL}/static/logo-merlo-cs-FR.jpg`; const imageUrl = `${BASE_URL}/static/logo-merlo-cs-FR.jpg`;
// 2) Préparer le contenu brut du message // 2) Contenu brut du message interactif
const rawMessage = { const rawMessage = {
viewOnceMessage: { viewOnceMessage: {
message: { message: {
@ -142,9 +142,11 @@ app.post('/sendInteractiveImage', async (req, res) => {
deviceListMetadataVersion: 2 deviceListMetadataVersion: 2
}, },
interactiveMessage: proto.Message.InteractiveMessage.create({ interactiveMessage: proto.Message.InteractiveMessage.create({
// ici on injecte l'image dans le header sans besoin de type explicite
header: proto.Message.InteractiveMessage.Header.create({ header: proto.Message.InteractiveMessage.Header.create({
type: proto.Message.InteractiveMessage.HeaderType.IMAGE, imageMessage: { url: imageUrl },
imageMessage: { url: imageUrl } title: 'Igna',
subtitle: 'test'
}), }),
body: proto.Message.InteractiveMessage.Body.create({ body: proto.Message.InteractiveMessage.Body.create({
text: caption || 'Description par défaut' text: caption || 'Description par défaut'
@ -157,13 +159,13 @@ app.post('/sendInteractiveImage', async (req, res) => {
{ {
urlButton: proto.Message.InteractiveMessage.URLButton.create({ urlButton: proto.Message.InteractiveMessage.URLButton.create({
displayText: '📄 Voir proposition', displayText: '📄 Voir proposition',
url: 'https://merlo-ch.com/uploads/proposition/f_p_250505_0000136_00008_EB00001909.pdf' url: 'https://merlo-ch.com/uploads/proposition/f_p_250505_0000136_00008_EB00001909.pdf'
}) })
}, },
{ {
urlButton: proto.Message.InteractiveMessage.URLButton.create({ urlButton: proto.Message.InteractiveMessage.URLButton.create({
displayText: '🔧 Spécifications', displayText: '🔧 Spécifications',
url: 'https://merlo-ch.com/uploads/proposition/d_p_250505_0000136_00008_EB00001909.pdf' url: 'https://merlo-ch.com/uploads/proposition/d_p_250505_0000136_00008_EB00001909.pdf'
}) })
} }
] ]
@ -173,7 +175,7 @@ app.post('/sendInteractiveImage', async (req, res) => {
} }
}; };
// 3) Générer et relayer le message // 3) Générer et envoyer
const jid = `${phone}@s.whatsapp.net`; const jid = `${phone}@s.whatsapp.net`;
const msg = generateWAMessageFromContent(jid, rawMessage, {}); const msg = generateWAMessageFromContent(jid, rawMessage, {});
await sock.relayMessage(jid, msg.message, { messageId: msg.key.id }); await sock.relayMessage(jid, msg.message, { messageId: msg.key.id });