- Add guest_mode configuration option for Telegram channel
- Implement guest query handling when guest_mode is enabled
- Add unit tests for guest mode functionality
- Update UI form with guest mode toggle
- Add translations for guest mode strings
- Modified Telegram settings to include business mode and commands enable options
- Implemented logic to handle business messages and commands in telegram.go
- Added tests for business commands handling in telegram_dispatch_test.go
- Updated configuration tests to include new business commands settings
- Enhanced frontend form to allow configuration of business commands
- Added translations for business commands in multiple languages
- Updated README to include information about Telegram Business mode
- Introduced `business_owner` field in Telegram settings to specify the owner ID.
- Updated `handleBusinessMessage` to ignore messages from the business owner.
- Added tests to verify that messages from the owner are correctly ignored.
- Enhanced Telegram form to include input for business owner ID.
- Updated localization files for English, Portuguese, and Chinese to include business owner labels.
- Introduced business mode in Telegram settings to handle business messages.
- Updated Telegram channel to process business messages and connections.
- Enhanced message handling to include business connection IDs.
- Added tests for business message handling and allowed updates.
- Updated frontend to include business mode toggle in the Telegram form.
- Added translations for business mode in multiple languages.
Always route through classifySDKError to ensure resp.Body is
closed even when the API call succeeds.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Store QuoteToken for image, video, and sticker messages (not just text)
- Add webhook.LocationMessageContent case to forward as [location] placeholder
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fix bodyclose linter errors by ensuring resp.Body is closed
after all *WithHttpInfo SDK calls.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Address review feedback:
- Use *WithHttpInfo SDK variants to get HTTP response status codes
- Map status codes via ClassifySendError (429→ErrRateLimit, 5xx→ErrTemporary, 4xx→ErrSendFailed)
- Fall back to ClassifyNetError for network-level failures
- Configure SDK with 30s timeout HTTP client
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>