Реагирование на реакции disnake.py

Пытаюсь реализовать систему голосований(disnake.py). Поискав на просторах ruSO у меня получился следующий код(это ког!):

@commands.command(name = 'vote')
async def vote(self, ctx):
    message = await ctx.send('s')
    await message.add_reaction('<:plus:1063783067401080922>')
    await message.add_reaction('<:minus:1063783098623459360>')

try:
    payload = await self.bot.wait_for('raw_reaction_add', timeout=10.0)
    if str(payload.emoji) == '<:plus:1063783067401080922>':
        await ctx.send('за')
    elif str(payload.emoji) == '<:minus:1063783098623459360>':
        await ctx.senf('против')
except asyncio.TimeoutError:
    return await ctx.send('время вышло')

он работает криво. С одного аккаунта прожимаю "галочку" и бот с опозданием выводит "за", захожу с другого аккаунта и делаю тоже самое. Реакции бота не дождался.

Что мне нужно: реализовать реагирование на реакции где после нажатия одной реакции выводится сообщение а, после нажатия другой сообщение b. То есть ровно такая же логика как в коде выше только чтоб всё было корректно.


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