sddsdsdsdsds

This commit is contained in:
julien 2025-05-06 16:17:53 +02:00
parent 38d3d99550
commit fbf251d713

View File

@ -1,4 +1,4 @@
const { default: makeWASocket, useMultiFileAuthState, DisconnectReason, fetchLatestBaileysVersion, proto, generateWAMessageFromContent, generateWAMessageContent } = require('@fizzxydev/baileys-pro');
const { default: makeWASocket, useMultiFileAuthState, DisconnectReason, fetchLatestBaileysVersion, proto, generateWAMessageFromContent, generateWAMessageContent ,prepareWAMessageMedia} = require('@fizzxydev/baileys-pro');
const express = require('express');
const { Boom } = require('@hapi/boom');
const qrcode = require('qrcode');
@ -122,32 +122,34 @@ app.post('/sendButtons', async (req, res) => {
});
app.post('/sendInteractiveImage', async (req, res) => {
const { phone, caption, title, subtitle, footer } = req.body;
if (!sock || !isConnected) return res.status(400).json({ error: 'Non connecté' });
if (!sock || !isConnected) {
return res.status(400).json({ error: 'Non connecté' });
}
try {
const { prepareWAMessageMedia } = require('@fizzxydev/baileys-pro');
// Lecture du fichier image
const imagePath = path.join(__dirname, 'public', 'logo-merlo-cs-FR.jpg');
const imageBuffer = fs.readFileSync(imagePath);
// Préparation du média avec la méthode officielle
// Préparation du média en spécifiant l'uploader correct
const preparedImage = await prepareWAMessageMedia(
{ image: imageBuffer },
{
upload: sock.aws.uploadStream, // Méthode correcte d'upload
{
upload: sock.waUploadToServer,
mediaType: 'image',
options: { contentType: 'image/jpeg' }
}
);
// Construction du message interactif
// Construction du message interactif avec boutons URL
const message = {
interactive: {
type: 'button',
header: {
type: 'IMAGE',
image: preparedImage.image, // Utilisation du média préparé
image: preparedImage.image,
title: title || 'Titre par défaut',
subtitle: subtitle || 'Sous-titre',
subtitle: subtitle || 'Sous-titre'
},
body: {
text: caption || 'Description par défaut'
@ -172,8 +174,10 @@ app.post('/sendInteractiveImage', async (req, res) => {
}
};
// Envoi du message
await sock.sendMessage(`${phone}@s.whatsapp.net`, message);
res.json({ success: true });
} catch (e) {
console.error('❌ Erreur interactive image :', e);
res.status(500).json({ error: e.message });