Бот ожидает ответа от другого бота перед отправкой нового сообщения. (Раздор. JS) - PullRequest
0 голосов
/ 26 мая 2020

Я создал бота, который отвечает другому боту; как-то связано с Cleverbot. Однако, когда боту требуется время для ответа, его сообщение застревает и он спамит. Мне просто интересно, как я могу заставить бота ждать сообщения другого бота, чтобы он отправил сообщение, прежде чем он отправит сообщение снова. изображение

client.on('message', async message => {
  if(!message.author.bot) return
  message.channel.startTyping();
  let content = message.content;
  chatbot.getReply(content).then(r => message.channel.send(r))
  message.channel.stopTyping();
});

1 Ответ

0 голосов
/ 26 мая 2020

Вот как бы я сделал это в стабильной версии Discord. js (v12)

...

client.on('message', async message => {

var author = message.author;
var content = message.content;
var botChannel = message.channel;

if(author.bot){
//author is a bot so we respond
botChannel.startTyping();
botChannel.send(`${author}, <Your message here>`).then( (msg) => {
      botChannel.stopTyping();
  }
 );
} else {
    //nothing happens because it's a human 
    return; 
}
);
...