Discord JS - отправка dm каждому пользователю на каждом сервере, на котором работает бот. - PullRequest
0 голосов
/ 07 мая 2020

Я хочу создать команду типа - /announcement, но я хочу отправить сообщение каждому пользователю сервера, на котором бот выглядит следующим образом:

Server a - will send

Сервер B - тоже отправит, запустив одну команду, Это возможно?

1 Ответ

1 голос
/ 07 мая 2020

Вы можете использовать client.users, чтобы получить всех пользователей, которые были кэшированы, тогда вы можете сделать следующее:

client.users.cache.forEach(user => {
  user.send('hello')
})

В качестве альтернативы вы можете l oop через все ваши гильдии используют client.guilds и, просматривая их, l oop через их членов и отправляют им сообщения.

client.guilds.cache.forEach(guild => {
  guild.members.cache.forEach(member => {
    member.send('hello')
  })
})

Примечание: в зависимости от количества пользователей это будет займет много времени, чтобы завершить sh, и ваш бот будет отставать, а также высока вероятность ограничения скорости.

...