Ctrl K
ring2all.com

AI Providers Module Documentation

Table of Contents

  1. Module Overview (Technical)
  2. Module Overview (Commercial/Business)
  3. Module Overview (End User/Administrator)
  4. Configuration Sections
  5. Settings Reference
  6. Common Scenarios & Examples
  7. Limitations & Important Notes
  8. Troubleshooting Tips
  9. Glossary

---

1. Module Overview (Technical)

What Are AI Providers?

AI Providers is a credential management module that stores API keys and configuration for AI services. These providers enable AI-powered features like TTS (Text-to-Speech), STT (Speech-to-Text), transcription, and intelligent assistants.

Architecture

Plaintext
┌─────────────────────────────────────────────────────────────────┐
│              AI Providers Architecture                         │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  AI Provider Credentials                                        │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                                                          │   │
│  │  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐        │   │
│  │  │ OpenAI      │ │ ElevenLabs  │ │ Anthropic   │        │   │
│  │  │ GPT-4, TTS  │ │ Voice Clone │ │ Claude      │        │   │
│  │  │ Whisper     │ │ Natural TTS │ │ Analysis    │        │   │
│  │  └─────────────┘ └─────────────┘ └─────────────┘        │   │
│  │                                                          │   │
│  │  ┌─────────────┐ ┌─────────────┐                        │   │
│  │  │ Google      │ │ Azure OpenAI│                        │   │
│  │  │ Cloud TTS   │ │ Enterprise  │                        │   │
│  │  │ Vertex AI   │ │ OpenAI      │                        │   │
│  │  └─────────────┘ └─────────────┘                        │   │
│  │                                                          │   │
│  └──────────────────────────────────────────────────────────┘   │
│       │                                                         │
│       ▼ Used by AI Features                                    │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                                                          │   │
│  │  Recording TTS ──────────► OpenAI (GPT-4 TTS)           │   │
│  │  Call Transcription ─────► OpenAI (Whisper)             │   │
│  │  Voicemail Summary ──────► Anthropic (Claude)           │   │
│  │  Custom Voices ──────────► ElevenLabs                   │   │
│  │                                                          │   │
│  └──────────────────────────────────────────────────────────┘   │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Key Tables

TablePurpose
public.ai_providersProvider credentials

Key Files

FileDescription
modules/aiProviders/Frontend module
---

2. Module Overview (Commercial/Business)

Business Value

AI Providers provides centralized AI credential management:

Without ModuleWith Module
Hardcoded keysWeb interface
Single providerMultiple providers
No failoverProvider selection
No testingConnection testing

Use Cases

  1. Voice Generation
- TTS for recordings

- Custom voice cloning

  1. Transcription
- Call transcription

- Voicemail to text

  1. Analysis
- Sentiment analysis

- Call summarization

  1. Assistants
- AI agents

- Interactive IVR

Feature Highlights

FeatureBenefit
Multiple ProvidersOpenAI, ElevenLabs, etc.
API Key StorageSecure credential vault
Custom URLsSelf-hosted models
Connection TestVerify credentials
Enable/DisableToggle providers
Organization IDEnterprise accounts
---

3. Module Overview (End User/Administrator)

What Can You Do?

  • Add AI provider credentials
  • Store API keys securely
  • Configure custom endpoints
  • Test connections
  • Enable/disable providers
  • Refresh capabilities
  • Manage organization IDs

AI Providers - List View

Plaintext
┌─────────────────────────────────────────────────────────────────┐
│              AI Providers                                       │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  Manage AI service providers and API keys                      │
│                                                                 │
│  [+ Create New]                                                 │
│                                                                 │
│  [🔍 Search providers...]                                       │
│                                                                 │
│  ┌───────────────────────────────────────────────────────────┐  │
│  │ Name          │ Provider   │ Base URL         │ Status   │  │
│  ├───────────────┼────────────┼──────────────────┼──────────┤  │
│  │ Main OpenAI   │ OpenAI     │ (default)        │ ● Active │  │
│  │ ElevenLabs    │ ElevenLabs │ (default)        │ ● Active │  │
│  │ Claude API    │ Anthropic  │ (default)        │ ● Active │  │
│  │ Google Cloud  │ Google     │ (default)        │ ○ Inactive│ │
│  │ Azure OpenAI  │ Azure      │ my.openai.azure  │ ● Active │  │
│  └───────────────────────────────────────────────────────────┘  │
│                                                                 │
│  Actions: [🧪 Test] [✏️ Edit] [🗑️ Delete]                      │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Add/Edit AI Provider

Plaintext
┌─────────────────────────────────────────────────────────────────┐
│              Create AI Provider                                 │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  [Provider Config] [API Settings] [Organization] [Status]      │
│                                                                 │
│  ▼ Provider Configuration                                       │
│                                                                 │
│  ┌─────────────────────────────────────────────────────────────┐│
│  │                                                             ││
│  │  Provider: [OpenAI ▼]                                      ││
│  │    OpenAI | ElevenLabs | Anthropic | Google | Azure OpenAI ││
│  │    Choose which AI service this key belongs to             ││
│  │                                                             ││
│  │  Name: [Main OpenAI                      ]                 ││
│  │    Friendly name for identification                         ││
│  │                                                             ││
│  └─────────────────────────────────────────────────────────────┘│
│                                                                 │
│  ▼ API Settings                                                 │
│                                                                 │
│  ┌─────────────────────────────────────────────────────────────┐│
│  │                                                             ││
│  │  API Key: [sk-xxxxxxxxxxxxxxxxxxxxxxxx    ]                ││
│  │    Enter the secret key for this provider                   ││
│  │                                                             ││
│  │  Base URL: [https://api.openai.com        ]                ││
│  │    Optional custom API endpoint                             ││
│  │    (Leave empty for default provider URL)                   ││
│  │                                                             ││
│  └─────────────────────────────────────────────────────────────┘│
│                                                                 │
│  ▼ Organization Settings (OpenAI only)                          │
│                                                                 │
│  ┌─────────────────────────────────────────────────────────────┐│
│  │                                                             ││
│  │  Organization: [org-xxxxxxxxxxxxxxxx      ]                ││
│  │    Optional organization ID for OpenAI accounts             ││
│  │                                                             ││
│  └─────────────────────────────────────────────────────────────┘│
│                                                                 │
│  ▼ Status & Management                                          │
│                                                                 │
│  ┌─────────────────────────────────────────────────────────────┐│
│  │                                                             ││
│  │  Enabled: ✓                                                ││
│  │    Enable/disable this integration                          ││
│  │                                                             ││
│  │  Created At: 2024-01-15 10:30:00                           ││
│  │  Updated At: 2024-01-16 14:22:15                           ││
│  │                                                             ││
│  └─────────────────────────────────────────────────────────────┘│
│                                                                 │
│  [Test Connection] [Refresh Capabilities] [Refresh Voices]     │
│                                                                 │
│  [Save Provider] [Cancel]                                       │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Quick Tips

TIP
Test First: Always test connection after adding API key.
TIP
Custom URL: Use Base URL for self-hosted or proxy endpoints.
WARNING
Keep Keys Secret: API keys are sensitive credentials.

---

4. Configuration Sections

Provider Configuration

FieldDescription
ProviderAI service type
NameFriendly identifier

API Settings

FieldDescription
API KeySecret authentication key
Base URLCustom endpoint (optional)

Organization Settings

FieldDescription
OrganizationOpenAI org ID (optional)

Status & Management

FieldDescription
EnabledActive/Inactive
Created AtCreation timestamp
Updated AtLast modification
---

5. Settings Reference

Supported Providers

ProviderServicesUse Cases
OpenAIGPT-4, TTS, WhisperLLM, Voice, Transcription
ElevenLabsVoice clone, TTSNatural voice generation
AnthropicClaudeText analysis, summaries
GoogleCloud TTS, Vertex AIEnterprise TTS, ML
Azure OpenAIOpenAI on AzureEnterprise OpenAI

Provider-Specific Settings

ProviderExtra Fields
OpenAIOrganization ID
AzureKey Type (universal)
GoogleKey Type selection

API Key Formats

ProviderFormat Example
OpenAIsk-xxxxxxxxxxxxxxxx
ElevenLabsxxxxxxxxxxxxxxxxxxxxxxx
Anthropicsk-ant-xxxxxxxxxxxxxxxx
GoogleAIzaXXXXXXXXXXXXXXXXXXXXX
Azurexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Actions

ActionDescription
Test ConnectionVerify API key works
Refresh CapabilitiesUpdate available models
Refresh VoicesUpdate TTS voice list
---

6. Common Scenarios & Examples

Scenario 1: Add OpenAI Provider

  1. Click Create New
  2. Provider = OpenAI
  3. Name = "Main OpenAI"
  4. API Key = sk-xxxxxx (from OpenAI dashboard)
  5. Organization = (optional for teams)
  6. Enabled = ✓
  7. Test Connection
  8. Save Provider

Scenario 2: Add ElevenLabs for Voice

  1. Create New
  2. Provider = ElevenLabs
  3. Name = "ElevenLabs TTS"
  4. API Key = (from ElevenLabs dashboard)
  5. Test Connection
  6. Refresh Voices
  7. Save

Scenario 3: Configure Azure OpenAI

  1. Create New
  2. Provider = Azure OpenAI
  3. Name = "Enterprise OpenAI"
  4. API Key = (from Azure portal)
  5. Base URL = https://my-resource.openai.azure.com/
  6. Test Connection
  7. Save

Scenario 4: Self-Hosted Model

  1. Create New
  2. Provider = OpenAI (compatible API)
  3. Name = "Local LLM"
  4. API Key = (local key if required)
  5. Base URL = http://localhost:8000/v1
  6. Test Connection
  7. Save

---

7. Limitations & Important Notes

Technical Notes

NOTE
Single Provider Per Type: One active provider per type.
NOTE
Base URL: Override for proxies or self-hosted.
WARNING
API Key Security: Keys stored encrypted but treat carefully.

Best Practices

  1. Test After Adding: Always verify with Test Connection
  2. Use Descriptive Names: "Production OpenAI" vs "Test"
  3. Rotate Keys: Update keys periodically
  4. Monitor Usage: Watch API billing
  5. Disable Unused: Disable inactive providers

Provider Capabilities

ProviderTTSSTTLLMVoice Clone
OpenAI
ElevenLabs
Anthropic
Google
Azure
---

8. Troubleshooting Tips

Common Issues

SymptomPossible CauseSolution
Test failedInvalid keyCheck API key
401 errorExpired keyRegenerate key
403 errorWrong org IDVerify organization
TimeoutNetwork issueCheck connectivity

Test API Keys

Bash
# Test OpenAI key
curl https://api.openai.com/v1/models \
  -H "Authorization: Bearer sk-xxxxxx"

# Test ElevenLabs key
curl https://api.elevenlabs.io/v1/voices \
  -H "xi-api-key: xxxxxx"

# Test Anthropic key
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: sk-ant-xxxxxx" \
  -H "anthropic-version: 2023-06-01"

Check Provider Status

Bash
# OpenAI status
curl https://status.openai.com/api/v2/status.json

# Check API response
curl -v https://api.openai.com/v1/models \
  -H "Authorization: Bearer $API_KEY"

---

9. Glossary

TermDefinition
API KeyAuthentication credential
ProviderAI service vendor
Base URLAPI endpoint
TTSText-to-Speech
STTSpeech-to-Text
LLMLarge Language Model
---

Lua Script Status ℹ️

Integration Module

ComponentStatus
AI Providersℹ️ Credential storage - no Lua handler required
AI Providers is a credential management module. It stores API keys and configuration for AI services. No Lua handlers are used - credentials are referenced by AI Profile features.

---

Documentation last updated: January 2026
AI Assistant

👋 Hello! I'm your Ring2All documentation assistant. I can help you find information about configuring and using the Ring2All PBX platform.

How can I help you today?