@eculist32

Команда только для выбранных пользователей discord.py?

Я хочу создать команду, которой можно пользоваться только при определенной роли "access"и"Admin"(<название роли).
Но мне высвечивается все время Insufficient rights какую роль бы не брал

@bot.command()
async def start(ctx):
    author_access_ids = ['779797979797979798']## ид ролей
    if ctx.message.author.id in author_access_ids:
         await ctx.author.send("Type /command")
    else:
        await ctx.author.send("Insufficient rights")
  • Вопрос задан
  • 202 просмотра
Пригласить эксперта
Ответы на вопрос 2
fenrir1121
@fenrir1121 Куратор тега discord.py
Начни с документации
ctx.message.author.id это id самого человека, а не его ролей.

Для проверки ролей есть checks.has_role для одной роли и checks.has_any_role если нужно чтобы была одна из нескольких ролей.
Там же в документации даны примеры использования.

Бонусом сверху проверка по полномочиям, которая более универсальна checks.has_permissions
Ответ написан
@vladislavlisitsyn
fenrir Намного проще будет сделать:
@commands.has_any_role(здесь через запятую перечисляем роли)
Ответ написан
Ваш ответ на вопрос

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

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