Разработчик адаптировал существующего бота, написанного на aiogram 3, FastAPI, PostgreSQL и Redis, для работы в мессенджере MAX. Логика бота осталась прежней, а мессенджер теперь выступает в роли транспортного уровня через специальный адаптер.
Основные отличия API MAX включают хост platform-api2.max.ru, передачу токена в заголовке Authorization и лимиты: 30 запросов в секунду и 4000 знаков в сообщении. Для работы с сертификатами Минцифры потребовалась настройка отдельного SSL-контекста.
Система поддерживает long polling и вебхуки, однако активная подписка на вебхук отключает получение обновлений через polling. Для защиты от дублирования сообщений при параллельной обработке используется asyncio.Lock для каждого пользователя.
Тестирование проводилось с помощью поддельного клиента MAX, что позволило проверить полный цикл работы бота без использования боевого токена. Автор рекомендует выносить клиент MAX в отдельный пакет для упрощения поддержки.






