3CX Developer & AI · ECOLOR Technologies
Custom AI voice agents on 3CX
3CX Programmable Extensions and the Call Control API let an external application join calls, control routing and exchange audio with the caller — the officially-sanctioned path to building an AI voice agent on 3CX. ECOLOR Technologies designs, develops, integrates and supports these solutions with a Saudi-based technical team.
A precise note: Programmable Extensions are still Alpha (for testing and evaluation), while the Call Control API has been GA for years.
- MENA 3CX Solution Provider
- Call Control API — GA
- Programmable Extensions — Alpha
- OpenAI · Gemini · Grok · Qwen
- Saudi-based development team
01 · Definition
What Programmable Extensions and 3CX AI voice agents are
Programmable Extensions is an official 3CX feature that lets an external application — running on your own infrastructure — connect to a 3CX PBX and behave like a native extension: it joins calls, receives them, streams PCM audio bidirectionally with the caller, and controls routing through the Call Control API. This is the official path for building an AI voice agent on 3CX.
It is essential to separate two layers that do NOT share a release status: Programmable Extensions shipped in V20 Update 10 as Alpha — for testing and evaluation only, not for production. The Call Control API, by contrast, is the mature developer surface that has been generally available since V18, and it is the stable foundation the newer features build on. We keep that distinction clear across this page.
The AI itself — speech-to-text, reasoning and text-to-speech — is never done by 3CX. 3CX provides telephony, routing, transfers, SIP trunks and DIDs; speech understanding and voice generation come from an external AI provider that you connect with your own API key. Any AI voice agent ECOLOR builds this way is custom development on top of 3CX — not a native 3CX agent.
02 · Release status
Release status, made explicit — Programmable Extensions (Alpha) vs Call Control API (GA)
As of August 2026, 3CX has released Programmable Extensions as part of V20 Update 10 Alpha — which 3CX states is «intended for testing and evaluation only and should not be installed on production systems». The current stable release is V20 Update 9 (Final). We therefore treat Programmable Extensions today as an evaluation and pilot path, not a production-ready solution.
The Call Control API, in contrast, has been generally available (GA) since V18, with an official TypeScript SDK named @3cx/call-control-sdk, and it requires an Enterprise license at 8SC or above plus Call Flow Designer (CFD) access. This surface can be relied on in production within its limits and requirements.
Our practical position: today we can design and build an evaluation environment for a 3CX AI voice agent, pilot it, measure it and prepare its architecture; then move it to production once Programmable Extensions reaches a stable release. We make no production, performance or availability guarantees for a feature still in Alpha.
- Programmable Extensions — Alpha (V20 Update 10): testing and evaluation only, not for production.
- Call Control API — GA since V18: mature foundation, requires Enterprise 8SC+ and CFD access.
- Current stable release — V20 Update 9 (Final).
- The AI (STT · reasoning · TTS) — from an external provider with your key, not from 3CX.
03 · Capabilities
What this developer layer makes possible
Capabilities attributed precisely between what is official in 3CX and what ECOLOR builds:
An app that acts like a native extension
Via Programmable Extensions (Alpha), an external app on your infrastructure connects to 3CX and behaves like a native extension — monitoring, receiving and controlling the path of calls.
Real-time bidirectional audio
PCM 8 kHz 16-bit mono audio streamed both ways between caller and agent, which is what makes a natural spoken conversation with the AI possible.
Full call control
Via the Call Control API (GA): answer, route, transfer, drop and monitor, plus reading participant data and call state over a WebSocket with automatic reconnect.
An official developer SDK
The official TypeScript SDK @3cx/call-control-sdk provides call joining, audio read/write streaming and transfers — a stable base on which we build the agent logic.
An external AI provider
Speech understanding, reasoning and voice generation come from an external provider (OpenAI · Gemini · Grok · Qwen) over a single real-time audio stream, with your own API key.
Tools and system connections
In-call tool calls: transfer, drop or screen; phonebook lookup via the 3CX MCP server; and CRM or calendar connections via additional MCP servers.
04 · Components
The terms and components you will meet
Architectural building blocks of a 3CX AI voice agent:
- Programmable Extensions (Alpha) — external app as an extension
- Call Control API (GA) — controlling the call
- @3cx/call-control-sdk — the official SDK (TypeScript)
- PCM 8 kHz 16-bit mono audio, bidirectional
- WebSocket connection with automatic reconnect
- Service Principal — app ID and secret (appId · appSecret)
- Enterprise license at 8SC+ plus CFD access
- 3CX MCP server — phonebook lookup and contact management
- Additional MCP servers — CRM and calendar connections
- External AI provider with your own key (BYO key)
- The official reference repo agentic-call-control
- Alternative: AI Call Scripts on the 3CX server (also Alpha)
05 · Scenarios
Where a custom AI voice agent fits
- ◆
A voice reception agent greets the caller in Arabic, understands intent, answers frequent questions, then hands off to the right department — as an evaluation build today, production once the feature matures.
- ◆
A bookings or appointments line that talks to the caller by voice, checks availability via a calendar connection, and confirms the slot or transfers complex cases to a person.
- ◆
Inbound or outbound call screening that gathers initial details (order number, enquiry type) before transfer, so the caller reaches an agent with context ready.
- ◆
A lead-qualification agent that speaks with the caller, logs the enquiry in the CRM via an MCP server, then routes qualified leads to sales.
- ◆
An after-hours line that handles simple enquiries by voice and leaves structured messages or creates tickets for cases needing human follow-up.
- ◆
A multilingual agent serving callers in Arabic and English through a real-time-capable AI provider, with seamless handoff between agent and staff.
- ◆
A proof-of-concept to measure audio quality, latency and comprehension accuracy before any decision to scale or move to production.
06 · Architecture
How an external AI app connects to 3CX
The officially-recommended path for custom agents is an external Programmable Extension: a call reaches the 3CX PBX, then a control channel opens over a WebSocket to an orchestrator that runs on your own infrastructure. The orchestrator uses @3cx/call-control-sdk to join the call and read and write PCM audio in both directions. For setup, a Service Principal is created from the admin console (Admin → Integrations → API), giving you an appId, an appSecret and a pbxBase.
The orchestrator passes audio to an external AI provider over a single real-time stream; the provider handles speech understanding, reasoning and voice generation, then returns audio to the caller through 3CX. 3CX officially documents four providers for this pattern via its agentic-call-control reference repository: OpenAI Realtime API, Google Gemini Live API, xAI Grok, and Alibaba Qwen Omni Realtime. All are developer-built-via-API with your own key — no other provider may be presented as official.
During a call the agent can invoke local tools (transfer · drop · screen), look up the phonebook via the 3CX MCP server, and connect additional systems (CRM · calendar) via other MCP servers. There is also an alternative path, AI Call Scripts, which runs on the 3CX server itself and connects to supported OpenAI, Gemini and xAI voice services — this is likewise Alpha within Update 10 and requires the AI Edition. What is native to 3CX here: telephony, routing, transfers, SIP trunks, DIDs and the Call Control API. The agent logic and the AI are external development and the provider’s work.
- Caller → 3CX PBX → WebSocket control channel → orchestrator on your infrastructure.
- Orchestrator → provider bridge (OpenAI · Gemini · Grok · Qwen) with your own key.
- Call tools: transfer · drop · screen + 3CX MCP server (phonebook) + additional MCP servers (CRM · calendar).
- Native to 3CX: telephony, routing, SIP, DIDs and the Call Control API — not the AI itself.
07 · Security, scalability & production
Security, scalability and production considerations — honestly, no guarantees
Because the application runs outside 3CX on your infrastructure, its security is your responsibility and your implementation partner’s: protecting the appSecret and provider keys, isolating the orchestrator environment, securing the control channel, and scoping permissions at the Service Principal level and the transfers allowed. When the 3CX MCP server is used for phonebook lookup, the permissions of the authorizing 3CX user’s role are respected and role-based access controls apply. We design these layers within sound operating practices — with no claim of absolute security or privacy.
Privacy and data residency are central: call audio passes through an external AI provider (with its own account, key, billing and release status), and some providers are region-locked for their access endpoints. These options, their locations and data flows are confirmed during solution design, subject to your policies — and we make no compliance guarantee; we provide tools and practices that support your governance efforts.
On production and scalability: Programmable Extensions is still Alpha, so we do not recommend it for critical production loads today, and we treat it as an evaluation and proof-of-concept environment with continuous monitoring of audio quality, latency and stability. Scalability depends on license capacity (SC), orchestrator resources and the AI provider’s limits — measured and confirmed during technical evaluation, not assumed in advance. When the feature reaches a stable release, we move the solution to production on a tested architecture.
08 · Why ECOLOR
Why ECOLOR builds and supports these solutions
Building a 3CX AI voice agent is engineering work — not a one-click setup:
- Real architecture and developmentWe design and build the orchestrator with the official @3cx/call-control-sdk, and wire in the AI provider, call tools and MCP servers — with genuine 3CX engineering depth, not just configuration.
- Integration, testing and monitoringWe integrate systems (CRM · calendar), test audio quality, latency and comprehension, and monitor stability — a proof-of-concept methodology before any decision to scale.
- Release-status disciplineWe keep Programmable Extensions (Alpha) clearly distinct from the Call Control API (GA), so we never promise you production on an Alpha feature, and we set out a realistic path to production.
- Tied to ECOLOR’s own solutionsWe connect these capabilities to ECOLOR’s AI Voice Agent and AutoConnect platform — both ECOLOR-developed on top of 3CX, not native 3CX features — and keep supporting them.
Considering a 3CX AI voice agent? Let us design an evaluation environment today and map the path to production together.
Book a consultation09 · FAQ
Programmable Extensions and AI voice agents — FAQ
What are Programmable Extensions in 3CX, and what is their status?
What is the Call Control API, and is it also in Alpha?
Which AI voice providers are official with 3CX?
Is the custom voice agent a native 3CX agent?
What license and requirements are needed?
Is this production-ready today?
How does ECOLOR help specifically?
What is the difference between this path and AI Call Scripts?
A 3CX AI voice agent — built honestly, on sound architecture
From the Service Principal setup and the official @3cx/call-control-sdk, to connecting an external AI provider, call tools and MCP servers, ECOLOR Technologies designs, develops, integrates, tests, monitors and supports custom voice agents on 3CX — with a clear separation between Programmable Extensions (Alpha) and the Call Control API (GA), and no production guarantees on anything still in Alpha.
ECOLOR Technologies — ECOLOR Technologies — Riyadh, Saudi Arabia
3CX Solution Provider · Fanvil Platinum Partner | Yealink Gold Partner
Unified number: 920033987 · WhatsApp: +966920033987 · [email protected]
Book a consultation to design an evaluation environment for your voice agent and map the path to production.
Related links
