Introduction
Plugin Configuration Guide
This guide explains each field required to configure Voice, SMS, Email, and AI providers in your software. Values will vary depending on the user’s account, credentials, and environment.
Voice Provider: 3CX
| Field | Explanation | User Input |
|-------|-------------|------------|
| Registrar Hostname | The SIP registrar server address used for call registration. | Provided by user’s 3CX admin (e.g., pbx.company.com). |
| Registrar SIP Port | Port for SIP signaling. Default is 5060. | User may use a custom port if their PBX is configured differently. |
| Network Interface | The network interface or domain used to connect. | User’s PBX domain or IP. |
| Local 3CX Host | Internal host/IP for local communication. | User’s internal server IP. |
| Local 3CX Port | Port for local HTTP communication. | Typically 8888, but may vary. |
| Local 3CX TCP Port | Port for TCP communication. | Typically 8889. |
| Database Connection String | Connection string for syncing call data. | User’s DB credentials and host. |
| Data Sync Interval | Frequency of syncing call logs. | User chooses (e.g., every 5 min). |
| Enable 3CX Login | Allows users to log in via 3CX credentials. | User sets Yes or No. |
SMS Providers
Dialog E-SMS
Dialog eSMS allows sending SMS messages via its API. To configure Dialog in your software, you’ll need to provide the following fields:
| Field | Explanation | User Input |
|-------|-------------|------------|
| Sender Masks | One or more sender IDs displayed to recipients. These are the names/numbers that appear as the sender of the SMS. | Example: MyBrand, SupportTeam |
| Login URL | API endpoint used to authenticate with Dialog. | Example: https://e-sms.dialog.lk/api/v1/login |
| Send SMS URL | API endpoint used to send SMS messages. | Example: https://e-sms.dialog.lk/api/v1/sms |
| Push Notification URL | Webhook endpoint where delivery reports or notifications are sent. | Example: https://yourapp.com/webhook/sms/dialog |
| Username | Login username for Dialog eSMS. | Example: mycompanyuser |
| Password | Login password for Dialog eSMS. | Provided by Dialog (hidden for security). |
Twilio
Twilio allows sending SMS messages via its REST API. To configure Twilio in your software, you’ll need to provide the following fields:
| Field | Explanation | User Input |
|-------|-------------|------------|
| API URL | The endpoint used to send SMS messages through Twilio. | Example: https://api.twilio.com/2010-04-01/Accounts/{AccountSID}/Messages.json |
| Account SID / Username | Unique identifier for the Twilio account. | Example: AC0b444824e7906220cdd89cdadbc7fcef |
| Auth Token / Password | Secret key used for authentication. | Provided in Twilio Console (hidden for security). |
| From Phone Numbers | One or more Twilio-verified sender numbers in E.164 format. | Example: +14473002681 |
| Call Back URL | Webhook endpoint where Twilio sends delivery status or callbacks. | Example: https://webhook.com |
Generic SMS
| Field | Explanation | User Input |
|-------|-------------|------------|
| API URL | Endpoint of SMS provider. | User’s provider URL. |
| Method | HTTP method (POST/GET). | Depends on provider. |
| Headers | Authentication or content headers. | User’s provider requirements. |
| Payload | Message body format. | Must include to, message, sender_id. |
Email Providers
AWS SES
| Field | Explanation | User Input |
|-------|-------------|------------|
| Access Key ID | AWS IAM access key. | From AWS Console. |
| Secret Access Key | AWS IAM secret key. | From AWS Console. |
| Region | AWS region for SES. | e.g., us-east-1. |
| SMTP Endpoint | SES SMTP server. | e.g., email-smtp.us-east-1.amazonaws.com. |
| Port | SMTP port. | 587 (TLS) or 465 (SSL). |
| Sender Email | Verified email in SES. | User’s verified sender. |
SMTP
SMTP (Simple Mail Transfer Protocol) allows sending emails through a mail server. To configure SMTP in your software, you’ll need to provide the following fields:
| Field | Explanation | User Input |
|-------|-------------|------------|
| SMTP Host | The hostname or IP address of the SMTP server. | Example: smtp.mailserver.com |
| SMTP Port | The port number for the SMTP server. Common values: 587 (TLS), 465 (SSL). | Example: 587 |
| Use Secure Connection (SSL/TLS) | Whether to enable encryption for secure communication. | Example: Enabled |
| SMTP Username | The username used to authenticate with the SMTP server, usually the email address. | Example: user@domain.com |
| SMTP Password | The password or app-specific password for authentication. | |
| From Email | The email address that appears as the sender. | Example: user@domain.com |
| Reply-to Email | The email address where replies should be directed. | Example: support@domain.com |
| From Display Name | The display name shown to recipients. | Example: Company Support |
AI Providers
Gemini
| Field | Explanation | User Input |
|-------|-------------|------------|
| API Key | Authentication key. | From Google AI Studio. |
| Model | Gemini model version. | e.g., gemini-pro. |
| Endpoint | API endpoint. | Provided by Google. |
OpenAI
| Field | Explanation | User Input |
|-------|-------------|------------|
| API Key | Authentication key. | From OpenAI dashboard. |
| Model | AI model name. | e.g., gpt-4. |
| Endpoint | API endpoint. | https://api.openai.com/v1/chat/completions. |
Eleven Labs
| Field | Explanation | User Input |
|-------|-------------|------------|
| API Key | Authentication key. | From Eleven Labs account. |
| Voice ID | Selected voice profile. | User chooses from dashboard. |
| Endpoint | API endpoint. | https://api.elevenlabs.io/v1/text-to-speech/{voice_id}. |
Google Speech
| Field | Explanation | User Input |
|-------|-------------|------------|
| API Key | Authentication key. | From Google Cloud Console. |
| Endpoint | API endpoint. | https://speech.googleapis.com/v1/speech:recognize. |
| Audio Format | Supported audio encoding. | e.g., FLAC, WAV, LINEAR16. |
| Language Code | Language for recognition. | e.g., en-US. |