Overview
This guide will walk you through the process of integrating Callab.ai with your 3CX phone system. This integration allows you to route calls through Callab.ai for AI-powered call handling and analysis using SIP trunk configuration.Prerequisites
Before starting this integration, ensure you have:- 3CX Admin Access: You need administrator-level access to your 3CX Management Console
- Callab.ai Owner Account: You need owner-level access to your Callab.ai account
- Basic Understanding: Familiarity with telephony concepts (extensions, trunks, outbound routes)
- Network Access: Ensure your 3CX system can reach Callab.ai’s server at
104.197.91.206on UDP port 5060 - 3CX Version: This guide is compatible with 3CX v16 and newer versions
Step 1: Create SIP Trunk in 3CX
We’ll start by creating a Generic SIP Trunk in 3CX that will connect to Callab.ai’s servers.1.1 Access 3CX Management Console
- Log in to 3CX: Open your web browser and navigate to your 3CX Management Console
- Enter Admin Credentials: Use your administrator username and password
- Navigate to Trunks: Go to Voice & Chat > SIP Trunks
1.2 Add New SIP Trunk
- Click “Add Trunk”: Look for the “Add” button or ”+” icon to create a new trunk
- Select Trunk Type: Choose “Generic SIP Trunk (IP Based)” from the available options
- Configure Basic Settings:
- Name: Enter
Callab AI(or any descriptive name of your choice) - Default Route: Enter
8810000(this is a dummy prefix that will be configured in outbound routes) - Main Trunk Number: Enter
20000(or any other internal extension you want to use)
- Name: Enter
Important: Remember the Main Trunk Number (20000 in this example) as you’ll need to use the exact same number in Callab.ai configuration.
1.3 Configure Authentication Settings
- Type of Authentication: Select “Do not require - IP based”
- This allows Callab.ai to connect without username/password authentication
- Registrar/Server: Enter
104.197.91.206(Callab.ai’s IP address) - Port: Enter
5060(standard SIP port) - Leave other settings as default unless you have specific requirements
1.4 Save the Configuration
- Review Settings: Double-check all entered information
- Click “Save”: Save the trunk configuration
- Verify Creation: Ensure the new “Callab AI” trunk appears in your SIP Trunks list
Step 2: Configure Callab.ai
Now that 3CX is configured to connect to Callab.ai, you need to set up the corresponding configuration in Callab.ai.2.1 Access Callab.ai Dashboard
- Log in to Callab.ai: Go to your Callab.ai dashboard
- Ensure Owner Access: Make sure you’re logged in with an account that has owner-level permissions
- Navigate to Phone Numbers: Click on “Phone Numbers” in your navigation menu
2.2 Add 3CX Phone Number
- Click “Add New Phone Number”: Look for the button to add a new phone number
- Select Provider Type: Choose “SIP Trunk” from the available options
- Configure Phone Number Settings:
- Name: Enter
3CX Extension(or any descriptive name of your choice) - Phone Number: Enter
20000(must match the Main Trunk Number from Step 1.2)
- Name: Enter
2.3 Add Gateway Configuration
- Click “Add Gateway”: Look for the option to add a gateway
- IP Address: Enter your 3CX server’s IP address
- This is the public or network IP address where your 3CX system is hosted
- Enable Services: Check both “Inbound” and “Outbound” options
- Save Configuration: Save your phone number and gateway settings
Step 3: Configure Outbound Routes in 3CX
Outbound routes determine how 3CX handles outgoing calls and which trunk to use.3.1 Access Outbound Routes
- Navigate to Routes: In your 3CX Management Console, go to Call Routing > Outbound Routes
- Click “Add”: Create a new outbound route
3.2 Create Callab.ai Outbound Route
- Route Name: Enter a descriptive name like
Callab AI Route - Route Configuration:
- Route 1: Select the Callab AI SIP trunk that you created in Step 1
- Strip Digits: Enter
2
- Pattern Matching: Configure the route to match the prefix patterns you’ll use
- Save Route: Save the outbound route configuration
Strip Digits Explanation: When you dial a number with a prefix (like 99 + phone number), the “Strip Digits: 2” setting removes the first 2 digits (99) before sending the call to Callab.ai.
Step 4: Route Existing SIP Trunk to Callab.ai (Optional)
If you have another existing SIP trunk and want to route its calls through Callab.ai, follow these steps:4.1 Configure Existing Trunk
- Navigate to Your Existing SIP Trunk: Go to Voice & Chat > SIP Trunks and select your existing trunk
- Access Default Route Settings: Look for “Default Route” or “Incoming Call Route” settings
- Set Forward to Outside Number: Configure it to forward to
9920000
4.2 How the Routing Works
When calls come through your existing SIP trunk:- Call arrives at your existing SIP trunk
- 3CX forwards the call to
9920000 - Outbound route processes the
99prefix - Route strips the first 2 digits (
99) leaving20000 - Call routes to Callab.ai through the Callab AI trunk
- Callab.ai receives the call on extension
20000
Step 5: Testing the Integration
5.1 Test Internal Extension
- Dial the Extension: From any 3CX extension, dial
20000 - Verify Routing: The call should route to Callab.ai
- Check AI Response: Callab.ai should answer and engage with the caller
5.2 Test Outbound Route (if configured)
- Dial with Prefix: Dial
9920000from any extension - Verify Processing: 3CX should strip the
99and route20000to Callab.ai - Check Call Flow: Ensure the call reaches Callab.ai successfully
5.3 Verification Checklist
- SIP trunk shows as “Registered” or “Connected” in 3CX
- Extension
20000rings Callab.ai when dialed directly - Outbound route with prefix works correctly
- Callab.ai AI assistant responds appropriately
- Call quality is acceptable (clear audio, no significant delays)
- Call logs appear in both 3CX and Callab.ai dashboards
Troubleshooting
Common Issues and Solutions
Issue: SIP Trunk shows as “Unreachable” or “Offline”- Solution: Verify network connectivity to
104.197.91.206 - Check: Ensure UDP port 5060 is not blocked by firewalls
- Check: Confirm the IP address
104.197.91.206is correctly entered
- Solution: Verify the phone number in Callab.ai matches the 3CX trunk number exactly
- Check: Ensure the outbound route is configured correctly
- Check: Verify the Callab.ai phone number is set to active
- Solution: Check NAT/firewall settings for RTP traffic
- Check: Ensure your 3CX server can receive RTP traffic from Callab.ai
- Check: Consider configuring STUN server in 3CX if behind NAT
- Solution: Double-check the “Strip Digits” setting matches your prefix length
- Check: Verify the route priority is set correctly
- Check: Ensure the trunk selection is correct in the outbound route
- Solution: Check that the gateway IP in Callab.ai is your 3CX server’s correct IP
- Check: Verify both inbound and outbound are enabled in Callab.ai
- Check: Ensure the phone number is active in Callab.ai
Getting Help
If you continue to experience issues:- Check 3CX Logs: Review call logs in 3CX Management Console under Logs > Call History
- Check Callab.ai Logs: Review call logs in your Callab.ai dashboard
- Network Diagnostics: Test connectivity between your 3CX server and
104.197.91.206 - Contact Support: Reach out to Callab.ai support with:
- Your 3CX trunk configuration details
- Callab.ai phone number configuration
- Error messages from logs
- Description of the issue and when it occurs
Advanced Configuration
Multiple Extensions
To set up multiple Callab.ai extensions:- Create Additional Trunks: Repeat Step 1 with different trunk numbers (e.g., 20001, 20002)
- Add Phone Numbers: Create corresponding phone numbers in Callab.ai
- Configure Routes: Set up specific outbound routes for each extension
Department-Specific Routing
You can route different departments to different Callab.ai assistants:- Create Multiple Callab.ai Phone Numbers: Each with different AI assistant configurations
- Use Different Prefixes: Configure different prefixes for different departments (e.g., 99 for sales, 88 for support)
- Set Up Corresponding Routes: Create outbound routes for each prefix
Next Steps
After successful integration:- Configure AI Settings: Customize your AI assistant’s behavior in Callab.ai for different use cases
- Set Up Call Analytics: Use Callab.ai analytics to track call performance and AI effectiveness
- Configure Failover: Set up backup routes in case Callab.ai is unavailable
- Monitor Performance: Regularly check call quality and connection status
- Scale Configuration: Apply similar configurations to other sites or additional trunks as needed
Testing Inbound Calls
To set up an inbound campaign:- Navigate to Campaigns: Go to your Callab.ai dashboard and click on “Campaigns”
- Create New Campaign: Click “Create Campaign” or “Add Campaign”
- Select Inbound Type: Choose “Inbound” as the campaign type
- Configure Campaign: Set up your AI assistant behavior and call handling preferences
- Activate Campaign: Make sure the campaign is active and running
- Test the Integration: Now you can test inbound calls to your 3CX extension, and Callab.ai will properly handle them