This guide applies to installations on V20. If you are running on V18, follow this guide.

Configuring IP Phones

Introduction

3CX enables easy deskphone configuration with Supported IP Phones being tested and auto-configured.  Once provisioned, you can manage the phones from the 3CX Admin Console. To provision a phone, it needs to be told to connect to 3CX via a secure provisioning link. This secure provisioning link can be sent to the phone via a number of ways:

  • RPS - This is the easiest way - works for both cloud and on premise installs. The phone is pre-programmed from the factory to connect to the vendor's RPS server and request the provisioning URL. 3CX sends the vendor's RPS server the URL and when a new phone boots up it will obtain the URL from the RPS server.
  • PnP (on premise install) - The phone sends a broadcast message which is picked up by the 3CX server which then shows the phone in the Admin console. You can then assign the phone to an extension. It works for on premise installs as well as installs with at least one phone connected via SBC in the same location.
  • DHCP option 66 - For larger networks with manageable DHCP servers, you can enter the base URL in DHCP Option 66. A phone will query this field when it obtains its IP and if a URL is specified it will go there by adding its MAC address. This option makes sense for larger networks. However it requires that the phones are all from the same vendor because vendors use different URL formats. See this document about Option 66 for more information. 

Why Router Phones (SBC)?

If 3CX is hosted in the cloud, you need to have at least one so-called “router phone” or an SBC in the network on which the IP Phones are located.

A router phone is nothing other than a normal IP phone which runs the SBC onboard. 3CX has provided its SBC code to leading IP vendors (Fanvil, Snom, Yealink) who have ported the code to their more powerful phones. This router phone will proxy all the voice traffic to your hosted 3CX and:

  • Encrypt all voice traffic for security.
  • Reconnect calls in case of drop out.
  • Combine SIP (signaling) and RTP (media) VoIP Packets to overcome firewall/networking issues.
  • Save bandwidth by setting up internal calls between local phones directly.

A router phone can also function as a normal phone. The following models can be configured as router phones:

Alternatively, for larger networks, you can install a dedicated SBC. To install a 3CX SBC on Windows, Debian or a Raspberry Pi, read this document.

Step 1: Add The Phone to the Extension

From the admin console in your web client:

  1. Go to Users and select the user you want to add a phone for.
  2. Click on the IP Phone tab. Click Configure a phone to add a phone.
  3. Now select your phone model from the dropdown menu.
  4. Enter the phone’s MAC address without dashes or colons, and click Add phone.

Step 2: Router Phone, SBC or LAN?

Configuring IP Phone

  1. If 3CX is on the cloud, you must use a router phone or SBC:
  1. If it is not a router phone you need to specify one or an SBC.
  2. If the phone is a router phone you can configure it to connect directly if you prefer.
  1. If 3CX is on premise or self hosted, you have an additional option, you can select “Local LAN/VPN”.
  2. Click Add Phone to save the phone configuration for this extension.

Step 3 Connect the Phone

3CX will now create provisioning information for the phone and make these available on the provisioning URL. The phone must connect to this URL to retrieve its configuration information and authentication details. You have the following options:

  1. RPS - Connect the phone to the network within 14 days. If it is already connected, restart it. The phone will be configured automatically and restarted. 
  2. PNP - If 3CX is on premise or connected via SBC, you can connect the phone to the LAN and look for it in the PNP dialog (Admin Console > Phones > PNP Phones). Right click and assign it to the extension you configured above.

Assigning a phone to an existing user

  1. Alternatively you can login to the phone's webUI and enter the URL manually. You can also use DHCP option 66.

Configuring a DECT Phone

3CX also supports the use of DECT Phones. DECT phones are wireless phones which have a number of advantages over Wi-Fi phones:

  • DECT is very reliable and independent of your Wi-Fi  
  • No need for staff to use personal phones
  • Cheap, long lasting, easily replaced hardware
  • Long battery life
  • Scale up according to business needs

DECT IP Phones can support a number of base stations and between 5 to 100 handsets depending on vendor and model. You would need multiple base stations in case you have a big office. To configure a DECT Phone, you need to first configure a base station and then assign the handsets to each user.

  1. Go to “Admin > Voice and Chat”
  2. Click on +Add DECT/FXS
  3. Select your model and enter the base station’s MAC address.
  4. If your instance is in the cloud, select a router phone or SBC behind which it will work
  5. Assign the users and click on Add DECT Base Station. You will be able to assign more users after the set-up.
  6. A pop-up window will appear with the “Provisioning URL”. You need to copy this and enter it to the DECT base station web interface.
  7. Save and reboot base station

Follow these guides for specific instructions per DECT model:

Advanced Provisioning Options

Provisioning a phone with STUN

If you wish to use STUN, then you must create a custom template. You can then enable STUN in this template and select it when you add an IP Phone for a user.

  1. Go to Advanced > Templates > Phone Templates.
  2. From the dropdown, choose your phone model and copy the template.
  3. Now look for the entry  <AllowedNetworkConfig> and do the following;

   <AllowedNetworkConfig>

      <option value="LOCALLAN">0</option>

      <option value="REMOTESTUN">1</option>

      <option value="SBC">0</option>

    </AllowedNetworkConfig>

  1. Now go to Add the phone in the users tab
  2. Select the custom template you just created:
  1. If 3CX RPS OFF - You will get a dialog showing the provisioning link you have to enter into the phone, using either DHCP 66 or by logging in to the phone interface.
  2. If 3CX RPS ON - we create a 3CX RPS event and reboot the phone.

We do not recommend using STUN and you will not receive any support from 3CX, either in the forum or via a ticket.

Turning off RPS - using Local IP

By default the V20 setup provisions phones securely on the local LAN via RPS and publishes provisioning information to the 3CX RPS server. If you don’t want to use RPS, you can switch off RPS by going to Phones > Options

Configuring an IP Phone Manually

Some older phones cannot be provisioned automatically via 3CX. These phones must be configured manually using an auth ID, a password and the FQDN of the 3CX server (if the phone is on the local network) or the IP of the SBC or router phone (if the phone is in the cloud).

  1. Go to the Users” > IP Phone tab. Click Configure a phone to add a phone.
  2. Check the box I will configure the phone myself.
  3. If the phone is remote, choose the router phone behind which this phone will connect.
  4. Now a dialog will show the configuration details:
  1. Extension Number
  2. Authentication ID
  3. Password
  4. 3CX FQDN and Port.
  5. If the phone is remote, the SBC or Router phone’s IP address and Port will also be shown.
  1. Now login to the phone’s web interface and insert these details. We have documented these last steps for the most popular legacy phones:
  1. Avaya 9601, 9608G, 9611G, 9621G and 9641G
  2. Fanvil X1, X3, X5, C400, C600 and iW30
  3. Grandstream GXP IP phones: GXP 1160, 1165, 1400, 1405, 1450, 2100, 2110, 2120, 2124
  4. Polycom VVX Series (EOL): 300, 310, 400, 410, 500, 600
  5. Snom 300, 320, 360, 370, 820, 821, 870 and Meeting Point
  6. Yealink T19P, T20P, T21P, T22P, T26P, T28P, T32G, T38G

IP Phone Management

Updating Firmware via 3CX Admin Console

The 3CX Admin console allows you to check the firmware version and mass update Fanvil, Yealink and snom phones to the latest firmware tested by 3CX. This is quite often not the latest firmware provided by the vendor. The reason for this is that the firmware that 3CX downloads is tested and checked against 3CX and this takes time. But also a newer firmware might have issues fixed for other PBX systems and this might not be relevant for 3CX.

3CX console will check on a daily basis whether there are any new firmwares available and auto download them within 24 hours.

Updating the firmware

Firmware Update via Admin Console

To upgrade your IP phones to the latest 3CX-tested firmware:

  1. IP phones not running the latest firmware are highlighted in red on the Users page.
  2. You can select one phone at a time or select multiple phones.
  3. To upgrade the firmware, click the Upgrade button.
  4. Under Advanced click the Upgrade button and click OK on the popup confirmation box.
  5. The firmware will be uploaded to the phone.
  6. The phone will be rebooted at least once.

Accessing the IP phone UI

3CX configures your IP phones with a unique username and password, enabling you to easily access the password-protected web interface. To access this interface select the phone and click on Phone UI. For most phones, you are redirected to the phone UI page. For some older phones, you may need to enter the password for the phone again.

See also

Last Updated

This document was last updated on 27 February 2024

https://www.3cx.com/docs/manual/ip-phones/