ZIWO SIP Trunk Integration
Complete step-by-step guide to integrate CalLab.ai with ZIWO telephony system using SIP trunk configuration.
Overview
This guide will walk you through the process of integrating CalLab.ai with your ZIWO telephony system. This integration allows you to route calls through CalLab.ai for AI-powered call handling and analysis.
Prerequisites
Before starting this integration, ensure you have:
- ZIWO Admin Access: You need administrator-level access to your ZIWO account
- CalLab.ai Owner Account: You need owner-level access to your CalLab.ai account
- Basic Understanding: Familiarity with telephony concepts (extensions, dial plans, SIP trunks)
- Network Access: Ensure your ZIWO system can reach
sip-pbx-qa.callab.ai
on UDP port 5060
Make sure to test this integration in a non-production environment first to avoid disrupting your live phone operations.
Step 1: Create a Dial Plan in ZIWO
A dial plan is a set of rules that tells ZIWO how to handle incoming and outgoing calls. We’ll create a custom dial plan that routes calls to CalLab.ai.
1.1 Access the ZIWO Admin Panel
- Log in to ZIWO using your administrator credentials
- Navigate to Admin Menu: Look for the admin section in your ZIWO interface (usually in the top navigation or sidebar)
- Go to Channels: Click on “Channels” in the admin menu
- Select IVR & Dialplan: Choose “IVR & Dialplan” from the channels submenu
1.2 Create the New Dial Plan
- Click “Add New Plan”: Look for a button or link that says “Add New Plan” or similar
- Name Your Plan: Give your dial plan a descriptive name like “CalLab AI Integration” or “CalLab SIP Trunk”
- Copy the XML Configuration: Copy and paste the following XML code exactly as shown:
What this dial plan does:
ring_ready
: Generates a ring tone for the callerabsolute_codec_string=PCMU,PCMA
: Sets the audio codecs to use (standard telephony codecs)bridge
: Routes the call to CalLab.ai’s SIP server atsip-pbx-qa.callab.ai
transport=udp
: Specifies UDP as the transport protocol
- Save the Dial Plan: Click “Save” or “Create” to save your new dial plan
1.3 Verify the Dial Plan Creation
- Check the List: Ensure your new dial plan appears in the list of available dial plans
- Note the Name: Remember the exact name you gave to the dial plan, as you’ll need it in the next step
Step 2: Create an Extension in ZIWO
An extension is a specific phone number or identifier within your ZIWO system that will use the dial plan we just created.
2.1 Navigate to Extensions
- Go to Extensions Menu: In your ZIWO admin panel, find and click on the “Extensions” menu
- Access Extension Management: Look for options to create or manage extensions
2.2 Create the Extension
- Click “Add Extension” or similar button to create a new extension
- Enter Extension Number: Type in your desired extension number (e.g., 1001, 2000, etc.)
- Choose a number that doesn’t conflict with existing extensions
- Make note of this number as you’ll need it later in CalLab.ai
- Configure Extension Settings:
- Name: Give it a descriptive name like “CalLab AI Extension”
- Type: Select the appropriate extension type (usually “Internal” or “SIP”)
- Select Dial Plan: From the dial plan dropdown, choose the dial plan you created in Step 1
- Look for the name you gave it (e.g., “CalLab AI Integration”)
2.3 Save the Extension
- Review Settings: Double-check all your settings before saving
- Save Extension: Click “Save” or “Create” to create the extension
- Test Extension: If possible, test that the extension is working by calling it internally
Step 3: Configure CalLab.ai
Now that ZIWO is configured, you need to set up the corresponding configuration in CalLab.ai.
3.1 Log in to CalLab.ai
- Access CalLab.ai: Go to your CalLab.ai dashboard
- Log in as Owner: Make sure you’re logged in with an account that has owner-level permissions
- Verify Access: Ensure you can see administrative settings and phone number management
3.2 Add ZIWO Phone Number
- Navigate to Phone Numbers: Look for “Phone Numbers” in your CalLab.ai navigation menu
- Click “Add Phone”: Find and click the button to add a new phone number
- Select ZIWO: Choose “ZIWO” from the list of telephony providers
- Enter Extension: In the extension field, enter the exact extension number you configured in ZIWO (from Step 2.2)
- This must match exactly what you set in ZIWO
- Configure Additional Settings: Fill in any other required fields such as:
- Display name for the phone number
- Call routing preferences
- AI assistant settings
3.3 Save and Activate
- Save Configuration: Save your ZIWO phone number configuration
- Activate: Make sure the phone number is set to active/enabled
- Test Configuration: Verify that the phone number appears in your active phone numbers list
Step 4: Testing the Integration
4.1 Initial Test
- Make a Test Call: Call the extension you created in ZIWO
- Listen for Ring: You should hear the phone ringing
- Check Call Routing: The call should be routed to CalLab.ai
- Verify AI Response: CalLab.ai should answer and engage with the caller
4.2 Verification Checklist
- Extension rings when called
- Call is successfully routed to CalLab.ai
- CalLab.ai AI assistant responds appropriately
- Call quality is acceptable (clear audio, no delays)
- Call logs appear in both ZIWO and CalLab.ai dashboards
Troubleshooting
Common Issues and Solutions
Issue: Extension doesn’t ring
- Solution: Check that the extension number is correct and the dial plan is properly assigned
- Check: Verify the extension is active in ZIWO
Issue: Call doesn’t reach CalLab.ai
- Solution: Verify the dial plan XML is exactly as provided
- Check: Ensure network connectivity to
sip-pbx-qa.callab.ai
- Check: Confirm UDP port 5060 is not blocked by firewalls
Issue: Poor call quality or audio issues
- Solution: Check network bandwidth and stability
- Check: Verify codec settings (PCMU, PCMA should be supported)
Issue: CalLab.ai doesn’t recognize the phone number
- Solution: Double-check that the extension number in CalLab.ai exactly matches the one in ZIWO
- Check: Ensure the phone number is active in CalLab.ai
Getting Help
If you continue to experience issues:
- Check Logs: Review call logs in both ZIWO and CalLab.ai for error messages
- Network Diagnostics: Test connectivity to
sip-pbx-qa.callab.ai
- Contact Support: Reach out to CalLab.ai support with:
- Your ZIWO extension number
- Error messages from logs
- Description of the issue and when it occurs
Next Steps
After successful integration:
- Configure AI Settings: Customize your AI assistant’s behavior in CalLab.ai
- Set Up Call Routing: Configure how calls should be handled (forwarding, voicemail, etc.)
- Monitor Performance: Use CalLab.ai analytics to track call performance and AI effectiveness
- Scale Up: Apply this configuration to additional extensions as needed
Consider setting up multiple extensions for different departments or use cases to better organize your call handling and AI assistant configurations.