Provisioning New Phones

Thanks to sipXecs's advanced configuration interface, provisioning new Polycom phones is relatively straightforward. However, you must have your network configured properly before you start

Network Configuration Requirements

In order for the phone to recognize the sipXecs server as it's boot server at startup, your DHCP server needs to provide additional necessary information to the phone as it obtains an IP address. By default the phone is configured to look for the DHCP option Boot Server Host Name to obtain the IP address of host name of the (T)FTP server that is configured to provide the phone configuration information.

FTP writeback configuration

During installation of the sipXecs server both an FTP and TFTP service are automatically configured and enabled. Polycom phones by default try to contact the sipXecs FTP server and will attempt to write user preferences each time a user makes a preference change such as a ringtone or background image, or to write log files. By default sipXecs 4.2 an up is configured to allow Polycom phones to write these files via FTP. If for some reason your Polycom phones are unable to write these files then the sipXecs FTP service is not configured to allow these writebacks then user preferences will be lost every time a firmware/bootrom upgrade is performed.

To enable FTP writeback for Polycom phones, run the following commands on your sipXecs server:

setfacl -m user:PlcmSpIp:rwx /var/sipxdata/configserver/phone/profile/tftproot/
setfacl -d -m user:PlcmSpIp:rw- /var/sipxdata/configserver/phone/profile/tftproot/

There are security implications to allowing the PlcmSpIp user write access to the tftproot folder. Use with caution.

If you enable FTP writeback for Polycom phones sipXecs will not be aware of files that the Polycom phones create. If you ever remove a Polycom phone from sipXecs then you will have to manually remove the extra files the Polycom phones create. These files' names always start with the MAC address of the phone.

When to use FTP and when to use TFTP

The TFTP protocol does not traverse NAT well, so in instances wheere you have aremote users, branches or network segments that do not route over private links, vpns or bridged Ethernet segments, thos phones should be using FTP.

Since the Polycom handset is a passive FTP client, the FTP address must be reachable from that network segment and the FTP server address should be used in the phone menu instead of the TFTP option. Remember to make sure your firewall allows FTP. The default FTP settings for sipx also include PASV ports of 50000-500050 (tcp) for transfer, and port 21 for the control port, so adjust your firewall accordingly.

Polycom BootROM/Firmware

The latest supported Polycom firmware for sipXecs 4.2.x are:

SLA will not work with 3.2.2

The latest bootrom supported by all current Polycom models is 4.3.0.

Installing BootROM/Firmware

Once you have downloaded the bootrom and firmware you will need to upload it to the sipXecs server and activate it. To upload the bootrom and firmware, follow these steps:

Once the phone is able to find a boot server at startup, all remaining configuration is done automatically and remotely using the sipXecs configuration server and Web UI. The tasks required to complete the installation are as follows:

  1. Create at least one user and group who will be using the phone.
  2. Create a phone configuration group to speed up future provisioning.
  3. Connect phone to network and allow sipXecs auto provisioning to generate temporary ID
  4. Assign one or several users to the phone (create lines).
  5. Generate the profile for the phone and reboot the phone.

If the phone is unable to find its boot server, it displays a clearly visible error message at the beginning of the boot sequence. If this message does not come up the phone successfully communicated with its boot server.

Create User Group

To create a user group:

Create User

To create a user:

Create Phone Group

Phone Groups help to streamline provisioning of phones so that all provisioning information is not required to be input every time a phone is configured.
To create a phone group:

Polycom Phone Group Configuration Settings

Since most of the default Polycom settings in sipXecs are sufficient in most cases, it is not necessary to review every single configuration parameter. There are a few settings that may need to be changed to accommodate various installations.

These are only recommendations. You may set any of these values to whatever you need.

Dial Plan Configuration

One of the more daunting aspects of configuring Polycom phones is creating a dial plan that will accommodate all of the numbers that you anticipate your users will dial. Section 2.1.5 of RFC 3435 explains how to develop a standard digit map for your dialplan.

Don't forget to set a Time out value for your digit map in the phone group configuration. A good value to try is 2

The default digit map that sipXecs suggests is:


Which is interpreted as follows:

Some suggested digit map entries to accommodate other sipXecs services:

If you need to set up your digit map to handle 4 digit dialing simply modify the [8]xxx entry to [8]xxxx and the [2-7]xx entry to [2-7]xxx. Essentially you are only adding one x on the end of the entry.

Connect phone to network and allow sipXecs auto provisioning to generate temporary ID

To add a phone:

Add Line(s) To Phone

Now that you have auto-provisioned a phone you need to add at least one line so the phone can register to the sipXecs server.

Send Profiles To Phone

The phone is now configured but since profiles have not been sent to the phone, the configuration files have not been generated. Sending profiles to the phone involves:

You should now be ready to plug your phone into the network and begin the provisioning process

First Time Phone Boot Process

The following are images of the first time boot process for a Polycom IP 550

1. Phone is plugged in:

4. Format file system for BootROM

7. Saving New Firmware

10. Running new firmware:

2. Phone is waiting for DHCP:

5. Reboot then network init:

8. Checking new firmware:

11. Configuration processing:

3. New BootROM found, updating:

6. Downloading new firmware:

9. Loading new firmware:

12. All done!:

Polycom SoundPointIP Configuration File Notes


The following is a collection of notes on a number of Polycom SoundPointIP Configuration File attributes.

sip - tcpIpApp.sntp.daylightSavings

The parameters that control Daylight Savings Time (DST). (These settings are also found in the Web GUI under General -> Time, but we recommend that you avoid making any changes using the Web GUI.)
Attribute Interpretation
enable 1 (default): Enable DST using these rules.
0: Disable DST.
start/stop time The 24 hour clock time of day to start/stop DST. The defaults is 2 (2am.)
start/stop month The month of the year to start/stop DST, according to the following mapping (which is off-by-one from Java):
1 - January
2 - February
... ...
12 - December
The start default is 3 (March), and the stop default is 11 (November).
fixedDayEnable 0 (default): Start and stop DST based on the day of the week. e.g. The 1st, 2nd, 3rd, 4th, or last Sunday of November.
1: Start and stop DST on a fixed day of the month. e.g. October 26th.
When 'fixedDayEnable' is 0...
start/stop dayOfWeek The day of the week to start/stop DST, according to Abrahamic mapping (which is the same as Java):
1 - Sunday
2 - Monday
... ...
7 - Saturday
The default is 1 (Sunday.)
start/stop dayOfWeek.lastInMonth 0 (default): Start/stop DST on the nth occurrence of the 'dayOfWeek' in the month, where n is specified by 'start/stop date'.
1: Start/stop DST on the last occurrence of 'dayOfWeek' in the month, and ignore 'date'.
start/stop date The nth occurrence of the 'dayOfWeek' in the month start/stop DST, according to the following mapping:
1 - 1st occurrence
8 - 2nd occurrence
15 - 3rd occurrence
22 - 4th occurrence
Both defaults are 8 (2nd occurrence ), e.g. The 2nd Sunday. This attribute is ignored if 'dayOfWeek.lastInMonth' is 1.
When 'fixedDayEnable' is 1...
start/stop date The fixed day of the month to start/stop DST. e.g. October 26th.
start/stop dayOfWeek not applicable
start/stop dayOfWeek.lastInMonth not applicable

The default values in Polycom's default sip.cfg specify DST to be:

device.dns.serverAddress and device.dns.altSrvAddress

Like all "device" parameters, these have complimentary settings. A value of "1" means to use the corresponding setting, a value of "0" means to ignore it.

The parameters themselves (when not ignored) are written to the "DNS Server" and "DNS Alt. Server" settings found under the phone's Network Configuration menu.

These settings are not used when DHCP on the phone is enabled. i.e. The values returned from the DHCP server take precedence.

When DHCP is disabled, then the phone will use these settings.

When the Polycom reboots if first initializes its network connection, and then downloads its configuration files. If the phone is not using DHCP and finds that the device.dns.___ settings result in changes, then the phone will reboot again in order to put the changes into effect.

The phone will reboot again if the loaded configuration file contains modified settings. and

Like all "device" parameters, these have complimentary settings. A value of "1" means to use the corresponding setting, a value of "0" means to ignore it.

The parameters themselves (when not ignored) are written to "CDP Compatibility" and "VLAN ID" settings in the "Ethernet Menu" found under the phone's Network Configuration menu.

TBD: Does the Polycom reboot again if the loaded configuration file contains modified settings?

TBD: If "CDP Compatibility" is enabled and a VLAN ID value is determined, presumably it overrides the "VLAN ID" setting?