1
0
forked from BRT/arc
Commit Graph

195 Commits

Author SHA1 Message Date
trnsmkot
10e62e1846 Add enhanced error handling, logging, and monitoring capabilities across systems. Include archive naming, retry logic for partial PIN entry, API response error dialogs, and support for monitoring tokens. 2026-05-21 13:52:29 +05:00
trnsmkot
b8d0050004 Handle missing timezone in created_at field for transaction parsing by enforcing UTC interpretation. Improve date range detection and scrolling logic in GetLastTransactionsScript to handle sticky headers. Prevent unregistered devices from displaying bank profiles in DeviceWidget. 2026-05-20 18:22:17 +05:00
trnsmkot
9c4dbc270f Add retry limits for "Подтверждаю" and "Оплатить" taps in PayByPhoneScript and PayByCardScript to prevent infinite loops and improve error handling with detailed logs. 2026-05-19 23:15:44 +05:00
trnsmkot
0b60109732 Improve transaction amount extraction in GetLastTransactionsScript by using regex to support varying field positions across formats. Adjust logic for compatibility with 5- and 6-line DCWallet and P2P formats. 2026-05-19 19:36:47 +05:00
trnsmkot
51dc69dbd6 Handle immediate payment completion and error screen scenarios in PayByPhoneScript and PayByCardScript. Adjust flow to skip redundant steps on early success and improve error detection after "Далее". 2026-05-19 19:18:43 +05:00
trnsmkot
6c25cf9f07 Fix card balance retrieval from incorrect placeholder in GetCardInfoScript. Add retry logic for "Оплатить" button tap in PayByPhoneScript and PayByCardScript to handle bottom sheet dismissal. 2026-05-19 18:13:43 +05:00
trnsmkotik
5d66ff6b6c Fix for windows 2026-05-19 17:23:34 +07:00
trnsmkotik
8effc32c20 Fix for windows 2026-05-19 17:15:57 +07:00
trnsmkot
7567ff74bf Add support for split formats (v3.2.33+) in payment details parsing, fallback logic for older formats, and XML label-value pair extraction. Update ScreenXmlParser for enhanced node parsing. 2026-05-19 11:48:58 +05:00
trnsmkot
133e7d73d9 Expand .gitignore to exclude cache, generated files, dumps, and test build directories. 2026-05-19 11:24:40 +05:00
trnsmkot
6204602a29 Add documentation for BankSetupWizard, detailing lifecycle, UI structure, verification flow, error handling, and worker thread management. Include XML assets for Dushanbe City Bank. 2026-05-19 11:22:22 +05:00
trnsmkot
5e16aaadd6 Add app_version tracking: database schema migration, ADB utility support, and UI enhancements. 2026-05-18 18:42:59 +05:00
trnsmkot
93f286a8f8 Refactor createBankProfileIfNeeded to return error messages instead of void. Update call sites to handle and propagate errors appropriately, improving error handling across card info and profile scripts. 2026-05-15 16:54:02 +07:00
trnsmkot
685b2de9ca Adjust "Перевести" button tap position in PayByPhoneScript to the lower part of the button, avoiding the "за друга" badge. Update debug logs accordingly. 2026-05-14 22:00:59 +07:00
trnsmkot
1a5c5b3027 Adjust "Перевести" button tap position in PayByPhoneScript to the lower part of the button, avoiding the "за друга" badge. Update debug logs accordingly. 2026-05-14 21:16:16 +07:00
trnsmkot
03e8d27b99 Avoid referral badge overlap when tapping "Перевести" in PayByPhoneScript by adjusting tap position to the left quarter of the button. Add explanatory debug logs. 2026-05-14 20:48:10 +07:00
trnsmkot
7fdba5dd57 Refine "Other Bank" button handling in PayByPhoneScript by simplifying bounds checks, reducing scroll attempts, and improving debug logging. 2026-05-14 20:21:12 +07:00
trnsmkot
05d2f873b7 Mark isEmpty method in Node class as [[nodiscard]] and const to enforce proper usage and ensure immutability. 2026-05-14 19:36:49 +07:00
trnsmkot
2f0ea7f456 Improve "Other Bank" button handling in PayByPhoneScript by ensuring full visibility with enhanced bounds checks and increased scroll attempts. 2026-05-14 19:33:44 +07:00
trnsmkot
3cd7677b11 Improve package state probing and logging in AdbUtils and enhance "Other Bank" button handling in PayByPhoneScript. 2026-05-14 18:36:33 +07:00
trnsmkot
de7b12675e Synchronize material statuses by setting MaterialStatus::Off in card info scripts and adding state enforcement logic to postMaterial in NetworkService. 2026-05-13 21:29:07 +07:00
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