@dreameddd

Как запретить отвечать боту в личных сообщениях?

Хочу сделать так, чтобы только бот мог писать участнику сервера, а сам участник сервер - нет. Т.е. бот не реагировал на команды в личных сообщениях, только на сервере. Как это можно сделать?
  • Вопрос задан
  • 1234 просмотра
Решения вопроса 1
Добавьте проверку на выполнение команды в ЛС.

Либо на всего бота:
https://discordpy.readthedocs.io/en/stable/ext/com...
@bot.check
async def global_guild_only(ctx):
    if not ctx.guild:
        raise commands.NoPrivateMessage  # replicating guild_only check: https://github.com/Rapptz/discord.py/blob/42a538edda79f92a26afe0ac902b45c1ea20154d/discord/ext/commands/core.py#L1832-L1846
    return True


Либо для каждой команды отдельно:
https://discordpy.readthedocs.io/en/stable/ext/com...
@bot.command()
@commands.guild_only()
async def cmd(ctx, ...):
    """Here we go..."""
    ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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