Как я могу, чтобы мой бот отправил сообщение любому пользователю, введя его идентификатор пользователя по команде? - PullRequest
0 голосов
/ 16 апреля 2020

Я хотел знать, возможно ли установить команду, в которой я могу просто использовать какой-то идентификатор пользователя и отправить им сообщение? например, если я хочу использовать команду «отправить», а затем бот просто скажет «введите идентификатор пользователя, которому вы хотите отправить сообщение», тогда я просто добавлю идентификатор некоторого пользователя, и тогда бот отправит все сообщение, что мой бот отправил этому пользователю. Я надеюсь, что это имеет смысл.

1 Ответ

0 голосов
/ 16 апреля 2020

Вам понадобится сборщик сообщений .

// message is the Message that the user sent
// client is the Client/bot

message.channel.send('Type the user id that you want to send the message to.')
  .then(() => message.channel.awaitMessages(
    // only include messages from the original author
    m => m.author.id === message.author.id),
    // This stops collecting after one message that passes the above filter
    {max: 1}
  ))
    .then(collected => {
      const id = collected.first().content
      client.users.fetch(id)
        .then(user => user.send('some message'))
        .catch(() => message.channel.send(`${id} is not a valid user ID!`)
    })
...