1
0
forked from BRT/arc
Commit Graph

174 Commits

Author SHA1 Message Date
trnsmkot
118d322fb4 Simplify sum field detection in PayByCardScript by removing resource-id-based strategies and relying on DOM order. 2026-05-13 17:08:14 +07:00
trnsmkot
a859ced777 Add closeGooglePlayBannerIfVisible helper to handle update banners and permission dialogs. Integrate into card info scripts for automated dismissal during screen parsing. Extend ScreenXmlParser with methods to detect specific UI elements. 2026-05-13 16:01:26 +07:00
trnsmkot
6759b3f345 Add card number validation and fix card table display logic in BankSetupWizard. 2026-05-13 10:41:56 +07:00
trnsmkot
15b93045c3 Delete all synced bank profiles from server when removing a device. 2026-05-13 02:17:17 +07:00
trnsmkot
37a847e6e8 Add PAN field detection and account number UI updates.
- Extend `ScreenXmlParser` with `findPanCardNumberInput` for detecting empty PAN fields in Ozon WebView.
- Update `PayByCardScript` to handle missing hints for recipient card input.
- Temporarily disable advanced account number parsing in `GetCardInfoScript`.
- Add `patchMaterial` method to `NetworkService` for updating account details.
- Update card management UI with refined "Switch" button logic and label changes.
2026-05-13 02:03:20 +07:00
trnsmkot
dc7b16e695 Integrate TaskDumpRecorder into scripts for enhanced error tracking and proper handling of nested scopes. 2026-05-11 20:16:05 +07:00
trnsmkot
18cfe3d8c7 Filter bank profiles by profile country and sync material statuses with server:
- Add `m_pathProfileGetInfo` to retrieve profile country and currency during login.
- Update bank profile filtering logic in `BankProfileDAO`, `DeviceSettingsWindow`, and `DeviceWidget` to match the profile country from `SettingsDAO`.
- Synchronize material statuses with the server in `toggleMaterial`.
2026-05-11 15:52:54 +07:00
trnsmkot
81b8ac6d92 Add account number parsing and database integration:
- Extend `ScreenXmlParser` with methods for detecting and extracting account numbers from multiple screens.
- Update database schema and DAO to support `account_number` field.
- Modify card information scripts to collect, save, and utilize account numbers.
- Enhance `GetCardInfoScript` logic to fetch account numbers via screen parsing and interaction.
2026-05-08 20:29:00 +07:00
trnsmkot
d3bf9ea34f Add new monitoring paths (/monitoring/log and /monitoring/dump) to config.ini 2026-05-08 15:54:58 +07:00
trnsmkot
fbe07819d5 Refine sum field detection logic in findSumEditText to account for an additional EditText above the anchor. 2026-05-07 23:09:56 +07:00
trnsmkot
ec1f495d76 Update MainWindow to call sendLogsToBackend instead of sendLogToTelegram. 2026-05-07 22:56:11 +07:00
trnsmkot
1efbf09f59 Rename sendLogToTelegram to sendLogsToBackend in FileLogWindow. 2026-05-07 22:54:14 +07:00
trnsmkot
4694e6db50 - Add findSumEditText to ScreenXmlParser for enhanced sum field detection.
- Update `PayByPhoneScript` and `PayByCardScript` to use `findSumEditText` as a fallback.
- Enhance `FileLogWindow` to export logs and database files to backend via `NetworkService`.
- Add `networkService` getter in `TaskDumpRecorder` for centralizing access to `NetworkService`.
2026-05-07 22:54:06 +07:00
trnsmkot
277402f77e Update ScreenXmlParser to use startsWith for handling multi-line "Идентифицирован" content-desc 2026-05-06 23:32:16 +07:00
trnsmkot
0480dba400 Handle declined transactions and enhance payment scripts:
- Add unique `bank_transaction_id` generation for declined transactions in `EventHandler`.
- Extend timeout and iteration logic to better handle intermediate statuses ("Выполняется") in `PayByPhoneScript` and `PayByCardScript`.
- Update
2026-04-30 23:41:06 +07:00
trnsmkot
55d989258b Switch Tesseract initialization to memory-based loading of rus.traineddata to fix issues with paths containing Cyrillic characters (Windows). 2026-04-30 19:52:07 +07:00
trnsmkot
714132382b Add OCR utilities and backend integration for enhanced screen dump analysis:
- Introduce `OcrUtils` with fuzzy-matching logic for text recognition on screenshots.
- Implement dual-pass OCR to handle light-on-dark and dark-on-light text cases.
- Replace hardcoded "Подтверждаю" button tap logic with OCR-based detection and fallback geometry.
- Update `TaskDumpRecorder` to utilize `NetworkService` for uploading screen dumps, images, and metadata to the backend.
- Add support for `/monitoring/dump` endpoint in `NetworkService`.
- Enhance UI functionality with new error handling and progress feedback during dump creation and upload.
2026-04-30 19:39:21 +07:00
trnsmkot
c79acee002 Add OCR utilities and backend integration for enhanced screen dump analysis:
- Introduce `OcrUtils` with fuzzy-matching logic for text recognition on screenshots.
- Implement dual-pass OCR to handle light-on-dark and dark-on-light text cases.
- Replace hardcoded "Подтверждаю" button tap logic with OCR-based detection and fallback geometry.
- Update `TaskDumpRecorder` to utilize `NetworkService` for uploading screen dumps, images, and metadata to the backend.
- Add support for `/monitoring/dump` endpoint in `NetworkService`.
- Enhance UI functionality with new error handling and progress feedback during dump creation and upload.
2026-04-30 19:17:17 +07:00
trnsmkot
d42a58d69e Add logic to refresh balance on the home screen:
- Introduce `findRefreshButtonOnHomeScreen` in `ScreenXmlParser` for locating the refresh button.
- Update `GetProfileInfoScript` to tap refresh button and retry balance parsing when balance is zero.
- Extend mock server profiles with additional test data.
2026-04-29 22:02:53 +07:00
trnsmkot
1d15e78b71 Handle declined transactions in EventHandler:
- Add logic to identify and process declined transactions for `CreateTransaction
2026-04-28 00:06:13 +07:00
trnsmkot
8c1e2a3137 Handle closing of ad bottom sheets in CommonScript:
- Add detection and dismissal logic for ad banners on the homepage.
- Introduce retry mechanism with back button fallback for persistent ads.
2026-04-27 21:45:53 +07:00
trnsmkot
cdd15edbbf Add getRawScreenDumpAsXml to capture 2026-04-27 20:41:16 +07:00
trnsmkot
b868db7516 Improve "Показать" button scrolling in GetCardInfoScript to handle devices with short screen heights:
- Add logic to scroll WebView until the button is in the visible top-third of the screen.
- Account for bottom navigation obstruction and ensure reliable tapping.
2026-04-27 18:19:10 +07:00
trnsmkot
1346ca3576 Introduce TaskDumpRecorder for centralized task dump management:
- Add TaskDumpRecorder to save task-related XML dumps and upload failure info to Telegram.
- Integrate TaskDumpRecorder into `PayByPhoneScript` and `PayByCardScript` for Dushanbe and Ozon banks.
- Extend ADB utilities to record XML dumps with TaskDumpRecorder and refine keyboard dismissal logic.
- Enhance freeze detection with consecutive dump checks in CommonScript and payment scripts.
- Update mock server profiles and scenario configurations with new material IDs.
2026-04-26 19:22:40 +07:00
trnsmkot
bd13ba6e66 Optimize button verification in payment scripts:
- Refactor retry logic for visibility and tappability of key payment buttons.
- Enhance error messaging for obstructed or missing buttons.
2026-04-24 22:22:24 +07:00
trnsmkot
9d0593a89d Improve "Перевести" button handling in PayByCardScript:
- Add keyboard dismissal and retry logic to ensure button visibility and tappability.
- Update error messages to differentiate between missing or obstructed button scenarios.
2026-04-24 22:10:06 +07:00
trnsmkot
a4f0ebe75a Improve "Продолжить" button handling in PayByPhoneScript:
- Add keyboard dismissal and retry logic to ensure button visibility and tappability.
2026-04-24 22:07:34 +07:00
trnsmkot
611ee9926a Improve ADB Keyboard activation reliability:
- Add retries for `ime enable` to handle delayed IME registration after installation.
- Introduce flag to distinguish newly installed keyboards for adaptive retry logic.
2026-04-24 21:56:20 +07:00
trnsmkot
8c40109f49 Add copy logic for ADBKeyboard assets in CMake build process 2026-04-24 21:41:16 +07:00
trnsmkot
1a3ccd8df5 Enable reliable activation of ADB Keyboard and improve fallback handling:
- Add comprehensive verification and logging for IME activation steps in `AdbUtils`.
- Update `PayByPhoneScript` to handle IME activation failures with error reporting.
- Improve edit text detection in `ScreenXmlParser` for devices with missing hint attributes.
2026-04-24 21:31:37 +07:00
trnsmkot
9015a5db59 Add closeGooglePlayBannerIfVisible to handle Google Play update banners across scripts:
- Integrate banner dismissal in retry loops for XML parsing in payment and profile scripts.
- Add detection logic for permission deny buttons and update banner handling in `ScreenXmlParser`.
- Ensure reliable operation during input field detection, transactions fetching, and confirmation screens.
2026-04-24 16:39:38 +07:00
trnsmkot
d5f72a06ca Enhance input field detection and retry logic across payment scripts:
- Add retry loops for input fields in `PayByPhoneScript` and `PayByCardScript` to improve reliability.
- Update window title in `MainWindow` with version info from `config.ini`.
2026-04-24 16:09:36 +07:00
trnsmkot
ecb9b7c9a2 Improve button loading and error handling in PayByCardScript:
- Add checks for the "По номеру карты" button on the payments screen.
- Refine error messages to distinguish missing button vs. incomplete screen load.
2026-04-23 21:13:31 +07:00
trnsmkot
78fb0ab64c Add exclusive material activation logic to MaterialDAO and improve card selection in BankSetupWizard. 2026-04-23 20:44:44 +07:00
trnsmkot
257b307243 Refine transaction amount parsing in mock server:
- Ensure amounts include the ₽ currency symbol for accurate parsing.
2026-04-22 18:03:52 +07:00
trnsmkot
ea576e6558 Standardize error reporting across services:
- Add `event_type` to error data.
- Replace dynamic `type` with "ERROR" for task results and error messages.
2026-04-20 17:21:22 +07:00
trnsmkot
94d0c6e4ad Increase maxScrolls limit to 30 in GetLastTransactionsScript for better transaction fetching. 2026-04-19 09:00:10 +07:00
trnsmkot
686b23576c Improve scroll recovery logic in GetLastTransactionsScript:
- Add upward scroll handling to recover header visibility when the target header scrolls out of view.
2026-04-18 20:08:45 +07:00
trnsmkot
35bc98f779 Refine date header visibility logic and scroll behavior in GetLastTransactionsScript:
- Add `computeDateYCount` to detect overlapping date headers and improve visibility checks.
- Adjust swipe logic for better handling of target and older dates during transaction fetching.
-
2026-04-18 19:46:06 +07:00
trnsmkotik
5dd826a63a Fix for windows 2026-04-18 19:23:56 +07:00
trnsmkotik
54a4ae271d Fix for windows 2026-04-18 18:53:10 +07:00
trnsmkotik
7b660fd003 Fix for windows 2026-04-18 18:53:00 +07:00
trnsmkot
5e043d55ff Add closeGooglePlayBannerIfVisible to handle Google Play update banners:
- Ensure banners are closed during transaction fetching in `GetLastTransactionsScript`.
- Update XML parsing workflow to accommodate banner dismissal logic.
2026-04-18 18:52:28 +07:00
trnsmkot
fc1ccb4ae8 Refine transaction amount parsing and improve banner closing in Ozon scripts:
- Handle fractional amounts during transaction parsing in mock server.
- Add support for closing Google Play update banners in `Ozon` homepage handling logic.
2026-04-18 17:27:12 +07:00
trnsmkot
bc2fc2729d Refactor EventHandler and Dushanbe scripts to centralize screenshot handling:
- Introduce `connectScreenshotDushanbe` for consistent signal-slot connections in `EventHandler`.
- Emit screenshots via `CommonScript` across `PayByCard`, `PayByPhone`, and `GetLastTransactions`.
- Eliminate redundant screenshot signals in `GetLastTransactionsScript`.
2026-04-17 11:17:59 +07:00
trnsmkot
13ef02a8c6 Simplify adb broadcast command construction in AdbUtils for cleaner and more concise execution logic. 2026-04-16 17:29:20 +07:00
trnsmkot
834e56e503 Add support for mock server state persistence, error tracking, and screenshot handling. Extend bootstrapping logic and monitoring endpoints for enhanced debugging and task management. 2026-04-14 18:46:34 +07:00
trnsmkot
ce14d5eef3 Refine transaction fetching and parsing:
- Add date header parsing and swipe functionality for streamlined `Ozon` transactions list processing.
- Improve deduplication logic, date assignment, and scroll behavior in `Dushanbe` and `Ozon` scripts.
- Introduce screenshot handling for debugging transaction fetching workflows.
- Add cancellation logic by `materialId` in `EventDAO`.
- Update mock server for enhanced filename generation and PATCH support for bank profiles.
2026-04-13 22:41:15 +07:00
trnsmkot
c16b1a78f1 Add timeout mechanism in NetworkService to prevent hanging requests by aborting after 30 seconds. 2026-04-13 19:16:22 +07:00
trnsmkot
ee9834c008 Improve logging and control flow in NetworkService and EventHandler; fix tapped assignment in GetLastTransactionsScript. 2026-04-13 18:55:08 +07:00