Commit Graph

44 Commits

Author SHA1 Message Date
e4f330500d feat(telegram_bot): Add concurrent team registration with multi-worker support
- Implement concurrent registration processing with configurable worker count
- Add CONCURRENT_ENABLED and CONCURRENT_WORKERS config options for parallel execution
- Replace single-threaded loop with task queue and worker thread pool architecture
- Add per-worker step tracking and status display in progress messages
- Implement thread-safe result collection with results_lock for concurrent access
- Update progress UI to show individual worker status and concurrent worker count
- Refactor step callback to support multiple workers with worker_id tracking
- Add graceful shutdown handling for concurrent workers
- Improve progress message updates to only refresh when content changes
- Optimize performance by allowing multiple registrations to run in parallel
2026-01-30 10:50:25 +08:00
85949d8ede 2 2026-01-30 10:28:16 +08:00
6d3aa84af9 feat(telegram_bot): Add simplified team registration format with output options
- Add support for simplified team_reg callback format (team_reg:1, team_reg:3, team_reg:5)
- Implement direct count parsing from callback data without intermediate steps
- Add output method selection UI with JSON file and team.json options
- Add custom count input handler for flexible registration quantities (1-50)
- Improve user experience by reducing callback navigation steps
- Set user state flag for awaiting custom count input
2026-01-30 10:15:26 +08:00
11395bf1ba feat(payment): Integrate Stripe API and refactor payment flow
- Add new stripe_api.py module with StripePaymentAPI class and payment retry logic
- Import Stripe payment module in auto_gpt_team.py with graceful fallback handling
- Refactor run_payment_flow() to extract form filling logic into _fill_payment_form()
- Simplify error handling by returning structured tuples (success, error_type, error_msg)
- Remove redundant comments and streamline selector logic for payment form elements
- Improve code maintainability by separating concerns between form filling and flow orchestration
- Add STRIPE_API_AVAILABLE flag to track payment module availability at runtime
2026-01-30 09:57:55 +08:00
ad03fab8e9 1 2026-01-30 09:05:59 +08:00
b7e3cd840b feat(telegram_bot): Add update_token command for mail API token management
- Add new /update_token command handler to update mail API token in config.toml
- Register command in handlers list and set_my_commands for bot menu
- Add command documentation to help text with usage example
- Implement token update logic with TOML file read/write operations
- Display masked token values (first 8 and last 4 characters) for security
- Add automatic config reload after token update
- Include error handling for missing tomli_w dependency and file operations
- Restrict command to admin users only via @admin_only decorator
2026-01-30 08:57:50 +08:00
20e2719d0e feat(telegram_bot): Add verify_all command for force account re-verification
- Add new /verify_all command to force re-verify all accounts with tokens
- Update command registration to include verify_all handler
- Modify _validate_and_cleanup_accounts() to accept force_all parameter
- Add progress bar visualization using block characters (█░)
- Implement progress bar helper function with percentage display
- Update verification logic to handle two modes: normal and force-all
- Enhance user messages with token count and mode-specific text
- Update help text and command descriptions in Chinese
- Improve progress tracking with visual feedback during verification
- Separate /verify (unverified only) from /verify_all (all with tokens)
2026-01-30 08:53:40 +08:00
75a0dccebe feat(registration): Add email retry mechanism with team invitation support
- Add automatic email retry logic when verification code times out (5-second timeout)
- Implement new email creation and team invitation for failed verification attempts
- Add max_email_retries parameter to control retry attempts (default: 3)
- Add team_name parameter to enable automatic team invitations for new emails
- Return special "new_email:xxx@xxx.com:password" format when new email is used
- Update register_openai_account_auto() to support team_name parameter
- Update register_and_authorize() to support team_name parameter and return new email info
- Improve verification code timeout handling with configurable retry intervals
- Add nonlocal verification_timeout flag to track timeout state across retries
- Update docstrings to document new parameters and return value changes
2026-01-30 08:46:03 +08:00
b7e658c567 4 2026-01-30 06:10:31 +08:00
e43bd390f0 3 2026-01-28 06:59:22 +08:00
eb255fdf77 1 2026-01-28 06:54:50 +08:00
a973343b48 4 2026-01-27 09:47:12 +08:00
935531955f 1 2026-01-27 09:14:49 +08:00
adb60cdfd6 4 2026-01-26 06:58:04 +08:00
32e926c4af 协议 2026-01-25 05:40:08 +08:00
af161cca4f a 2026-01-24 08:06:56 +08:00
970340fbd4 a 2026-01-24 07:54:40 +08:00
effc1add37 feat(email_domains): Add domain validation and improve domain management
- Add validate_domain_format() function with comprehensive domain format validation
* Validates domain structure (must contain dot, valid characters, proper TLD length)
* Normalizes domain format (adds @ prefix, removes quotes/special chars)
* Returns validation status with detailed error messages
- Update add_email_domains() to use new validation function
* Track invalid domains separately in return tuple
* Return (added, skipped, invalid, total) instead of (added, skipped, total)
* Improve error handling and domain normalization
- Add get_file_domains_count() function to retrieve txt file domain count
- Update clear_email_domains() to return count of cleared domains
- Enhance telegram_bot.py command menu organization
* Add s2a command handler and callback for S2A service management panel
* Reorganize bot commands with category comments (基础信息, 任务控制, 配置管理, etc.)
* Add missing commands: clean_errors, clean_teams, iban_list, iban_add, iban_clear, domain_list, domain_add, domain_del, domain_clear, team_fingerprint, team_register, s2a
- Update domain_add command help text with format requirements
- Improve code documentation and consistency across both files
2026-01-24 07:52:10 +08:00
c6ab6b3123 u 2026-01-24 07:09:54 +08:00
0e8b5ba237 feat(telegram_bot): Add AutoGPTPlus management panel with configuration controls
- Add /autogptplus command with interactive menu for ChatGPT subscription automation
- Implement callback handler for AutoGPTPlus actions (config view, token setup, email/API testing)
- Add _show_autogptplus_config() to display current configuration with masked sensitive data
- Add _prompt_autogptplus_token() to handle Cloud Mail API token input and updates
- Add _test_autogptplus_email() and _test_autogptplus_api() for testing functionality
- Add _update_autogptplus_token() to persist token changes to config.toml
- Register AutoGPTPlus command in bot command list with Chinese description
- Update help text to include AutoGPTPlus management panel section
- Add admin-only access control for all AutoGPTPlus operations
- Provides centralized management interface for email domains, SEPA IBANs, and API configuration
2026-01-24 06:35:29 +08:00
7c4688895e update 2026-01-24 06:07:31 +08:00
421caca1b7 update 2026-01-21 22:24:36 +08:00
6600195a3f update 2026-01-21 22:05:56 +08:00
7a7b503b3c 111 2026-01-20 21:42:14 +08:00
2f04569470 feat(telegram_bot): Add batch JSON import progress tracking with real-time updates
- Add import batch statistics tracking with progress message management
- Implement real-time progress message updates during multi-file JSON imports
- Add timeout-based batch completion to finalize imports after 2 seconds of inactivity
- Create progress text generation with processing and completion states
- Add batch import result aggregation (added, skipped, errors, total counts)
- Implement concurrent-safe progress updates using asyncio locks
- Enhance JSON file handler to support batch import workflow with progress feedback
- Add _process_import_json_batch method to return structured import results
- Display file-by-file processing status with current file name and statistics
- Show final summary with team.json total count and error details on completion
- Automatically refresh configuration after batch import completes
2026-01-20 21:37:14 +08:00
6559e4b84a update 2026-01-20 21:09:54 +08:00
828757077d update 2026-01-20 19:34:13 +08:00
24905a773c fix 2026-01-19 00:16:02 +08:00
5de0a1a053 feat(telegram_bot): Auto-reload config after account import to sync memory state
- Add automatic config reload after importing accounts to team.json
- Prevent save_team_json() from overwriting newly imported data by syncing memory state
- Update user feedback message to indicate config is auto-refreshed instead of requiring manual /reload command
- Improve user experience by eliminating extra step after account import
2026-01-18 17:45:21 +08:00
95fa705768 feat: Implement result deduplication by email and enhance summary reporting to detail only failed accounts. 2026-01-18 06:59:35 +08:00
49cb2430c8 Update Telegram bot implementation. 2026-01-18 06:44:58 +08:00
930cd203ee feat: Update Telegram bot implementation and its main execution script. 2026-01-18 06:39:10 +08:00
4ca15d9f01 Update telegram bot implementation. 2026-01-18 06:21:18 +08:00
83a9e38aa7 Update core logic, Telegram bot, browser automation, and email services. 2026-01-18 05:57:52 +08:00
7e92e12c79 update 2026-01-18 05:38:14 +08:00
e510c568b4 update 2026-01-18 04:17:42 +08:00
a4ca3ec093 update 2026-01-18 03:45:02 +08:00
0d19a9a96d refactor(config, telegram_bot): Simplify GPTMail API key configuration and remove redundant Telegram enabled flag
- Simplify GPTMail API key initialization logic by removing separate api_key and api_keys variables and consolidating into single line with fallback to ["gpt-test"]
- Update config.toml.example to use api_keys list format instead of deprecated api_key single value
- Remove TELEGRAM_ENABLED configuration variable and related check from telegram_bot.py
- Simplify Telegram Bot startup validation to only check for bot_token and admin_chat_ids
- Update default auth_provider from "cpa" to "s2a" in config.toml.example
- Improve documentation comments in config.toml.example for GPTMail domains and CRS service
- Localize error messages in telegram_bot.py to Chinese for consistency
- Streamline configuration by removing unnecessary intermediate variables and checks
2026-01-18 02:14:08 +08:00
c39a01c4c0 update 2026-01-18 01:57:11 +08:00
ad120687b3 feat(logger, telegram_bot): Add real-time Telegram logging capability
- Add TelegramLogHandler class to stream logs to Telegram in real-time
- Implement enable_telegram_logging() method to activate Telegram log streaming
- Implement disable_telegram_logging() method to deactivate Telegram log streaming
- Implement is_telegram_logging_enabled() method to check logging status
- Add /logs_live command to enable real-time log push notifications
- Add /logs_stop command to disable real-time log push notifications
- Update help text to document new real-time logging commands
- Remove obsolete team.json.example file
- Enables administrators to monitor system logs in real-time through Telegram bot
2026-01-18 01:16:20 +08:00
b902922d22 feat(config, email_service, telegram_bot): Add dynamic GPTMail API key management and config reload capability
- Add reload_config() function to dynamically reload config.toml and team.json without restart
- Implement GPTMail API key management with support for multiple keys (api_keys list)
- Add functions to manage GPTMail keys: get_gptmail_keys(), add_gptmail_key(), remove_gptmail_key()
- Add key rotation strategies: get_next_gptmail_key() (round-robin) and get_random_gptmail_key()
- Add gptmail_keys.json file support for dynamic key management
- Fix config parsing to handle include_team_owners and proxy settings in multiple locations
- Update email_service.py to use key rotation for GPTMail API calls
- Update telegram_bot.py to support dynamic key management
- Add install_service.sh script for service installation
- Update config.toml.example with new api_keys configuration option
- Improve configuration flexibility by supporting both old (api_key) and new (api_keys) formats
2026-01-17 05:52:05 +08:00
51d03038e0 33 2026-01-15 23:53:33 +08:00
b1953b5d95 2 2026-01-15 23:39:41 +08:00
06f906abc7 first 2026-01-15 23:02:16 +08:00