I wanted to make a ticket system with a close command. But it doesn't work. I do get the embed message but when I react to the message nothing happens. I don't even get an error.
This is my code:
@bot.command(name='Close', aliases=['close'])
async def close(ctx):
if ctx.message.channel.name.startswith('ticket'):
msg = 'The ticket is closed. If you aren\'t done yet react to this message with , if you are react with ️'
embed = discord.Embed(title='Closed ticket', description=msg)
message = await ctx.send(content=None, embed=embed)
await message.add_reaction('')
await message.add_reaction('️')
await ctx.message.channel.set_permissions(ctx.author, send_messages=False, read_messages=True)
def check(reaction, user):
return user == ctx.message.author and str(reaction.emoji) in ['', '️']
reaction, user = await bot.wait_for('reaction_add', check=check)
if reaction.emoji == '️':
countdown = await ctx.send('**Ticket will be closed in 10 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 9 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 8 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 7 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 6 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 5 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 4 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 3 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 2 seconds**')
await asyncio.sleep(1)
await countdown.edit(content='**Ticket will be closed in 1 second**')
await asyncio.sleep(1)
await ctx.message.channel.delete()
await user.send('**Ticket is deleted**')
if reaction.emoji == '':
await ctx.send('**Ticket reopened**')
await ctx.message.channel.set_permissions(user, send_messages=True)
else:
await ctx.send('This isnt a ticket')