пишу бота для дискорд сервера, добавил ban и unban, ban работает исправно, unban не работает вообще, в консоли появляется ошибка(ниже прикреплю), подскажите, что делать, пожалуйста.
Код:
import discord
import asyncio
from discord.ext import commands
bot = commands.Bot(command_prefix='>', intents = discord.Intents.all(), case_insensitive = True)
bot.remove_command('help')
@bot.event
async def on_ready():
print('Started')
@bot.command()
async def clear(ctx, count: int):
await ctx.channel.purge(limit=count + 1)
await ctx.send(f"Было удаленно {count} сообщений")
@bot.command()
async def ban(ctx, member: discord.Member,time=None, *, reason=None):
async def unb(member):
users = await ctx.guilde.bans()
for ban_user in users:
if ban_user.user == member:
await ctx.guilde.unban(ban_user.user)
if member:
if time:
time_letter = time[-1:]
time_numbers = int(time[:-1])
def t(time_letter):
if time_letter == 's':
return 1
if time_letter == 'm':
return 60
if time_letter == 'h':
return 3600
if time_letter == 'd':
return 3600 * 24
if reason:
await member.ban(reason=reason)
await ctx.send(
embed=discord.Embed(description=f'Пользователь {member.mention} был забанен \nНа время:{time} \n Причина: {reason}'))
await asyncio.sleep(time_numbers * t(time_letter))
await unb(member)
await ctx.send(f'Пользователь {member.mention} был разбанен по истечению срока бана!')
else:
await member.ban()
await ctx.send(embed = discord.Embed(description=f'Пользователь {member.mention} был забанен \nНа время: {time}'))
await asyncio.sleep(time_numbers * t(time_letter))
await unb(member)
await ctx.send(f'Пользователь {member.mention} был разбанен по истечению срока бана!')
else:
await member.ban()
await ctx.send(
embed=discord.Embed(description=f'Пользователь {member.mention} был забанен \nНа время: не указано'))
else:
await ctx.send('Введите имя пользователя')
@bot.command()
async def unban(ctx, id: int = None):
if id:
banned_users = await ctx.guild.bans()
member_full = bot.get_user(id=id)
for ban in banned_users:
if ban.user == member_full:
await ctx.guild.unban(ban.user)
await ctx.send('Пользователь разбанен!')
else:
await ctx.send('Введите id пользователя')
bot.run('тут мой токен')
Ошибка: