Python Discord BOT. Простая, но досадная ошибка

Я только что открыл для себя этот сайт и подумал, может ли кто-нибудь мне помочь. Я действительно не знаю, подходит ли это название, но на данный момент подойдет.

Итак, у меня есть код, который выглядит так:

@client.command(pass_context=True)
async def member(self, *, member: discord.Member = None, role : discord.Role = None):
    if member is None:
        await client.say("You need to tag someone!")
    elif role is None:
        await client.say("You need to tag a role to add!")
    else:
        await client.add_roles(member, role)
        await client.say("Role added!")

Я думаю, что он "работает" достаточно хорошо, потому что я не вижу ошибок при вводе команды! Member @Dude. Бот просто говорит мне, что мне нужно пометить роль, которую нужно добавить. НО! Когда я помечаю роль, которую нужно добавить, это не работает. На самом деле проблема в том, что бот считает, что роль, которую я помечаю, является частью имени члена. Может с ошибкой будет лучше. Ошибка, о которой я вам рассказал, - одна из последних строк этого изображения.

Как видите, там написано, что участник не найден. Но второй идентификатор должен быть идентификатором роли. Что я делаю неправильно? Я очень плохо разбираюсь в discord.py, поэтому, если бы кто-то мог мне помочь, было бы очень мило с его стороны! :)

(Кроме того, извините за мой плохой английский и извините, если это не по теме, просто мне надоели эти ошибки, потому что я всегда получаю еще одну, когда одна решена.)

РЕДАКТИРОВАТЬ: Я только что исправил это, но теперь получаю ошибку завивки. «Запрещено: ЗАПРЕЩЕНО (код состояния: 403): отсутствуют разрешения»


person Theodore    schedule 15.06.2017    source источник
comment
Вы можете спросить на сервере Discord, они не написали полезной документации.   -  person codeiscool    schedule 15.06.2017


Ответы (2)


Убедитесь, что вы предоставили боту разрешения на управление ролью. Если этого нет, то он не может добавлять или удалять роли. Также убедитесь, что бот находится выше в иерархии ролей, чем роль, которую вы его добавляете.

person Tim    schedule 01.07.2017
comment
Перенос роли бота в ТОП всех ролей решил эту странную проблему. - person Ravi Soni; 08.02.2021

Я только что исправил это, но теперь получаю ошибку завивки. «Запрещено: ЗАПРЕЩЕНО (код состояния: 403): отсутствуют разрешения»

У бота должно быть Manage Roles разрешение на сервере, а роль для добавления должна быть ниже, чем верхняя роль бота.

person Fixator10    schedule 09.07.2017