Обзор ===== .. meta:: :description: Обработка событий в maxo: роутеры, фильтры, мидлвари, хендлеры, FSM, фасады, ошибки, сигналы, long-polling и вебхуки для ботов MAX (max.ru). :keywords: maxo роутеры, фильтры бот max, middleware maxo, хендлеры max.ru, FSM состояния, long-polling, webhook бот max В этом разделе подробно описано, как **maxo** обрабатывает входящие события, маршрутизирует их и позволяет вам гибко управлять логикой бота. Архитектура построена на цепочке ответственности: от получения события (Update) до его обработки в конкретной функции (Handler). Основные компоненты ------------------- * :doc:`routers` - организация структуры бота с помощью роутеров и диспетчера. Узнайте, как масштабировать приложение и разделять логику. * :doc:`filters` - инструменты для фильтрации событий. Как использовать встроенные фильтры, писать свои и комбинировать их с помощью логических операторов. * :doc:`middlewares` - механизм перехвата событий. Различие между внешними (Outer) и внутренними (Inner) мидлварями и как они влияют на поток выполнения. * :doc:`handlers` - всё о функциях-обработчиках: аргументы, контекст выполнения (Ctx) и внедрение зависимостей. * :doc:`fsm` - состояния (FSM). Как сохранять состояние диалога и данные между сообщениями. * :doc:`facades` - объекты для упрощения взаимодействия с API и ответов на события. * :doc:`errors` - перехват исключений и обработка ошибок, возникающих в процессе работы бота. * :doc:`signals` - сигналы жизненного цикла (startup, shutdown) для инициализации и освобождения ресурсов. * :doc:`long-polling` - механизм получения обновлений через Long Polling. * :doc:`webhooks` - механизм получения обновлений через Webhook. * :doc:`bot-mixin` - инъекция экземпляра бота в датаклассы ``MaxoType`` через ``BotMixin`` и реторту.