Configuring Hoiio SIP provider to work with 3CX Phone System

0.00 avg. rating (0% score) - 0 votes

This article shows you how to configure Hoiio, a popular Singapore-based VoIP provider, to work with 3CX Phone System running on Windows. For demonstration purposes, screenshots from 3CX version 12 will be used, although most of the steps will be similar for 3CX version 11 and earlier. You would also need a soft-phone such as X-Lite or 3CX Phone in order to test the configuration.

Prerequisites

To proceed with the setup guide, you should have already purchased a SIP account from www.hoiio.com and be provided with the following information:

  1. SIP login username (e.g. sip6243674) – this is to authenticate your account with Hoiio
  2. SIP account password
  3. Incoming number (e.g. 65xxxxxxxx) – this is for you to receive incoming calls on your PBX

Adding Hoiio as a VoIP provider

With all the necessary information, login to your 3CX management console (typically at http://localhost:5000/management) and select VoIP providers on the left menu and click Add Provider:

3cx_add_provider

You will be presented with the Add VoIP Provider Wizard form:

3cx_add_provider2

Enter a name for the entry, select HK/SG as the country, Hoiio SIP as the provider and click Next. You will be presented with the VoIP Provider Details screen:

3cx_add_provider3

Check that the default settings are correct (siptrunk.hoiio.com for the server hostname and 5060 for the server port) and click Next:

3cx_add_provider4

Enter your SIP user name and the incoming number provided to you during registration (e.g. 65xxxxxxxx) as the external number. If you do not have an external number, just leave it blank.

Take note that you may not be able to enter the authentication password at this point depending on your 3CX version. Don’t worry about that, you can go back to set the password later. Select an appropriate value for the number of simultaneous calls and click Next:

3cx_add_provider5

This form allows you to redirect incoming calls on your external number to one of your extensions appropriately. The default setting is to redirect calls to the operator extension configured during 3CX installation. Clicking Next will bring you to the final step:

3cx_add_provider6

This screen configures which calls made on the PBX should be routed via Hoiio. The following settings are of note:

  • Route: allows you to configure which VoIP provider should be used to terminate calls matching the configured criteria. Select “BLOCK” to end the calls without terminating it on any provider.
  • Strip Digits: allows you to remove a prefix of a certain length from the called number before passing it to the provider. You may wish to use this setting to remove “+” or “00”, if needed.
  • Prepend: allows you to append a certain prefix to the called number before passing it to the provider. You may wish to use this setting to add “+” or “00” to an international number, if needed.

Refer to your 3CX documentation for further information. For now, the default settings provided by 3CX should suffice. Click Finish to complete the configuration.

Setting the SIP account password

If you did not set the SIP account password during the steps above or wish to the change the password, select Ports/Trunks Status on the left menu and click on the Hoiio account to edit the configuration:

3cx_voip_edit

Enter the password, click OK and wait a while for the change to be applied. You should now be ready to test your Hoiio SIP account with 3CX!

Configuring the soft-phone client

You will need at least 1 extension on the PBX to test the configuration. Select Extension Status on the left menu of 3CX management console:

3cx_ext_list

Click on the extension entry and take note of the extension username and password. Now start your softphone client and add a new SIP account with the following information:

  • SIP server: IP address of your 3CX SIP server (e.g. 192.168.1.100)
  • SIP username: the extension username as configured in the extension settings. Most likely, this is the extension number, e.g. 150
  • SIP password: the extension password

The following screen shows the extension settings as configured in 3CX Phone for Windows:

3cx_phone_account_settings

Making your first call

First you need to test if your soft phone has successfully registered with the 3CX server. Its status should say “On Hook”, “Registered”, “Online” or similar.

Now try to make a call to a landline or mobile number from your soft phone (e.g. 656xxxxxxx or 659xxxxxxx) and see if you can talk to the other party. If yes, try calling your SIP account external number from your fixed line or mobile phone. If everything is fine, you should be able to answer the incoming call on your soft phone.

Congrats, you have successfully configured 3CX to work with your Hoiio SIP account!

Troubleshooting

If for some reasons your test call does not work, this section lists some common issues and how to fix them.

The soft phone status indicates Not Connected, Unregistered or Off-Hook
This means the soft phone was not able to login using the SIP account you’ve configured. Check the server IP address and the login credentials in the softphone account settings. You can also check in the Extension Status to see if the extension is registered. There is also some useful information in the Activity Log menu of 3CX management console.

Internal calls (e.g. calls to other extensions) are fine but calls to PSN numbers failed.
Most likely, there is an error in your 3CX configuration that causes calls not to be terminated on the configured Hoiio SIP account. Click the Outgoing Rules entry from the 3CX menu and check that there is at least one rule that terminates calls on the Hoiio account.

Outgoing calls seem to be made on Hoiio, but are either disconnected immediately or result in “invalid number” announcement
This is usually due to automatic adding of prefix to the number as a result of incorrect configuration. For example, 3CX may append 00 in front of a number before sending them, causing Hoiio to incorrectly interpret the destination number. To fix this, look at the 3CX Activity Log to find out the raw number passed to the Hoiio SIP server and try the following:

  • Check the Outbound Rules menu and make sure that the “strip digits” and “prepend” settings are configured correctly
  • Check the Settings > Advanced Settings menu and make sure that the correct country code is selected. Enter “+” for the international dial code and a correct value for the area code, or leave it blank.
  • Also check the Ports/Trunks Status to make sure that the configured Hoiio SIP account has been successfully registered

The 3CX softphone and other SIP clients may also have an option to automatically convert “+” to “00”. You should disable this, otherwise the wrong number may be called.

Incoming calls on the external number are disconnected immediately or forwarded to voice-mail despite the destination extension being available.
Check the following:

  • Ports/Trunks Status: make sure that the Hoiio number is correctly entered as the external number, and incoming calls routing are configured correctly, for both office hours and out of office hours settings
  • Inbound Rules: make sure that there are no conflicting inbound rules blocking incoming calls on the Hoiio SIP account

Additionally, some soft phones may have a do-not-disturb (DND) mode which will block incoming calls if enabled – check if this is the case. 3CX also has a do-not-disturb mode for each extension that can be enabled by dialing *61 and disabled by dialing *60 for the extension phone. Refer to this post on the 3CX blog for other useful 3CX dial code.

Calls are made successfully but with no audio or only one-way audio
This is usually due to ports used for audio transmission being blocked by firewalls. SIP requires UDP port 5060 to be opened for data communication and UDP port 3478 for STUN server usage. Additionally a range of UDP ports are used for audio transmission, which need to be opened on the firewall too.

To find out which ports need to be open, check Settings > Network:

3cx_firewall

Dial *777 (Echo Test) on the soft phone client and try to speak into the microphone. If configured properly, you should be able to hear yourself speaking, which indicates that there should be no problem with audio transmission when making calls.

0.00 avg. rating (0% score) - 0 votes
ToughDev

ToughDev

A tough developer who likes to work on just about anything, from software development to electronics, and share his knowledge with the rest of the world.

Leave a Reply