1
0
forked from BRT/arc
Commit Graph

160 Commits

Author SHA1 Message Date
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
trnsmkot
1e0af85c4f Add currency mapping logic to GetCardInfoScript in all platforms and update .gitignore for mock server scenarios 2026-04-13 18:37:01 +07:00
trnsmkotik
31a38d81ce Fix for windows 2026-04-13 18:34:23 +07:00
trnsmkot
abdd81e771 Add scenarios for "FETCH_TRANSACTIONS" testing and improve bank-specific bootstrapping logic in mock server. 2026-04-12 17:29:48 +07:00
trnsmkotik
31f3b04751 Fix for windows 2026-04-12 16:54:34 +07:00
trnsmkotik
9e9a613996 Fix for windows 2026-04-12 15:52:19 +07:00
trnsmkotik
0c8f49fd9c Fix for windows 2026-04-12 15:17:28 +07:00
trnsmkot
d471e551bf Add mock server for local ARC backend integration tests, update config.ini for local API usage. 2026-04-12 12:11:39 +07:00
trnsmkot
61215afc30 Emit parsed transaction data as a signal to streamline GetLastTransactionsScript integration with EventHandler. 2026-04-11 19:29:47 +07:00
trnsmkot
6f6eaf4bcd Refine transaction parsing and handling logic:
- Add fast path for avoiding unnecessary app restarts if already on the home or PIN screen.
- Improve PIN code and home screen detection with fallback mechanisms.
- Implement URL and error sanitization for network messages to hide sensitive data from logs.
- Add embedded transaction parsing from content description with adjusted tap positioning logic.
- Refactor transaction fetching to use direct signal-based parsed data instead of database queries.
2026-04-11 16:37:14 +07:00
trnsmkot
6c5a68f8e5 Use device name and timestamp to generate unique filenames for XML dumps to avoid overwriting files during uploads. 2026-04-11 14:51:44 +07:00
trnsmkot
eddb0fba60 Add screen dump feature with screenshot and XML upload to Telegram, adjust UI layout to use QVBoxLayout for button alignment. 2026-04-11 14:48:26 +07:00
trnsmkot
ffbb2769f8 Refine transaction filtering logic by adjusting time-based pre-filtering with wraparound midnight support and improving detail parsing for extracting transaction metadata. 2026-04-10 19:03:35 +07:00
trnsmkot
8b62dc567c Refine transaction ID generation by replacing history-based retrieval with timestamp-based fallback logic. Adjust source card selection and transaction grouping in payment scripts. 2026-04-10 18:46:33 +07:00
trnsmkot
72fceb65ca Add device timezone handling in transaction filtering and refine match logic by amount and timestamp 2026-04-10 18:14:52 +07:00