December 7, 2011 – 6:58 pm | 16 Comments

3CX is pleased to announce a new release of 3CX Phone System 10, build 22686. Service Pack 5 fixes numerous 3CX Wallboard issues and also adds a new and important caller ID feature. To download …

Read the full story »
Releases

3CX Product Releases

VoIP How To

Technical tips to run your VoIP PBX more efficiently

Events

3CX Trainings and Webinars around the world

Docs & FAQ

3CX Documentation how to and FAQ

Phone configuration

3CX, Aastra, Cisco, Yealink, Grandstream, Polycom configs

Home » Docs & FAQ, VoIP How To

Configuring and testing a VoIP Provider for use with 3CX PhoneSystem

Submitted by on November 5, 2009 – 7:04 pmNo Comment

3CX_logo_80x80

Note 1: The results generated from these tests should remain valid while the VoIP Provider keeps your account settings static. If your VoIP Provider account is reconfigured, it may be necessary to redo these tests.

Note 2: The supported configuration for interoperability with VoIP Providers is for the PBX to be behind a WAN-to-LAN device, with Port Forwarding implemented correctly.

Pre-Requisites

Before you start your testing, you should have some items in place to ensure:

  • You can complete the tests in one run without interruptions
  • You complete all the tests to ensure correct interoperability

List of pre-requisites:

  1. You must have at least one (ideally two) external telephone lines available for testing – note that:
    • This must be in ADDITION to your lines connected to 3CX Phone System, and indeed should NOT be connected to 3CX PhoneSystem or any other PBX
    • This line must NOT have its CallerID withheld. When you make a call from this line to some other phone, the destination phone MUST be able to see the number of the line originating the call. Without this, the tests for outbound CallerID will be invalid.
    • One of these tests will require to have 2 separate lines to test a call that is received over your VoIP provider account, and which needs to be re-routed to some external number ALSO over this same VoIP Provider account
    • Typically you would use analogue lines or cell phones for this component
    • We will refer to these lines as “LINE1″ and “LINE2″ throughout the rest of this document
  2. You must create an outbound rule for testing outbound calls. For the purposes of this test, we strongly suggest to:
    • Set the “Calls to numbers starting with (Prefix)” field to “9″
    • Set the “Calls to extension(s)” field to be empty or blank
    • Set the “Calls to numbers with a length of” field to be empty or blank
    • For the Route labelled “Route 1″:
      • Set the “Route” field to the VoIP Provider account you have created for testing
      • Set the “Strip Digits” field to “1″
      • Set the “Prepend” field to be empty or blank
  3. Ensure, by communicating with your VoIP Provider, that CallerID is enabled BOTH inbound AND outbound
  4. Ensure that in the advanced page of the 3CX Management Console for your VoIP Provider:
    • Set the “Supports Re-Invite” field to DISABLED
    • Set the “Supports Replaces” field to DISABLED
    • Set the “PBX Delivers Audio” field to ENABLED
  5. You must create 2 extensions via the 3CX Management Console where:
    • For BOTH Extensions:
      • Voicemail Option must be ENABLED
      • The Voicemail mailbox should be empty
      • The PIN for both extensions should be set to “1234567890″
      • The “Continue Ringing” field in the “Forwarding Rules” tab should be set to 60 seconds
      • The “Busy Detection Mechanism” field on the “Forwarding Rules” tab should be set to “Use PBX Status”
      • There should be NO forwarding rules in the list
      • The “User Status” field in the “Other” tab should be set to “Available”
      • The “Queues Status” field in the “Other” tab should be set to “Logged In”
    • For the FIRST Extension:
      • Set the “Outbound Caller ID” field in the “Other” tab to be empty or blank
      • We will be referring to this extension as “EXT1″ throughout the rest of this document.
    • For the SECOND Extension (which will be used for most of the tests):
      • Set the “Outbound Caller ID” field on the “Other” tab to the first DID Number assigned to you by your VoIP Provider
      • We will be referring to this extension as “EXT2″ throughout the rest of this document.
  6. Register the 2 extensions created in the previous step using 3CX Phone in both cases. Please note that 2 extensions MUST NOT be on the same machine as the 3CX PhoneSystem.
  7. Create a Digital Receptionist with an audio prompt containing, for example, the message “Welcome to the TEST Digital Receptionist”. All the key options should be left BLANK. The Timeout option should also be left BLANK. We will be referring to this Digital Receptionist as “DR1″ throughout the rest of this document.
  8. Create a Ring Group, using the “Ring All” strategy, and make the 2 extensions created previously both members of the Ring Group. We will be referring to this Ring Group as “RG1″ throughout the rest of this document.
  9. Create a Queue, using the “Hunt” strategy, set the “Ring Timeout” field to 15 seconds, and make the 2 extensions created previously both members of the Queue. Please note that the order in which the extensions are added to the queue is important: ensure that the FIRST extension (as described above) is the first in the list, and that the SECOND extension (as described above) is the second in the list. We will be referring to this Queue as “QUE1″ throughout the rest of this document.
  10. Go to the “Settings->Advanced” page, then click the “Custom Parameters” tab. Identify the row for the parameter called “VMDIALOUTENABLED”. By default the value for this parameter is set to “0″, or may be undefined. Please set the value to “1″ for the duration of this test – please ensure that you revert to the previous value after your tests are complete or, if the value was undefined, ensure you set the value to “0″ after your tests are complete.

Part 1 – VoIP Provider Configuration and Pre-Requisites

This document applies for BOTH registration-based AND trunk-style VoIP Provider Connections. Note that:

  • If you are configuring a registration-based VoIP provider account, you should choose the “Generic VoIP Provider” template
  • If you are configuring a trunk-style VoIP provider account, you should choose the “Generic SIP Trunk” template

To configure your VoIP Provider Account, please review the “Configuring VoIP Providers” article.

Create at least 2 of the DID numbers assigned to you by your VoIP Provider, and ensure that they route inbound calls correctly.
*For details on correct DID configuration for VoIP Provider accounts. We will be referring to them as “DID1″ and “DID2″ throughout the rest of this document.

Go to the “Advanced” tab for your VoIP Provider account, and ensure that the audio codecs are listed in the following priority:

  • G.729
  • GSM-FR (or GSM)
  • G.711 U-Law (or PCMU)
  • G.711 A-Law (or PCMA)

Part 2 – Running Tests to Optimize Interoperability (Inbound)

Check for Successful Registration

Go to the “Ports/Trunks Status” page and ensure that the status of the VoIP Provider account you are testing is “Registered (idle)”.

  1. In the case of a registration-based VoIP Provider account, if the status is showing as “Not Registered”, you will need to review your configuration. You will not be able to reliably proceed with this test until this step is completed.
  2. Since trunk-style connections do NOT register with the VoIP Provider, the status for this type of account will always show up as “Registered”

Check that the Provider correctly sends a CANCEL when remote caller rings in and hangs up

  1. Set DID1 to route calls to EXT1 inside and outside office hours
  2. Set DID2 to route calls to EXT2 inside and outside office hours
  3. Make an inbound call from LINE1 to DID1
    • EXT1 will ring. Do NOT answer.
    • Ensure that the EXT1 Display shows the Caller’s Number (or Caller ID)
    • LINE1 should hang up after about 20 seconds of ringing time. EXT1 should stop ringing, and should show “Hung Up” on the display
  4. Make an inbound call from LINE1 to DID2
    • EXT2 will ring. Do NOT answer.
    • Ensure that the EXT2 Display shows the Caller’s Number (or Caller ID)
    • LINE1 should hang up after about 20 seconds of ringing time. EXT2 should stop ringing, and should show “Hung Up” on the display, and should show an entry in the “Missed Calls” list.

Note: Be aware that the format of the Caller ID visible on the display on EXT1 and EXT2 may vary depending on whether the source of an inbound call is local, long distance, or international, and, depending on the source of the call, some VoIP Provider services may not be able to show Caller ID.

Check correct delivery of ACK from Provider to PBX

  1. Set DID1 to route calls to EXT2 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1
  3. EXT2 should pick up the call after about 10 seconds. Keep the call active for an additional 45 seconds, and ensure that there is 2-way audio throughout
  4. LINE1 should hang up. EXT2 should show “Hung Up” on the display, and should show an entry in the “Received Calls” list.

Check Hold / Resume functionality

  1. Set DID1 to route calls to EXT2 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1
  3. EXT2 should pick up the call after about 10 seconds. Keep the call active for an additional 10 seconds, and ensure that there is 2-way audio throughout.
  4. EXT2 should place the call on hold. Ensure that the remote caller can hear the Music-On-Hold audio.
  5. EXT2 should resume the call. Keep the call active for an additional 45 seconds, and ensure that there is 2-way audio throughout
  6. LINE1 should hang up. EXT2 should show “Hung Up” on the display, and should show an entry in the “Received Calls” list.

Check correct receipt of BYE from Provider

  1. Set DID1 to route calls to EXT2 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1
  3. EXT2 should pick up the call after about 10 seconds.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Connected”
    • In the “Extension Status” page, EXT2 should show status “Connected”
  4. LINE1 should hang up. EXT2 should show “Hung Up” on the display, and should show an entry in the “Received Calls” list.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Registered (idle)”
    • In the “Extension Status” page, EXT2 should show status “Registered (idle)”

Check correct handling of BYE by Provider

  1. Set DID1 to route calls to EXT2 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1
  3. EXT2 should pick up the call after about 10 seconds.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Connected”
    • In the “Extension Status” page, EXT2 should show status “Connected”
  4. EXT2 should hang up. EXT2 should briefly show “Call Ended (x seconds)” on the display, and should show an entry in the “Received Calls” list.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Registered (idle)”
    • In the “Extension Status” page, EXT2 should show status “Registered (idle)”

Testing inbound DTMF and DR/AA interoperability

  1. Set DID1 to route calls to DR1 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1
  3. DR1 will respond – ensure that the DR1 audio prompt can be heard by the remote caller
  4. LINE1 should dial the VoiceMail Special Number (default 999 for a 3-digit installation)
  5. DR1 will announce a request for the Extension Number
  6. LINE1 should dial the Extension Number for EXT2
  7. DR1 will announce a request for the PIN
  8. LINE1 should dial the PIN followed by the “#” key
  9. DR1 will announce the Voicemail Main Menu
  10. LINE1 should hang up

Testing correct interoperability with Ring Group

  1. Set DID1 to route calls to RG1 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1
  3. EXT1 and EXT2 will ring simultaneously. EXT2 should answer the call after about 10 seconds
  4. Keep the call active for an additional 45 seconds, and ensure that there is 2-way audio throughout
  5. LINE1 should hang up

Testing correct interoperability with Queue

  1. Set DID1 to route calls to QUE1 inside and outside office hours
  2. Make an inbound call from LINE1 to DID1 – ensure that the QUE1 audio prompt can be heard by the remote caller
  3. EXT1 should ring for 15 seconds, and then stop.
  4. EXT2 should ring. EXT2 should answer the call after about 5 seconds. Keep the call active for an additional 45 seconds, and ensure there is 2-way audio throughout
  5. Perform a BLIND transfer to EXT1, and ensure that LINE1 hears MOH during the time that EXT1 is ringing (after the transfer)
  6. EXT1 should ring. EXT1 should answer the call after about 5 seconds. Keep the call active for an additional 45 seconds, and ensure there is 2-way audio throughout
  7. Perform an ATTENDED transfer to EXT2, and ensure that LINE1 hears MOH during the time that LINE1 is in the “on-hold” part of the transfer
  8. EXT2 should ring. EXT2 should answer the call after about 5 seconds. Keep the call active for an additional 45 seconds, and ensure there is 2-way audio throughout
  9. EXT2 should hang up

Testing re-route of call to an external number via same provider

  1. Add a Forwarding Rule to EXT1:
    • Forward ALL Calls, for ALL Hours, for ALL Types of Calls, To External Number – which should be 9 + the number for LINE2
  2. Set DID1 to route calls to go to EXT1 inside and outside office hours
  3. Make an inbound call from LINE1 to DID1
  4. LINE2 should ring. LINE2 should answer the call after about 5 seconds. Keep the call active for an additional 45 seconds, and ensure there is 2-way audio throughout
  5. LINE2 should hang up

Part 3 – Running Tests to Optimize Interoperability (Outbound)

Check correct delivery of ACK from PBX to Provider

  1. Make an outbound call from EXT2 to LINE1 by dialling 9 + the number for LINE1
  2. LINE1 should ring. LINE1 should answer the call after about 5 seconds. Keep the call active for an additional 45 seconds, and ensure there is 2-way audio throughout. Ensure also that the LINE1 phone shows the number for DID1

Check correct delivery of BYE from PBX to Provider

  1. Make an outbound call from EXT2 to LINE1 by dialling 9 + the number for LINE1
  2. LINE1 should ring. LINE1 should pick up the call after about 10 seconds.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Connected”
    • In the “Extension Status” page, EXT2 should show status “Connected”
  3. EXT2 should hang up. EXT2 should briefly show “Call Ended (x seconds)” on the display, and should show an entry in the “Received Calls” list.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Registered (idle)”
    • In the “Extension Status” page, EXT2 should show status “Registered (idle)”

Check correct delivery of BYE from Provider to PBX

  1. Make an outbound call from EXT2 to LINE1 by dialling 9 + the number for LINE1
  2. LINE1 should ring. LINE1 should pick up the call after about 10 seconds.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Connected”
    • In the “Extension Status” page, EXT2 should show status “Connected”
  3. LINE1 should hang up. EXT2 should show “Hung Up” on the display, and should show an entry in the “Received Calls” list.
    • In the “Ports/Trunks Status” page, the VoIP Provider should show status “Registered (idle)”
    • In the “Extension Status” page, EXT2 should show status “Registered (idle)”.

If all the above tests pass, then you have successfully completed the VoIP Provider test.

Comments are closed.