Боты в MAX и Telegram: заявки, согласия на ПД, передача менеджеру
Задача: Сеть детских центров с двумя филиалами получала обращения в мессенджерах вручную. Заявки терялись, согласие на обработку персональных данных нигде не фиксировалось, а вне часов работы человек оставался без ответа.
Решение: Собрал двух ботов под одну логику, в MAX и в Telegram. Человек идёт по шагам кнопками: приветствие, согласие на обработку данных, отдельное согласие на рекламу, выбор филиала, данные ребёнка, свободный вопрос. Обращение уходит в рабочую группу менеджеров, ответ менеджера возвращается человеку в тот же чат. Вне рабочих часов отвечает бот. Согласие хранится строкой: кто, когда и какую редакцию текста принял, а история переписки пишется в обе стороны, чтобы менеджер видел, сколько раз человек уже обращался.
Результат: Оба бота работают на сервере заказчика с августа 2026. Перед сдачей прогнал 126 автотестов, прошёл весь путь клиента руками в живом мессенджере и проверил вебхук тремя запросами: свой секрет отвечает 200, чужой 403, без заголовка 403.
Отдельная часть работы, которой не видно снаружи: подписка на события у MAX слетает после перезапуска, поэтому за ней следит сторож, а сертификат продлевается сам с перезагрузкой веб-сервера.
Стек: Python, Bot API MAX, aiogram, SQLite, nginx, systemd.
Данные заказчика обезличены, экраны на картинках собраны как макеты.