feat: add SMS fleet mode for distributed campaign sending#2764
Closed
feat: add SMS fleet mode for distributed campaign sending#2764
Conversation
- Add SMS campaign tables (sms_campaigns, recipients, link_clicks, unsubscribes) - Add unified campaign overview RPC returning both email and SMS - Create SMS campaign edge function with SmsGate, Simple SMS Gateway, and Twilio providers - Add short-link utility using is.gd for click tracking - Add quota enforcement (daily/monthly limits) - Add new SMS campaign composer dialog with provider setup - Add SplitButton for email/sms campaign actions in MiningTable - Add QR codes for provider setup (Play Store, APK download)
- Add MiningTable refactoring for SMS campaign button - Update campaign page with channel badge and metrics - Add filters store for table preferences - Add i18n translations for SMS - Add tests for mining table performance and preferences - Improve email campaign proxy for SMS links - Fix various minor issues
- Add sms_fleet_gateways table for managing multiple SMS gateways - Add sms_campaign_recipient_gateways table for tracking assignments - Update sms_campaigns with fleet_mode_enabled and selected_gateway_ids - Create fleet gateway management endpoints (CRUD + test) - Update campaign creation to support fleet mode - Update campaign processing to distribute across gateways - Add FleetGatewaySelector component for campaign creation UI - Add SmsFleetManagement component for user profile - Add sms-fleet store for state management - Update SMS campaign composer with fleet mode toggle Fleet mode allows users to configure multiple SMS gateways/phones and distribute campaign sending across them for faster delivery.
malek10xdev
reviewed
Mar 31, 2026
| const smsgatePasswordInput = ref(''); | ||
| const simpleSmsGatewayBaseUrlInput = ref( | ||
| $profile.value?.simple_sms_gateway_base_url || | ||
| 'http://192.168.1.100:8080/send-sms', |
| const passwordInput = ref(''); | ||
| const smsgateBaseUrlInput = ref( | ||
| $profile.value?.smsgate_base_url || | ||
| 'https://api.sms-gate.app/3rdparty/v1/messages', |
Resolved conflicts favoring fleet mode functionality: - Fleet mode gateway distribution and management - Default provider URLs (SMSGate/simple-sms-gateway) - Campaign split button for email/SMS - Phone validation with libphonenumber-js
- Remove unused SmsFleetGateway type import from FleetGatewaySelector.vue - Remove commented CampaignButton and its unused import from MiningTable.vue
Removed duplicate watcher declaration from merge conflict residue. Kept the more complete version with observeTop() and watchEffect.
…prettier formatting
Coverage Report✅ Passed Commit: 286f659 Summary
Generated by Test Coverage Reporter for commit 286f659 |
malek10xdev
approved these changes
Apr 6, 2026
|
|
||
| function openFleetGatewayDialog() { | ||
| // Navigate to profile page with fleet management tab open | ||
| window.open('/settings?tab=sms-fleet', '_blank'); |
Collaborator
There was a problem hiding this comment.
Use navigateTo for smoother navigation
Member
Author
|
Needs much more polishing before being merge |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds fleet mode capability to distribute SMS sending across multiple gateways/phones