Проверьте сообщение до последнего

Я не тестировал его, но есть метод bindNodeCallback , который обертывает функцию узла и возвращает другую функцию, возвращающую Observables. Затем concatMap не будет обрабатывать новый элемент до тех пор, пока не будет завершен текущий внутренний Observable.

Итак, в вашем случае использования вы можете использовать, например, следующее:

const obsWrite = bindNodeCallback(client.write);

source
  .pipe(
    map((x: any) => x.join('')),
    concatMap((x: string) => obsWrite(x))
  )
  .subscribe();

0
задан Federico Grandi 19 January 2019 в 13:42
поделиться

1 ответ

Я бы проверил, является ли автор последнего сообщения вашим ботом:

let lastTwo = await message.channel.fetchMessages({limit: 2}), // Get the last 2 messages
  last = lastTwo.last(); // The last in the collection will be the last message
if (last.author.id == client.user.id) await message.channel.bulkDelete(lastTwo);
else await last.delete();
message.channel.send("```Open```");
0
ответ дан Federico Grandi 19 January 2019 в 13:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: