ВАЖНО (Ключевое требование):Основная цель — создать стабильный механизм проведения платежей в системе Business Wave (или аналогичной), который имитирует действия реального пользователя на физическом Android-устройстве. Использование веб-автоматизации (Selenium/Playwright) не рассматривается из-за жестких проверок Device ID и блокировок браузеров. Решение должно работать по принципу «телефон-робот», который принимает команды по API, сам считывает OTP из входящих SMS и выполняет клики в интерфейсе мобильного приложения или мобильной версии сайта.
1. Полное описание задачи
Необходимо реализовать программный слой, который превратит Android-смартфон в исполнительный узел платежного шлюза. Система должна получать через API данные (кому и сколько перевести), проверять состояние авторизации, при необходимости выполнять логин (включая ввод OTP) и проводить транзакцию до подтверждения.
2. Основные этапы сценария (Workflow)
Прием команды: Сервер получает POST-запрос с параметрами {phone_number, amount, wallet_address}.
Проверка сессии: Скрипт проверяет, открыто ли приложение и залогинен ли пользователь. Если вылогинило — инициирует вход.
Обработка 2FA (OTP):
Скрипт вводит номер телефона и пароль.
Ожидает прихода SMS на этом же устройстве.
Автоматически извлекает код из текста SMS и вводит его в поле подтверждения.
Выполнение платежа: Навигация по пунктам меню, ввод суммы и адреса партнера, нажатие кнопки «Отправить».
Подтверждение: Считывание статуса транзакции с экрана (успех/ошибка) и отправка результата обратно на основной сервер.
3. Технологические требования (варианты на выбор исполнителя)
Мы ожидаем использование одного из следующих подходов:
Вариант А (Предпочтительный): Связка Tasker + AutoInput + Join/AutoRemote. Это обеспечит быструю разработку и нативную работу с SMS и интерфейсом без Root-прав.
Вариант Б: Автоматизация через ADB (Android Debug Bridge) и Python-скрипты на сервере, управляющие подключенным телефоном.
Вариант В: Профессиональный фреймворк Appium, если исполнитель докажет его стабильность для данной задачи.
4. Требования к API
Исполнитель должен предоставить простой локальный или облачный эндпоинт для:
5. Безопасность и отказоустойчивость
Обработка ошибок: Если SMS не пришло в течение 60 секунд или приложение зависло, система должна вернуть ошибку и попробовать перезапустить процесс.
Логирование: Сохранение истории действий и скриншотов ошибок.
Скрытность: Имитация «человеческих» задержек между кликами и вводом текста.
6. Критерии приемки
Система успешно проводит 10 из 10 тестовых платежей подряд.
Автоматический логин срабатывает без ручного вмешательства.
OTP корректно извлекается из SMS в 100% случаев.
Видео: приложено
Жду:
1) работали ли вы с Tasker или Appium для задач, не связанных с простым тестированием.
2) сроков
3) суммы