Как сделать массовую рассылку?

В данный момент я сделал так: когда боту пишешь /s он посылает слово тест на 1 указанный номер, как мне сделать чтобы он брал номера из текстового файла каждые 5 секунд поочереди, перебирая их пока они не закончатся.

client.on('message', async msg => {
if (msg.body === '/s') {
    let number = '79216316732';   
    let message = 'тест';
    number = number.includes('@c.us') ? number : `${number}@c.us`;
    let chat = await msg.getChat();
    chat.sendSeen();
    client.sendMessage(number, message);

}

});


Ответы (1 шт):

Автор решения: Rudi

Попробуй что-то такое...

const fs = require('fs');

client.on('message', async msg => {
  let chat = await msg.getChat();
  if (msg.body === '/s') {
    let number = fs.readFileSync('./yourFileName.txt', "utf8").split(' ');// читаем файл разбиваем по пробелам, получаем массив номеров
    let i = 0; 
    let interval = setInterval(()=>{    
      i < number.length ? i++ : clearInterval(interval);      
      let message = 'тест';
      number[i] = number[i].includes('@c.us') ? number[i] : `${number[i]}@c.us`;
      chat.sendSeen();
      client.sendMessage(number[i], message);
    }, 5000);
  }
});

→ Ссылка