gfgg
This commit is contained in:
parent
7f0ba5a600
commit
c4ce874b39
217
index.js
217
index.js
@ -466,117 +466,7 @@ app.post('/sendProductMessage', async (req, res) => {
|
|||||||
return res.status(500).json({ error: e.message });
|
return res.status(500).json({ error: e.message });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
<<<<<<< HEAD
|
|
||||||
app.post('/testViewOnce', async (req, res) => {
|
app.post('/testViewOnce', async (req, res) => {
|
||||||
=======
|
|
||||||
app.post('/testProductMessage', async (req, res) => {
|
|
||||||
const { phone } = req.body;
|
|
||||||
|
|
||||||
if (!sock || !isConnected) {
|
|
||||||
return res.status(400).json({ error: 'Non connecté à WhatsApp' });
|
|
||||||
}
|
|
||||||
|
|
||||||
const jid = `${phone}@s.whatsapp.net`;
|
|
||||||
|
|
||||||
try {
|
|
||||||
await sock.sendMessage(
|
|
||||||
jid,
|
|
||||||
{
|
|
||||||
product: {
|
|
||||||
productImage: { url: "https://wa.canguidev.fr/static/logo-merlo-cs-FR.jpg" }, // image du produit
|
|
||||||
productImageCount: 1,
|
|
||||||
title: "Tracteur Merlo TF38.10",
|
|
||||||
description: "Charge maximale 3.8T, hauteur 10m",
|
|
||||||
priceAmount1000: 49500 * 1000, // 49 500 €
|
|
||||||
currencyCode: "EUR",
|
|
||||||
retailerId: "MERLO-FR-001",
|
|
||||||
url: "https://example.com/product/tf38-10"
|
|
||||||
},
|
|
||||||
businessOwnerJid: "1234@s.whatsapp.net",
|
|
||||||
caption: "🛒 Découvrez notre nouveau modèle Merlo TF38.10",
|
|
||||||
title: "Offre Spéciale Merlo",
|
|
||||||
footer: "MERLO France • Offre valable jusqu'au 30/06",
|
|
||||||
media: true,
|
|
||||||
interactiveButtons: [
|
|
||||||
{
|
|
||||||
name: "quick_reply",
|
|
||||||
buttonParamsJson: JSON.stringify({
|
|
||||||
display_text: "📩 Demander un devis",
|
|
||||||
id: "request_quote"
|
|
||||||
})
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "cta_url",
|
|
||||||
buttonParamsJson: JSON.stringify({
|
|
||||||
display_text: "🌐 Voir la fiche produit",
|
|
||||||
url: "https://example.com/product/tf38-10"
|
|
||||||
})
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
quoted: null // ou remplace par un message existant si tu veux répondre à un msg
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
res.json({ success: true });
|
|
||||||
} catch (e) {
|
|
||||||
console.error('❌ Erreur envoi produit :', e);
|
|
||||||
res.status(500).json({ error: e.message });
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
app.post('/testInteractiveImage', async (req, res) => {
|
|
||||||
const { phone } = req.body;
|
|
||||||
|
|
||||||
if (!sock || !isConnected) {
|
|
||||||
return res.status(400).json({ error: 'Non connecté à WhatsApp' });
|
|
||||||
}
|
|
||||||
|
|
||||||
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" }
|
|
||||||
},
|
|
||||||
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"
|
|
||||||
})
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const jid = `${phone}@s.whatsapp.net`;
|
|
||||||
const msg = generateWAMessageFromContent(jid, content, {});
|
|
||||||
await sock.relayMessage(jid, msg.message, { messageId: msg.key.id });
|
|
||||||
|
|
||||||
});
|
|
||||||
app.post('/testButtons2', async (req, res) => {
|
|
||||||
>>>>>>> 15e5852440e045e5e8529d63206d79288ac62dab
|
|
||||||
const { phone } = req.body;
|
const { phone } = req.body;
|
||||||
|
|
||||||
if (!sock || !isConnected) {
|
if (!sock || !isConnected) {
|
||||||
@ -587,7 +477,6 @@ app.post('/testButtons2', async (req, res) => {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
await sock.sendMessage(jid, {
|
await sock.sendMessage(jid, {
|
||||||
<<<<<<< HEAD
|
|
||||||
image: {
|
image: {
|
||||||
url: 'https://wa.canguidev.fr/static/logo-merlo-cs-FR.jpg' // Ton image publique
|
url: 'https://wa.canguidev.fr/static/logo-merlo-cs-FR.jpg' // Ton image publique
|
||||||
},
|
},
|
||||||
@ -598,112 +487,6 @@ app.post('/testButtons2', async (req, res) => {
|
|||||||
res.json({ success: true });
|
res.json({ success: true });
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error('❌ Erreur testViewOnce :', e);
|
console.error('❌ Erreur testViewOnce :', e);
|
||||||
=======
|
|
||||||
text: '📚 *Veuillez choisir le document à télécharger :*',
|
|
||||||
footer: '© Fizzxy Dev',
|
|
||||||
buttons: [
|
|
||||||
{
|
|
||||||
buttonId: 'doc_1',
|
|
||||||
buttonText: { displayText: 'Télécharger Document 1' },
|
|
||||||
type: 1,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
buttonId: 'doc_2',
|
|
||||||
buttonText: { displayText: 'Télécharger Document 2' },
|
|
||||||
type: 1,
|
|
||||||
}
|
|
||||||
],
|
|
||||||
headerType: 1, // Texte seulement
|
|
||||||
});
|
|
||||||
|
|
||||||
res.json({ success: true });
|
|
||||||
|
|
||||||
} catch (e) {
|
|
||||||
console.error('❌ Erreur testButtons :', e);
|
|
||||||
res.status(500).json({ error: e.message });
|
|
||||||
}
|
|
||||||
});
|
|
||||||
app.post('/testButtons3', async (req, res) => {
|
|
||||||
const { phone } = req.body;
|
|
||||||
|
|
||||||
if (!sock || !isConnected) {
|
|
||||||
return res.status(400).json({ error: 'Non connecté' });
|
|
||||||
}
|
|
||||||
|
|
||||||
const jid = `${phone}@s.whatsapp.net`;
|
|
||||||
let msg = generateWAMessageFromContent(m.chat, {
|
|
||||||
viewOnceMessage: {
|
|
||||||
message: {
|
|
||||||
"messageContextInfo": {
|
|
||||||
"deviceListMetadata": {},
|
|
||||||
"deviceListMetadataVersion": 2
|
|
||||||
},
|
|
||||||
interactiveMessage: proto.Message.InteractiveMessage.create({
|
|
||||||
body: proto.Message.InteractiveMessage.Body.create({
|
|
||||||
text: "Fizzxy Dev"
|
|
||||||
}),
|
|
||||||
footer: proto.Message.InteractiveMessage.Footer.create({
|
|
||||||
text: "Bot"
|
|
||||||
}),
|
|
||||||
header: proto.Message.InteractiveMessage.Header.create({
|
|
||||||
title: "Igna",
|
|
||||||
subtitle: "test",
|
|
||||||
hasMediaAttachment: false
|
|
||||||
}),
|
|
||||||
nativeFlowMessage: proto.Message.InteractiveMessage.NativeFlowMessage.create({
|
|
||||||
buttons: [
|
|
||||||
{
|
|
||||||
"name": "single_select",
|
|
||||||
"buttonParamsJson": "{\"title\":\"title\",\"sections\":[{\".menu\":\".play dj webito\",\"highlight_label\":\"label\",\"rows\":[{\"header\":\"header\",\"title\":\"title\",\"description\":\"description\",\"id\":\"id\"},{\"header\":\"header\",\"title\":\"title\",\"description\":\"description\",\"id\":\"id\"}]}]}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cta_reply",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"quick_reply\",\"id\":\"message\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cta_url",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"url\",\"url\":\"https://www.google.com\",\"merchant_url\":\"https://www.google.com\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cta_call",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"call\",\"id\":\"message\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cta_copy",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"copy\",\"id\":\"123456789\",\"copy_code\":\"message\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cta_reminder",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"Recordatorio\",\"id\":\"message\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cta_cancel_reminder",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"cta_cancel_reminder\",\"id\":\"message\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "address_message",
|
|
||||||
"buttonParamsJson": "{\"display_text\":\"address_message\",\"id\":\"message\"}"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "send_location",
|
|
||||||
"buttonParamsJson": ""
|
|
||||||
}
|
|
||||||
],
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {})
|
|
||||||
|
|
||||||
try {
|
|
||||||
await sock.relayMessage(msg.key.remoteJid, msg.message, { messageId: msg.key.id })
|
|
||||||
|
|
||||||
|
|
||||||
res.json({ success: true });
|
|
||||||
|
|
||||||
} catch (e) {
|
|
||||||
console.error('❌ Erreur testButtons :', e);
|
|
||||||
>>>>>>> 15e5852440e045e5e8529d63206d79288ac62dab
|
|
||||||
res.status(500).json({ error: e.message });
|
res.status(500).json({ error: e.message });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user