Как поставить timeout на кнопку в discord.py

У меня есть код:

        @bot.command()
    async def invite_clan(ctx, member):
        cursor.execute("SELECT name FROM teams WHERE player1 = ?", [ctx.author.id])
        if cursor.fetchone():
            for clandates in cursor.execute("SELECT player2,player3,player4,player5 FROM teams WHERE player1 = ?", [ctx.author.id]):
                if clandates[0] == "None":
                    cursor.execute("UPDATE teams SET player2 = ? WHERE player1 = ?", (ctx.message.mentions[0].id, ctx.author.id))
                    cursor.execute("UPDATE teams SET invitedPlayer = ? WHERE player1 = ?", (ctx.message.mentions[0].id, ctx.author.id))
                    sqlite_connection.commit()
                    view = RequestToClanButton()
                    message = await ctx.reply(content=f"{ctx.author.mention} отправил запрос в клан игроку <@{ctx.message.mentions[0].id}>", view=view)

и так же имеется обратный вызов на кнопку:

class RequestToClanButton(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=20)
    @discord.ui.button(label="Принять", style=discord.ButtonStyle.green)
    async def accept(self, interaction: discord.Interaction, button: discord.ui.Button):

        for clanLeader in cursor.execute("SELECT player1 FROM teams WHERE player2 = ?", [interaction.user.id]):
            for clandates in cursor.execute("SELECT player2,player3,player4,player5,invitedPlayer FROM teams WHERE player1 = ?", [clanLeader[0]]):
                if f"{interaction.user.id}" == f"{clandates[4]}":
                    await interaction.response.edit_message(content=f"{interaction.user.mention} принял приглашение в клан от <@{clanLeader[0]}>",view=None)

Мне необходимо поставить timeout размером в 20 секунд, что-бы если по истичению этого времени никто не нажмет на кнопку, то сообщение отредактируется


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