使用 WhatsApp-WebJS 在一条消息中发送多张图片

Sending Multiple Images in a Single Message Using WhatsApp-WebJS

提问人:Althaf 提问时间:9/26/2023 更新时间:10/22/2023 访问量:137

问:

我正在尝试使用 WhatsApp-WebJS 库在一条 WhatsApp 消息中发送多张图像。虽然我的代码执行时没有错误并返回“成功”,但 WhatsApp 上没有收到图像和消息。我正在寻求有关如何解决此问题并确保成功传输图像的指导。

代码示例:

const { Client, MessageMedia  } = require('whatsapp-web.js');
const qrcode = require('qrcode-terminal');
const path = require("path");
const client = new Client();

// Listen for the 'qr' event to display the QR code for authentication
client.on('qr', (qr) => {
    // Display the QR code for the user to scan
    console.log('Scan the QR code to authenticate:');
    console.log(qr);
    qrcode.generate(qr, {small: true});
});

// Listen for the 'ready' event, indicating the client is ready to use
client.on('ready', () => {
    console.log('Client is ready!');
    
    // Now that the client is ready, you can use it to check if a user is registered
    sendMultipleImagesFromURLs();
});

// Initialize the client
client.initialize();

// Function to send multiple images from URLs
async function sendMultipleImagesFromURLs() {
    const phoneNumber = '[email protected]'; // Recipient's phone number
    const imageUrls = [
        'https://example.com/image1.jpg',
        'https://example.com/image2.jpg',
        'https://example.com/image3.jpg',
    ];

    try {
        // Create an array to store MessageMedia objects for the images
        const mediaArray = [];

        // Create a MessageMedia object for the image
        for (const imageUrl of imageUrls) {
            const media = await MessageMedia.fromUrl(imageUrl);
            mediaArray.push(media);
        }

        // Send the images as attachments in a single message
        const msg = await client.sendMessage(phoneNumber, mediaArray);

        console.log('Multiple images sent successfully from URLs.');
    } catch (error) {
        console.error('Error sending multiple images from URLs:', error);
    }
}

问题描述:我尝试使用 WhatsApp-WebJS 库在一条 WhatsApp 消息中发送多张图像,但 WhatsApp 上没有收到图像和消息。我的代码不会抛出任何错误,并且会报告成功。但是,该消息永远不会出现在聊天中。

  1. 已检查控制台中是否存在错误或异常,但未发现任何错误或异常。
  2. 已验证映像文件是否存在且可访问。

我希望当我发送包含多张图像的消息时,该消息以及所有图像应该在 WhatsApp 上收到而不会出现任何问题。

其他信息:

  • WhatsApp-WebJS 版本:[“https://github.com/Julzk/whatsapp-web.js/tarball/jkr_hotfix_7”]
  • 节点.js版本:[v18.17.0]
JavaScript 节点 .js 快速 消息 WhatsApp

评论


答:

0赞 PurpShell 10/22/2023 #1

不可能。您在 whatsapp 上看到的是一连串的单个图像。您应该将 sendMessage 函数调用放在函数中,而不是推送到 mediaArray 中。