These instructions will walk you through how to configure your FreePBX to Voyant Trunking and the Voyant Admin Portal. This is a basic guide and will not cover setting up the base PBX or the setup of your extensions and subscriber numbers in detail. Further setup may require you to contact your PBX vendor support, directly, or utilize your PBX vendor forum/community pages.

Note: This guide assumes the FreePBX is already set up and installed, and that the user has administrator account access to both the PBX and the Voyant Admin Portal. 

Versions Tested

FreePBX 14.0.3.13

Known Limitations and Caveats

The following setup instructions are done assuming you are using the default chan_pjsip driver. 

Although the older chan_sip driver may work, it is not supported

Currently, FreePBX does not appear to handle DNS SRV lookups correctly, so you will either need to use IP endpoints, or use an outbound proxy with registration endpoints.  This will prevent intermittent call failures.

Voyant Admin Portal Configuration

Setting up the Voyant SIP Trunk

The trunk in the portal contains the domain that registration endpoints are registered to.  It is also the collection of endpoints that tell us how to route inbound calls to you.  

After logging into the Voyant portal, navigate to “SIP Trunking” → “Trunks”

Press the “Add New Trunk” button. On this screen you will configure the details necessary to create and enable the SIP Trunk for use.

Trunk Creation

Enter a friendly name for the SIP Trunk in the “Enter SIP Trunk Name” box.  This is just a label and is not used in authentication

Enter a SIP Domain Name.  This is used by both IP endpoints and Registration endpoints.  You will use this domain as the SIP Server address in your FreePBX configuration.  The SIP Domain Name will also create a custom SRV record, which will contain the IPs of the Voyant SBCs

Choose which rate plan you would like to use.  Most customers will use the Pay-as-you-go rate plan.  A Concurrent Call Sessions rate plan is also available, however, there is a monthly charge for each call session that is reserved.  You can reference the SIP Trunking Rate Plans help article for more information (https://help.voyant.com/en/articles/2508247-sip-trunking-rate-plans-ccs-or-paygo).

Once you are done with this section, click the Continue button.

Endpoint Creation

You will create your SIP Endpoint beneath the SIP Trunk section.

Select the “Create New Endpoint” button to bring up the Endpoint creation wizard.

From here select either the option for “Registration” or "IP Address"

Enter a friendly name for the Endpoint, as well as a username that will be used to register. By default inbound and outbound calling are enabled.  They can be changed at this time, or at a later date by editing the endpoint.

Once done, press the “Add Endpoint” button.

If you added a Registration endpoint, after adding the Endpoint, a screen will be displayed providing you with all the information you will require to setup the trunk in your PBX. This information is accessible after trunk creation by navigating to “SIP Trunking” → “Endpoints” and clicking on the endpoint name.

Once you are done with this section, click the Continue button.

You can now enable International Calling or Call Recording.  

Once you are done with this section, click the Create SIP Trunk button.

You will now be returned to the main SIP Trunking Screen. 

In order to test inbound calls to your PBX, you will need to purchase a number.  To purchase a number, click on "Numbers" → "+ Add Numbers" → "Buy Numbers"

You can search for numbers in various ways.  

Once you've filled in your search criteria, click the "Go" button.  If any numbers are available that match your criteria, they will be displayed.  Select the number that you want by clicking on the selection box on the left and then click "Buy Numbers"

On the next screen, select the Trunk that you previously created, then scroll down to the bottom and click on "Submit"

FreePBX Configuration

Connecting to the Voyant SIP Trunk

You will be creating:
A Trunk, which describes the connection between your FreePBX and the Voyant SBC
An extension, which is used to register a SIP phone, soft phone, etc. to your FreePBX
An inbound route, which tells your FreePBX how to deliver calls to the extension
An outbound route, which tells tells your FreePBX which trunk to use to deliver the call to the Voyant SBC

Note:  What FreePBX refers to as a Trunk in it's interface equates to what Voyant refers to as an endpoint in our portal.

Trunk Creation

After logging in as an Admin to your FreePBX GUI, navigate to “Connectivity” → “Trunks” and press the “Add Trunk” button.

Select the option “Add SIP (chan_pjsip) Trunk”

Once done, this will bring up the Trunk Creation Screen.

Under the General tab, enter a name for the trunk. For ease of management, It is recommended that this match the name of the SIP Endpoint you created in the Voyant Admin Portal. 

Once done, navigate to the “pjsip Settings" → "General” tab. Here you will need to enter your endpoint information.

If you're using an IP endpoint,

  • Select None for Authentication
  • SIP Server: Enter the Domain of your SIP Trunk
  • SIP Server Port: Set this to either 5060 or 6000

If you are using a Registration endpoint, fill in the information you created in the Voyant Admin Portal for your SIP Endpoint. 

  • Username: Enter the registration Username for your SIP Endpoint
  • Secret: Enter the Password for your SIP Endpoint
  • SIP Server: Enter the Domain of your SIP Trunk
  • SIP Server Port: Set this to either 5060 or 6000

Authentication should be Outbound and Registration should be Send.  Leave all the other options at their default values.

Once done, select the “PJSIP Settings” → “Advanced” Tab.

If you are using an IP endpoint, you can leave the Outbound Proxy field blank.  

If you are using a Registration endpoint, because of the DNS SRV issue mentioned above, you must populate an Outbound Proxy.  At this time, there are two proxy servers you can specify;  one is in Plymouth, MN and the other is in Dallas, Tx.  The syntax must be exactly as specified.

sip:ply-st.sip.global\;lr\;hide

or

sip:dal-st.sip.global\;lr\;hide

Leave all the other options at their default values except the following:

Support T.38 UDPTL: Set to “Yes”

T.38 UDPTL NAT: Set to “Yes”

Fax Detect: Set to “Yes”

Trust RPID/PAI: Set to “Yes”

Send RPID/PAI: Set to “Send P-Asserted-Identity header”

Once done, select the “PJSIP Settings” → “Codecs” Tab.

Ensure “ulaw” is selected.  You may also select alaw, opus and g729, if you would like.

Unless you have a need for Options pings, we recommend that you disable them.  To disable Options pings, go to "Connectivity" > "Trunks" > (your trunk) > "pjsip" tab > "Advanced" tab.  Set the frequency to zero as shown below.

Once done, “Submit” the configuration and press the “Apply Config” button. The Trunk should now be registered and enabled.

Now, you can create an extension.  If you would prefer to use an Auto Attendant, a Hunt Group, or anything else, you may do so, although that will not be discussed in the guide.

Extension Creation

Navigate to “Applications” → “Extensions” and click on "Add New PJSIP Extension"

Here you will choose an User Extension, a Display Name and a Secret. The User Extension will be used as the registration username and the Secret will be used as the password on the device (SIP phone, soft phone, etc.) that you choose to use for the extension.

Once done, “Submit” the configuration

Route Creation

The final step is to configure the routes.   

To create an inbound route, navigate to “Connectivity” → “Inbound Routes” and click on "Add Inbound Route"

Then set your options:

  • Description: add a description of the route.  
  • DID Number:  fill in the DID number that you chose in the Voyant Admin Portal
  • Set Destination: choose Extensions from the first drop down and then select the extension you created from the second drop down

We will deliver all calls to you in an e.164 format, so the DID number should be in the format +1NPANXXDNIS (i.e. +17195551212)

Once done, “Submit” the configuration

To create an outbound route, navigate to “Connectivity” → “Outbound Routes” and click on "Add Outbound Route"

Under the “Route Settings” tab, leave everything as the default except the following:

Route Name: Add a friendly name for the route you are creating.

Trunk Sequence for Matched Routes: Use the drop down button to select the SIP Trunk you just created.

Once done, select the “Dial Patterns” tab. Here you will set this route to send all calls in e.164 format as shown below.

Once done, “Submit” the configuration and press the “Apply Config” button. The route is ready to be used and your FreePBX is now configured to utilize the Voyant SIP Trunking service.

Did this answer your question?