Вот код:
\
import qrcode
import discord
from discord.ui import Button, View
from discord.ext import commands
bot = commands.Bot(command_prefix='.', intents=discord.Intents.all())
@bot.event
async def on_ready():
print('Бот запущен...')
@bot.event
async def give_stalker(inter):
await inter.response.send_message('Вам выдана роль сталкера')
server = bot.get_guild(inter.guild.id)
r_s = server.get_role(1055931128478969996)
user = inter.author
await user.add_roles(r_s)
@bot.event
async def give_bandit(inter):
await inter.response.send_message('Вам выдана роль бандита')
server = bot.get_guild(inter.guild.id)
r_b = server.get_role(1055931207512248431)
user = inter.author
await user.add_roles(r_b)
@bot.event
async def on_member_join(member):
stalker = Button(label='STALKER', style=discord.ButtonStyle.green, custom_id='stalker')
bandit = Button(label='BANDIT', style=discord.ButtonStyle.grey, custom_id='bandit')
view = View()
view.add_item(stalker)
view.add_item(bandit)
channel = member.guild.system_channel
guild = member.guild
role = guild.get_role(1060445700825030766)
await channel.send(f'Добро пожаловать к нам, {member}.\n'
f"Расскажи о себе:\n"
"\n"
"1. Как звать тебя? (Никнейм в игре)\n"
"2. Сколько лет?\n"
"3. Из какой группировки? (Зайти в канал выбор-группировки)\n"
"4. Где обосновался? (Кордон, болото, бар)\n"
"\n"
"Чувствуй себя как дома!", view=view)
stalker.callback = give_stalker
bandit.callback = give_bandit
await member.add_roles(role)
@bot.command()
async def clear(ctx, amount: int):
await ctx.channel.purge(limit=amount + 1)
@bot.command()
async def qrc(ctx, code: str):
await ctx.channel.purge(limit=1)
img = qrcode.make(code)
img.save('img/qrcode.png')
await ctx.send(file=discord.File(fp='img/qrcode.png'))
bot.run('MTA2MDE0MTQ5Mzg2MTQ4NjYyMg.Gos_7V.kBOufmDpLgLOJpAJlD2Epmdvs8BR_I6vceTuME')
Бот должен выдавать роль по нажатии на кнопку, но выдаёт ошибку AttributeError: 'Interaction' object has no attribute 'author'. Код нашёл в stack overflow. Там всё работает, но у меня нет(
ВОПРОС РЕШЁН:
Нужно было заменить inter.author на inter.user