VOIP Lab using FreePBX

 


FreePBX is an open-source web-based graphical user interface (GUI) that simplifies the configuration and management of Asterisk-based VoIP phone systems. It enables administrators to deploy, manage, and scale IP PBX environments without deep command-line knowledge. FreePBX supports features such as extensions, IVR, call routing, voicemail, conferencing, and trunk management, making it suitable for both lab environments and production deployments.



In this lab, I wil be using FreePBX ISO instalation media and later will test the VOIP functionality on Windows, Linux and Android.
For simplicity, I will put the FreePBX server on the same subnet as the other machine/client.


First step, download FreePBX (I prefer the stable version) and then get the FreePBX ready (package update, IP address, datetime, etc). For this lab I choose the following version



Configure the administrator account, then click Setup System



Complete the additional setup








After configuring initial settings, the dashboard will appear. From there we can add extension by clicking Applications > Extensions > Create SIP Extension.

The field that I edit only User Extensions, Display Name and Secret

I am creating 3 new extensions:
1001 - Front Desk (Windows 11)
2001 - IT Team (BackBox Linux 7)
3001 - Public Area Personnel (Android)









Once the extensions created, setup the SIP account on each zoiper/client.



From left to right, 1001, 2001, 3001. Everything has green checkmarks means all config is OK and SIP account registration is success.





Now let's make a test call. For example calling 3001 (IT) from 1001 (Front Desk)


Another call from 3001 (Public Area Personnel) to 2001 (IT)


How it's looks like when the call is ongoing


So that's the basic config!

According to my research and experience during working in hospitality industry, there are so many scenario to try, I hope I can do it later.

TECHNICAL LABS

BEGINNER

Internal Extension Calling
Why important: Validates SIP registration and basic call flow; foundation for all VoIP testing.

Operator Shortcut (Dial 0)
Why important: Introduces basic dialplan logic and common real-world user behavior.

Voicemail Handling
Why important: Ensures missed calls are captured and users understand message workflows.

Call Forward / Redirect
Why important: Teaches practical call routing behavior used in most organizations.


INTERMEDIATE

IVR (Auto Attendant)
Why important: Core inbound call control and DTMF routing used in production systems.

Ring Group Distribution
Why important: Demonstrates multi-endpoint ringing and front desk scenarios.

Time-Based Routing
Why important: Implements business hours logic and policy-based call flow.

Call Queue (Basic Call Center)
Why important: Introduces agent handling, queue behavior, and call center fundamentals.

SIP Trunk Simulation (PBX to PBX)
Why important: Builds understanding of inbound/outbound routing and carrier integration.


ADVANCED

Failover Routing Between Trunks
Why important: Ensures service continuity and tests high-availability call paths.

NAT Traversal and Remote Client Testing
Why important: Critical for real deployments and avoiding one-way audio issues.

Security Hardening and Fraud Simulation
Why important: Protects against toll fraud and unauthorized access.

Multi-Site PBX Connectivity
Why important: Enables inter-branch dialing and distributed PBX architecture.

QoS and Network Impairment Simulation
Why important: Demonstrates impact of latency, jitter, and packet loss on call quality.

Call Recording Enablement
Why important: Required for compliance, auditing, and dispute resolution.



ACCOUNTING / BILLING LABS

BEGINNER

CDR (Call Detail Record) Analysis
Why important: Fundamental skill for tracking call usage and generating basic reports.

Extension Usage Monitoring
Why important: Identifies heavy users and supports basic cost visibility.

Manual Call Cost Calculation
Why important: Builds understanding of how telecom charges are derived.


INTERMEDIATE

Outbound Route Restrictions
Why important: Prevents unauthorized or expensive calls and enforces policy.

Call Duration Limits
Why important: Controls excessive usage and limits unexpected charges.

Department Chargeback Reporting
Why important: Allocates telecom costs to departments for accountability.

Budget Threshold and Cost Alerts
Why important: Provides early warning of abnormal spending patterns.


ADVANCED

Rate Table Implementation
Why important: Foundation for automated and realistic telecom billing.

Automatic Call Costing
Why important: Enables scalable cost calculation directly from CDR data.

Least Cost Routing (LCR)
Why important: Optimizes carrier selection to minimize call expenses.

External Billing or ERP Integration
Why important: Completes enterprise financial workflow and automation.

Post a Comment for "VOIP Lab using FreePBX"