есть рабочая но и то абы как написана функция антифлуда:
async def anti_flood(*args, **kwargs):
message = args[0]
muteint = int(1)
await message.answer(f"{message.from_user.first_name}, Бан 1 минута за флуд!")
await bot.restrict_chat_member(message.chat.id, message.from_user.id, until_date=int(time.time()) + muteint*30)
Не знаю, правильно ли я описал обработчики, чувствую нет: (но работает)
@dp.message_handler(content_types=['text'])
@dp.throttled(anti_flood, rate=1)
async def main(message: types.Message):
handle = None
Основная проблема заключается в том, что при флуде непосредственно в боте функция тоже работает, естественно бот не может заблокировать диалог со своим пользователем и пишет ошибку
Method is available only for supergroups.
Понимаю, что нужно повесить проверку внутри функции
anti_flood:
if message.from_user.id == message.chat.id:
............
но оно не работает...