Взаимодействие с реакциями

Решил создать предложку для мемов в дискорде. Принцип работы такой: человек отправляет свой мем, он отправляется в определенный канал на проверку, к сообщению добавляются реакции лайк/дизлайк. При нажатии на лайк, мем отправляется в канал с мемами. При нажатии на дизлайк, автору отправляется сообщение о том, что его мем не приняли. Код вроде как рабочий, но у меня нет взаимодействия с реакциями. При нажатии ничего не происходит. Как можно это сделать?

@client.command()
async def мем(ctx):
    channel2 = client.get_channel(747507453780033636) # куда отправляются мемы на проверку
    channel3 = client.get_channel(745583890701221958) # куда постятся одобренные мемы

    f = await ctx.message.attachments[0].to_file()
    embed = discord.Embed(description='Мем предложил: {}'.format(ctx.author.mention), color=0xf1c40f)
    embed.set_image(url=f"attachment://{f.filename}")
    await ctx.message.delete()
    mess2 = await channel2.send(file=f, embed=embed)
    await mess2.add_reaction("?")
    await mess2.add_reaction("?")

    if reaction.emoji=="?":
        embed=discord.Embed(description='? {}'.format(ctx.author.mention))
        mess3 = await channel3.send(file=f, embed=embed)
        await mess3.add_reaction('?')

        emb=discord.Embed(description='Поздравляю, твой мем приняли!?')
        await ctx.author.send(embed=emb)

    if reaction.emoji=="?":
        embed=discord.Embed(description='Твой мем не приняли, придумай новый?')
        await ctx.author.send(embed=embed)
   

Ответы (1 шт):

Автор решения: wetwixs
@client.command()
async def test(ctx, url):
    channel2 = client.get_channel(729733881129074768) # куда отправляются мемы на проверку
    channel3 = client.get_channel(703596629923725339) # куда постятся одобренные мемы
    odobreniy_role = ctx.guild.get_role(718816678179504128) #Роль для одобрения этих мемов

    embed = discord.Embed(description='Мем предложил: {}'.format(ctx.author.mention), color=0xf1c40f)
    embed.add_field(name = 'Картинка', value = url, inline=False)
    await ctx.message.delete()
    mess2 = await channel2.send(embed=embed)
    await mess2.add_reaction("?")
    await mess2.add_reaction("?")

    def check(reaction, user):
        return odobreniy_role in user.roles #Проверка, для одобрения

    reaction, user = await client.wait_for("reaction_add", check = check)

    if str(reaction) =="?":
        embed=discord.Embed(description='? {}'.format(ctx.author.mention))
        embed.set_image(url=url)
        mess3 = await channel3.send(embed=embed)
        await mess3.add_reaction('?')

        emb=discord.Embed(description='Поздравляю, твой мем приняли!?')
        await ctx.author.send(embed=emb)

    else:
        embed=discord.Embed(description='Твой мем не приняли, придумай новый?')
        await ctx.author.send(embed=embed)

Если что, то нужно написать !test и ссылку на этот ваш мем.

→ Ссылка