У меня есть код, который по нажатию на кнопку принимает написанное пользователем следующее сообщение.
Т.е. у меня стоит эмбед с кнопками и когда человек нажимает на кнопку то ему бот пришет: введите пользователя. И когда пользователь упоминает его, то бот выдаёт ошибку:
Ignoring exception in command test1:
Traceback (most recent call last):
File "C:\Users\Fenix\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\ext\commands\core.py", line 85, in wrapped
ret = await coro(*args, **kwargs)
File "C:\Users\Fenix\Desktop\modern\Beta(войсы(все))\cogs\private.py", line 165, in createembedforprivateroom
await channel4.set_permissions(user, connect=False)
File "C:\Users\Fenix\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\abc.py", line 648, in set_permissions
raise InvalidArgument('target parameter must be either Member or Role')
discord.errors.InvalidArgument: target parameter must be either Member or Role
Как мне убрать эту ошибку, и что бы когда пользователь упоминает другого пользователя, упомянутый заносился в права канала - не заходить.
Мой код вот:
await ctx.send(f'**Упомяните** пользователя у которого хотите **забрать** доступ к комнате!. Для этого у вас есть 20 секунд!', delete_after=20)
res = await self.bot.wait_for("message", check=lambda i: i.author == member, timeout=20)
cd = res.content \
.replace("<", "") \
.replace("@", "") \
.replace("!", "") \
.replace(">", "")
user = get(self.bot.get_all_members(), id=cd)
channel4 = self.bot.get_channel(channel1)
await channel4.set_permissions(user, connect=False)
await ctx.send(f'{member.mention}, вы **закрыли доступ** в комнату пользователю {user.mention}')
Прошу помочь мне с этим вопросом. Если вам недостаточно чего-либо - пишите, допишу.