This commit is contained in:
julien 2025-05-06 16:24:21 +02:00
parent 91e363ea0d
commit 791967b226

View File

@ -127,50 +127,38 @@ app.post('/sendInteractiveImage', async (req, res) => {
}
try {
// 1) Charger l'image
// 1) Charger l'image en buffer
const imagePath = path.join(__dirname, 'public', 'logo-merlo-cs-FR.jpg');
const imageBuffer = fs.readFileSync(imagePath);
// 2) Préparer le média SANS spécifier explicitement le mimetype :
// Baileys détecte automatiquement le format à partir du buffer :contentReference[oaicite:0]{index=0}
const preparedMedia = await prepareWAMessageMedia(
{ image: imageBuffer },
{ upload: sock.waUploadToServer }
);
// 3) Construire le message interactif avec en-tête IMAGE
const message = {
interactive: {
type: 'button',
header: {
type: 'IMAGE',
image: preparedMedia.image
},
body: {
text: caption || 'Description par défaut'
},
footer: {
text: footer || 'Pied de page'
},
action: {
buttons: [
// 2) Envoyer directement avec sendMessage
await sock.sendMessage(
`${phone}@s.whatsapp.net`,
{
type: 'url',
title: 'Proposition',
image: { url: imageBuffer }, // Buffer pris en charge nativement
caption: caption || 'Description par défaut',
title: title || 'Titre par défaut',
subtitle: subtitle || 'Sous-titre',
footer: footer || 'Pied de page',
media: true, // indique un header media
interactiveButtons: [
{
name: 'cta_url',
buttonParamsJson: JSON.stringify({
display_text: '📄 Proposition',
url: 'https://merlo-ch.com/uploads/proposition/f_p_250505_0000136_00008_EB00001909.pdf'
})
},
{
type: 'url',
title: 'Spec machine',
name: 'cta_url',
buttonParamsJson: JSON.stringify({
display_text: '🔧 Spec machine',
url: 'https://merlo-ch.com/uploads/proposition/d_p_250505_0000136_00008_EB00001909.pdf'
})
}
]
}
}
};
// 4) Envoi
await sock.sendMessage(`${phone}@s.whatsapp.net`, message);
);
return res.json({ success: true });
} catch (e) {