Overview
The SMS Member enables Conductor ensembles to send SMS messages with:- Multiple providers: Twilio, Vonage, AWS SNS
- Template rendering: Simple variable interpolation
- Batch sending: Rate-limited mass SMS delivery
- MMS support: Send images and media via MMS
- E.164 validation: Automatic phone number format validation
- Personalization: Per-recipient data in batch sends
Quick Start
SMS Providers
Twilio (Recommended)
Industry-leading SMS provider with global coverage and reliable delivery.- Sign up at Twilio
- Get your Account SID and Auth Token from the console
- Purchase a phone number or create a Messaging Service
- Set secrets in Wrangler:
- Standard: 100 SMS per second
- Messaging Service: 1,000 SMS per second
- Free trial: 1 SMS per second
Vonage (formerly Nexmo)
Cost-effective SMS with strong international coverage.- Sign up at Vonage
- Get your API Key and Secret
- Set secrets:
AWS SNS
Integrate with AWS infrastructure for SMS delivery.Basic Usage
Simple SMS
OTP Verification
Multiple Recipients
Batch Sending
Send personalized SMS to multiple recipients with rate limiting.Rate Limiting
Control sending rate to respect provider limits:- Twilio Free Trial: 1 SMS/sec
- Twilio Standard: 10-50 SMS/sec
- Vonage: 10 SMS/sec
- AWS SNS: 20 SMS/sec
MMS Support
Send images and media with your messages (Twilio only):- Images: JPG, PNG, GIF
- Max size: 5 MB
- Multiple URLs supported
Template Rendering
Use simple variable interpolation in message bodies:- Simple
{{variable}}syntax - Works in message body
- Per-recipient data in batch sends
- Common data shared across batches
Phone Number Formats
All phone numbers must be in E.164 format:- US:
+1234567890 - UK:
+442071234567 - France:
+33123456789 - Japan:
+81312345678
1234567890- Missing ++1 (234) 567-890- Contains formatting+1-234-567-890- Contains dashes
Error Handling
Handle SMS failures gracefully:Complete Examples
OTP Verification Workflow
Batch Order Notifications
Two-Factor Authentication
Configuration Reference
Provider Config
Member Config
Input Schema
Output Schema
Single SMS:Best Practices
Security
Security
- Store credentials in secrets, not environment variables
- Validate phone numbers before sending
- Implement rate limiting to prevent abuse
- Use messaging services for high-volume sends
- Never send sensitive data via SMS (use encrypted channels)
Performance
Performance
- Use batch sending for multiple recipients
- Set appropriate rate limits per provider
- Use messaging services for better throughput
- Cache frequent recipient lists
- Monitor delivery rates and adjust
Compliance
Compliance
- Always include opt-out instructions (e.g., “Reply STOP”)
- Respect local regulations (TCPA, GDPR, etc.)
- Only send to opted-in recipients
- Honor unsubscribe requests immediately
- Keep audit logs of all sends
Cost Optimization
Cost Optimization
- Use shortest message that conveys intent
- Avoid unnecessary sends
- Monitor per-country pricing
- Use alphanumeric sender IDs where allowed
- Consider message concatenation costs
Development
Development
- Test with TestConductor mocks
- Use templates for maintainability
- Log all SMS operations
- Handle errors gracefully with fallbacks
- Monitor delivery reports
SMS vs Email
| Feature | SMS | |
|---|---|---|
| Delivery | 98% open rate | 20% open rate |
| Speed | Instant | Minutes to hours |
| Cost | 0.04/message | 0.001/email |
| Length | 160 chars (1 SMS) | Unlimited |
| Media | MMS only | Full HTML, attachments |
| Best for | Alerts, OTP, time-sensitive | Newsletters, receipts, long-form |
Troubleshooting
SMS Not Delivering
- Check phone number format - Must be E.164 (+1234567890)
- Verify provider credentials - Ensure Account SID/Auth Token are correct
- Check rate limits - You may be hitting provider throttles
- Review provider logs - Check Twilio/Vonage console for errors
- Test with your own number - Confirm basic functionality
Rate Limit Errors
Invalid Phone Numbers
Message Too Long
- Single SMS: 160 characters (GSM-7)
- Unicode/Emoji: 70 characters per segment
- Concatenated SMS: Up to 1600 characters (10 segments)
- Consider shortening or using URL shorteners

