1
0
forked from BRT/arc
arc/docs/index.md
slava cae345cf61 Implement JS-based remote scripting framework for dynamic script updates:
- Add Proof of Concept (PoC) for executing JavaScript scripts fetched remotely.
- Integrate `Black::GetProfileInfoScript` logic into a JS version with fallback to C++ on errors.
- Extend `ScreenXmlParser` with additional JS-to-C++ bridge methods.
- Update `config.ini` for scripting configuration.
- Ensure scripts are securely fetched with SHA-256 validation and use an atomic caching mechanism.
- Add developer tools for debugging JS scripts and enable easier script updates without app re-deployment.
2026-05-13 15:42:10 +07:00

2.0 KiB
Raw Permalink Blame History

ARCDeskProject — Документация

Десктопное Qt6/C++ приложение для мониторинга и автоматизации Android банковских приложений через ADB.


Оглавление

Архитектура приложения

Раздел Описание
События и задачи Очередь задач: получение из API, хранение в БД, выполнение скриптов
Удалённые JS-скрипты Scripting-слой: обновляемые JS-версии банковских скриптов через QJSEngine

API Backend (Adb Core Backend v1.0.0)

Раздел Описание
Авторизация Логин, refresh token, хранение токенов
Profile & Material Банковские профили и карты (материалы)
Device & Desktop Регистрация десктопов и Android-устройств, скриншоты
Task Получение задач, отправка результатов
NetworkService Полная карта всех HTTP-вызовов приложения

Общая архитектура приложения

MainWindow (Qt6 GUI)
  ├── DeviceScreener (QThread) — опрос ADB устройств, скриншоты
  ├── EventHandler  (QThread) — обработка задач, запуск скриптов
  └── NetworkService (QThread) — синхронизация с REST API (localhost:9999/api/v1/)

Скрипты: android/{rshb,birbank,toss,ozon,ziraat}/
Database: SQLite — DatabaseManager (singleton) + DAO-слой

Технологии

  • Qt6 — Widgets, Network, Sql, Xml
  • C++17, SQLite, ADB, Tesseract OCR
  • CMake