Как заставить моего бота Discord говорить то, что я говорю, а затем удалить мое сообщение - PullRequest
0 голосов
/ 25 мая 2020

Итак, я делаю команду, которая заставляет бота говорить то, что я говорю, а затем удалять это, есть помощь?

Вот моя идея

Я отправляю сообщение

Бот говорит мое сообщение

Затем бот удаляет то, что я сказал.

Если кто-нибудь знает, пожалуйста, скажите мне, я был бы признателен.

1 Ответ

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

Следующий код выполняет три функции для каждого отдельного сообщения, которое он получает, и имеет встроенную отказоустойчивую систему, так что он повторяет только сообщение не-ботов, потому что в противном случае оно упало бы в бесконечное l oop:

async def on_message(message):
    if message.author.bot:
        return # the user is a bot, we stop execution here
    await message.channel.send(message.content) # send the message
    await message.delete() # delete the message

ВНИМАНИЕ: этот код очень небезопасен в том смысле, что если пользователь пытается упомянуть всех (даже без разрешений), а бот имеет разрешение упоминать всех, он упомянет всех в своем сообщении.

Если вам нужна эта функция со всеми ее функциями, вы можете использовать бота Pluralkit .

Если вы хотите, чтобы вся эта функциональность была помещена в команду, вы можете захотеть чтобы проверить расширения для discord.py

...