Overview
Discover what makes FusionPBX powerful
FusionPBX is a **self‑hosted, multi‑tenant Voice over IP (VoIP) platform** built on top of FreeSWITCH. It exposes a rich set of telephony services—PBX, carrier‑grade switching, call center, fax, voicemail, conferencing, and a flexible appliance framework—while keeping the core logic in PHP and SQL. For developers, this means a familiar web‑app stack that orchestrates complex real‑time audio flows via FreeSWITCH’s event bus and XML configuration.
Core Engine
Web Interface & API
Database
Real‑time Features
Overview
FusionPBX is a self‑hosted, multi‑tenant Voice over IP (VoIP) platform built on top of FreeSWITCH. It exposes a rich set of telephony services—PBX, carrier‑grade switching, call center, fax, voicemail, conferencing, and a flexible appliance framework—while keeping the core logic in PHP and SQL. For developers, this means a familiar web‑app stack that orchestrates complex real‑time audio flows via FreeSWITCH’s event bus and XML configuration.
Technical Stack & Architecture
- Core Engine: FreeSWITCH (C, event‑driven, multi‑threaded) handles media processing, SIP signaling, and call routing.
- Web Interface & API: PHP 7/8 runs the FusionPBX web UI, providing REST‑style endpoints (JSON) for CRUD operations on extensions, trunks, dialplans, and user accounts.
- Database: MySQL/MariaDB stores configuration, call detail records (CDRs), and user data. The schema is auto‑generated on install but can be extended via custom tables.
- Real‑time Features: WebSockets deliver live call state, CPU usage, and active call lists to the UI without polling.
- Autoloading: Composer‑style autoloader loads PHP classes on demand, keeping the codebase modular.
The architecture follows a thin‑client pattern: PHP renders configuration pages, while FreeSWITCH runs as a daemon that reads XML dialplan files generated by FusionPBX. This separation allows developers to tweak FreeSWITCH directly or rely on the web UI for most tasks.
Core Capabilities & APIs
- Dialplan Management: Dynamic XML generation, priority manipulation, and custom application hooks.
- User & Extension Provisioning: REST endpoints to create extensions, assign VoIP devices, and generate provisioning files (XML, JSON).
- Call Detail Records: Full CDR export with call‑flow icons; APIs to query by time, caller, callee, or application.
- Webhooks & Callbacks: Trigger external services on events such as call start, end, or voicemail creation.
- Plugin System: Add‑ons like
dialplan_toolsanddevice_logsextend functionality without altering core code. - OpenID & OAuth: Optional authentication modules for SSO integration.
Deployment & Infrastructure
FusionPBX is docker‑friendly; official images expose FreeSWITCH and PHP behind Nginx/Apache, making it easy to spin up a multi‑tenant environment. For high availability, replicas can share a common MySQL cluster and use FreeSWITCH’s built‑in SIP federation. Scaling is horizontal: add more PHP workers or FreeSWITCH instances behind a load balancer, and the database layer can be sharded or replicated.
Integration & Extensibility
Developers can integrate FusionPBX with external systems via:
- REST APIs: CRUD on extensions, trunks, and call routing.
- Webhooks: Push events to CRM or ticketing systems.
- SIP Trunking: Connect to any SIP provider, or expose a trunk for other services.
- Custom Dialplan Applications: Write FreeSWITCH XML or C modules that plug into the call flow.
- Database Hooks: Trigger stored procedures on new CDRs for billing or analytics.
Developer Experience
- Documentation: The README, API references, and wiki provide a solid foundation; however, the community forums are often the quickest source for edge‑case questions.
- Configuration: Most settings are exposed through the web UI; advanced users can tweak FreeSWITCH XML directly.
- Community: A vibrant, active community contributes add‑ons and shares custom scripts on GitHub and forums.
- Licensing: FusionPBX is open‑source (GPL), allowing unrestricted modification and redistribution—ideal for SaaS or internal tooling.
Use Cases
- Enterprise PBX – Replace legacy on‑prem phones with a cloud‑like, multi‑tenant system while keeping control of the infrastructure.
- Call Center Platform – Leverage built‑in queues, real‑time monitoring, and CDR analytics to build a fully integrated contact center.
- VoIP API Service – Expose SIP trunking and REST APIs to developers building messaging or telephony features into their apps.
- Educational / Lab Environments – Rapidly spin up isolated PBX instances for training or testing SIP clients.
Advantages Over Alternatives
| Criterion | FusionPBX |
|---|---|
| Performance | FreeSWITCH core is lightweight and highly scalable. |
| Flexibility | Full control over dialplans, extensions, and media paths via PHP/SQL. |
| Licensing | GPL allows free use in commercial or internal deployments. |
| Extensibility | Plugin architecture and open APIs simplify custom feature development. |
| Community Support | Active forums, GitHub repos, and frequent releases keep the stack modern. |
FusionPBX offers a developer‑friendly blend of a web‑based configuration layer and a powerful real‑time telephony engine, making it an attractive choice for building customized communication solutions or SaaS telephony platforms.
Open SourceReady to get started?
Join the community and start self-hosting FusionPBX today
Related Apps in apis-services
Mastodon
Decentralized, real‑time social networking
Discourse
Open‑source community forum platform with real‑time chat and AI
Rocket.Chat
Secure, open‑source team communication platform
Novu
Unified notification platform for multi‑channel delivery
Mattermost
Secure, self‑hosted team collaboration with chat, voice, and AI
Jitsi Meet
Free, encrypted video conferencing for everyone
Weekly Views
Repository Health
Information
Explore More Apps
E-MailRelay
Lightweight SMTP store‑and‑forward server with POP access and spam filtering
Aleph
Self-hosted other
HeyForm
Build conversational forms without code
Dotclear
Self-hosted other
The Battle for Wesnoth
High‑fantasy, turn‑based strategy with single‑player and multiplayer
Courier MTA
All-in-one mail and groupware server