у меня есть команда которая создаёт голосовой чат в дискорде, но я пытаюсь сделать так чтобы когда в чате нету людей он удалялся

изначально я пробовал использовать time.sleep что показало что значение кол-во участников заранее равно нулю так как меня там нету я пробовал гуглить, но все мои попытки обновить переменную сводились к тому что она меняла значение только после того как удалила канал ,но толком ничего не нашёл если не хотите помочь хоть скажите как мне стоит гуглить.

и импорты которые я делал

import discord
from discord.ext import tasks, commands
from config import settings
import random
import asyncio
import time

вот та часть кода

@bot.command()
async def voice(ctx):

author = ctx.message.author
category = discord.utils.get(ctx.guild.categories, name='RAINBOW SIX SIEGE?')  #категория в которой создать канал

channel = await bot.guilds[0].create_voice_channel('?Ranked?', category=category)
await channel.edit(user_limit=5)
create_invite = await channel.create_invite()
await ctx.channel.send(f'{create_invite} {author.mention}')

#тут попытка обновить переменую
while True:
    time.sleep(20)
    members_channel = len(channel.members)
    print(members_channel)
    if members_channel < 1:
        time.sleep(10)
        await ctx.channel.purge(limit= 2)
        await channel.delete()

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