Вам нужно разделять логику выполнения команд и обработку событий, чтобы не блокировать работу бота. Для этого вам потребуется распараллелить выполнение команд и обработку событий. Вы можете использовать asyncio и асинхронные функции для выполнения команд без блокировки работы бота. Воспользуйтесь функцией create_task для запуска асинхронной функции в фоновом режиме и продолжите выполнение других команд. Вот пример кода, который иллюстрирует идею: ```python import asyncio from aiogram import Bot, Dispatcher, types bot = Bot(token="ТОКЕН") dp = Dispatcher(bot) async def long_running_command(chat_id): # реализуйте вашу команду здесь await asyncio.sleep(5) # просто ожидание в 5 секунд для демонстрации # например, отправка сообщения в чат, чтобы пользователь узнал о завершении await bot.send_message(chat_id, "Команда выполнена") @dp.message_handler(commands=['my_command']) async def handle_command(message: types.Message): chat_id = message.chat.id # создаем задачу для выполнения асинхронной команды в фоне asyncio.create_task(long_running_command(chat_id)) await bot.send_message(chat_id, "Команда запущена в фоновом режиме") @dp.message_handler() async def handle_message(message: types.Message): # обработка сообщений со стандартной логикой бота pass async def main(): await dp.start_polling() if __name__ == '__main__': loop = asyncio.get_event_loop() loop.create_task(main()) loop.run_forever() ``` В этом примере при получении команды "/my_command" создается задача для выполнения функции long_running_command в фоновом режиме при помощи asyncio.create_task. При этом бот продолжит получать и обрабатывать другие сообщения, не блокируя свою работу. Асинхронные функции выполняются независимо от основного потока выполнения бота, поэтому вы можете иметь несколько параллельных задач, выполняющихся одновременно. Например, вы можете запускать команды в фоне и одновременно слушать и отвечать на сообщения от пользователей.