This commit is contained in:
cangui 2025-05-06 22:00:51 +02:00
parent fdece82ee5
commit 4a3cd2ee18

View File

@ -503,45 +503,47 @@ app.post('/testInteractiveImage', async (req, res) => {
return res.status(400).json({ error: 'Non connecté à WhatsApp' });
}
const jid = `${phone}@s.whatsapp.net`;
try {
await sock.sendMessage(
jid,
{
image: { url: "https://wa.canguidev.fr/static/logo-merlo-cs-FR.jpg" }, // remplace par une vraie image en HTTPS
caption: "📌 Découvrez notre service interactif !",
title: "Merlo Interactive Demo",
subtitle: "Choisissez une action",
footer: "MERLO France © 2025",
media: true,
interactiveButtons: [
{
name: "quick_reply",
buttonParamsJson: JSON.stringify({
display_text: "📩 Contacter un conseiller",
id: "contact_support"
})
const content = {
viewOnceMessage: {
message: {
messageContextInfo: {
deviceListMetadata: {},
deviceListMetadataVersion: 2
},
interactiveMessage: proto.Message.InteractiveMessage.create({
header: {
hasMediaAttachment: true,
imageMessage: { url: "https://canguidev.fr/static/logo-merlo-cs-FR.jpg" }
},
{
name: "cta_url",
buttonParamsJson: JSON.stringify({
display_text: "🌐 Voir notre site",
url: "https://canguidev.fr"
})
body: { text: "Bienvenue chez Merlo France 🇫🇷\nChoisissez une action ci-dessous." },
footer: { text: "MERLO - Support & Documentation" },
nativeFlowMessage: {
buttons: [
{
name: "cta_reply",
buttonParamsJson: JSON.stringify({
display_text: "📩 Contacter support",
id: "support_action"
})
},
{
name: "cta_url",
buttonParamsJson: JSON.stringify({
display_text: "🌐 Voir la fiche produit",
url: "https://example.com/product"
})
}
]
}
]
},
{
quoted: null // tu peux y mettre un message si tu veux répondre à un msg précédent
})
}
);
res.json({ success: true });
} catch (e) {
console.error("❌ Erreur interactive image :", e);
res.status(500).json({ error: e.message });
}
}
};
const jid = `${phone}@s.whatsapp.net`;
const msg = generateWAMessageFromContent(jid, content, {});
await sock.relayMessage(jid, msg.message, { messageId: msg.key.id });
});
// 5) 404 et gestion des erreurs