Задание: Разработка Чат-ботов. Разработка Telegram-бота и бэкенд-движка для мониторинга слотов автоматизации заполнения форм (MVP) (Дистанционная работа)
Требуется создать систему из Telegram-бота (интерфейс для пользователей) и серверного движка (автоматизация взаимодействия с внешними веб-формами). Система должна обеспечивать мониторинг доступности слотов на сайтах визовых сервисов, управление очередями пользователей, заполнение форм данными из базы и отправку уведомлений. Проект предполагает долгосрочное сотрудничество и регулярную поддержку (актуализация логики при изменениях на целевых сайтах). Функциональные требования Telegram-бот (пользовательский интерфейс) Личный кабинет пользователя: выбор города подачи, типа визы (индивидуальная/семейная), установка диапазона желаемых дат. Настройка фильтров: минимальная и максимальная дата, предпочтительное время, приоритет по типу слота. Статус-трекинг: отображение текущего статуса заявки (в очереди, слот найден, запись подтверждена, ошибка/отмена). Уведомления: отправка push-уведомлений в Telegram при изменении статуса или появлении доступных слотов. Управление заявками: возможность изменить настройки или отменить заявку. Бэкенд-движок (автоматизация и мониторинг) Интеграция с внешними веб-формами: получение данных о доступности слотов и заполнение форм данными из базы пользователя. Мониторинг слотов: адаптивный цикл проверки доступности (без жестких коротких интервалов, с учетом лимитов целевых сайтов). Управление сессиями: сохранение и синхронизация токенов авторизации, cookies и состояния сессии между запросами. Передача ссылки на оплату в Telegram без потери авторизации. Обработка данных: автоматическое заполнение форм данными из базы пользователя, валидация полей, обработка ошибок валидации на стороне формы. Масштабируемость: поддержка одновременной работы с 20+ независимыми сессиями (мультиаккаунтинг) через пул прокси. Обработка ошибок и логирование: подробное логирование ошибок взаимодействия с внешними сервисами, автоматический перезапуск задач, уведомления администратора о критических сбоях. Технические требования Язык разработки: Python (предпочтительно) или Node.js. Автоматизация браузера: использование headless-браузеров с возможностью эмуляции поведения пользователя (Playwright / Puppeteer). Асинхронность: реализация на базе asyncio (Python) или аналогичных асинхронных механизмов (Node.js) для эффективной работы с множеством сессий. База данных: PostgreSQL (или аналогичная реляционная СУБД) для хранения пользователей, очередей, логов и настроек. Инфраструктура: контейнеризация (Docker), развертывание на Linux-сервере (VPS), CI/CD для деплоя обновлений. Безопасность: хранение чувствительных данных (токены, cookies) в зашифрованном виде, защита API-эндпоинтов, ротация секретов. Требования к устойчивости и поддержке Актуализация селекторов: предусмотреть механизм быстрого обновления XPath/CSS-селекторов при изменении верстки целевых сайтов. Ротация прокси: интеграция с пулом резидентных прокси, автоматическая ротация при блокировках или превышении лимитов. Долгосрочное сотрудничество: проект предполагает ежемесячную поддержку, исправление багов и адаптацию под изменения на сайтах. Документация: описание архитектуры, инструкции по запуску, список переменных окружения и основных точек расширения. Целевые сайты для интеграции (на этапе MVP) VFS Global BLS Almaviva Сайт посольства США Что мы ждем от исполнителя Предложение по стеку технологий и архитектуре решения: обоснование выбора инструментов (например, Playwright vs Selenium, PostgreSQL vs SQLite). Оценка сроков и стоимости MVP: разбивка на этапы (прототип, базовая автоматизация, масштабирование, тестирование). Описание подхода к устойчивости решения: как планируется бороться с блокировками, изменениями верстки и лимитами сайтов. Примеры похожих работ: ссылки на GitHub или портфолио с проектами, где была реализована автоматизация взаимодействия со сложными сайтами. План поддержки: предложение по формату и стоимости ежемесячного сопровождения. Критерии приемки Бот корректно регистрирует пользователей, принимает настройки и отправляет уведомления. Движок успешно проходит цикл «мониторинг → обнаружение слота → заполнение формы → передача ссылки на оплату» в тестовом режиме (на тестовых данных/песочницах, если доступны). Система выдерживает нагрузку 20+ одновременных сессий без деградации производительности. Предоставлена документация и инструкции по запуску. Реализован базовый механизм обновления селекторов и ротации прокси. Бюджет и формат сотрудничества Готов рассмотреть предложения по стоимости разработки MVP и ежемесячной поддержке. Формат сотрудничества — долгосрочный (фикс за разработку + регулярная поддержка).