Polycom
From Pbxnsip Wiki
Contents |
Supported Devices and Versions
The PBX supports the Polycom SoundPoint IP phone series including sidecar. We have tested interoperability using version Polycom version 2.2.2.0084 and bootrom version 4.0.0.0423. Please contact Polycom or the dealer where you bought the phone for getting these images or check http://www.polycom.com/support/voice/soundpoint_ip/index.html for downloadable software. Other versions probably work as well, but especially the BLF feature seems to require that version for proper operation.
pbxnsip IP-PBX also support Polycom conference phone PolycomSoundStationIP-SPIP_7000-UA
Supported Features
The PBX supports the following features of the phone with the built-in plug and play provisioning process:
- It put the correct time zone information of the extension on the phone.
- It loads the address book of the user into the phone. However, it does not reflect changes made locally on the phone in the PBX address book.
- It provisions the number of lines for the extension on the phone. The display of the phone will show the number of lines on the display. This setting can be found in the extension/registration tab as "lines" (must be in domain administrator mode).
- It loads the list of watched accounts into the phone. For this purpose it uses the BLF feature of the phone. You can watch other extensions as well as CO-lines, waiting queues and other accounts. This setting can be found in the tab "List of extensions to watch" (must be in user mode).
In order to prepare provisioning on the PBX, you need to put either the MAC address into the Registration tab. Alternatively, you can use the wildcard characters ('*' for permanent assignment and '?' for temporarily assignment).
The PBX will provide all necessary changed from the on-the-fly configuration server. If you enable tftp writing (please consider the security consequences!), then you may also may make permanent changes on the device which survives reboot cycles.
Features like intercom and ring tones are supported by the Polycom phones; however those features require that you are using the automatic provisioning mechanisms from the PBX.
Known Limitations
The following limitations are known:
- The phones cannot display the caller-ID after an attended transfer.
- Multicast paging is not supported.
- When using BLF, the phone only shows connected state. When the monitored resource is ringing, there is no indication. It is also a problem to provide call-information in the first dialog state BLF MIME document right after startup, therefore this document does not contain call-information, even if one of the resources is on the phone. The light will show the correct state once the call state changes. Note: This limitation was removed in Polycom firmware version 3.1.1.
PnP Provisioning
For general settings of extensions that do not apply for a specific phone type (e.g. BLF assignments), see Prepare an Extension for Plug and Play.
Providing the firmware
In order to upgrade the phones to the right firmware, you need to put the firmware and the bootloader into the tftp directory of the PBX and make them readable for the PBX (if you don't have a tftp directory under the working directory of the PBX, then just create it).
Note: The bootloader and firmware comes in 2 separate zip files from Polycom. A typical bootloader file name is BootRom_3_2_3RevB_release_sig.zip. This file contains bootrom.ld file (~4MB in size). The firmware file name looks like spip_ssip_3_1_1_release_sig.zip. This contains many files (~100MB in size). You need to extract both these zip files into 'tftp' directory.
A typical directory looks like this:
-r--r--r-- 1 root root 715 Mai 29 2007 000000000000-directory~.xml -r--r--r-- 1 root root 640 Jun 18 2007 000000000000.cfg -rw-rw-rw- 1 root root 506769 Aug 9 09:14 2201-06642-001.bootrom.ld -rw-rw-rw- 1 root root 2047381 Nov 20 14:47 2201-06642-001.sip.ld -rw-rw-rw- 1 root root 387540 Aug 9 09:14 2345-11000-001.bootrom.ld -rw-rw-rw- 1 root root 384624 Aug 9 09:14 2345-11300-001.bootrom.ld -rw-rw-rw- 1 root root 453724 Aug 9 09:14 2345-11300-010.bootrom.ld -rw-rw-rw- 1 root root 1806725 Nov 20 14:47 2345-11300-010.sip.ld -rw-rw-rw- 1 root root 598136 Aug 9 09:14 2345-11402-001.bootrom.ld -rw-rw-rw- 1 root root 1954872 Nov 20 14:47 2345-11402-001.sip.ld -rw-rw-rw- 1 root root 387540 Aug 9 09:14 2345-11500-001.bootrom.ld -rw-rw-rw- 1 root root 387540 Aug 9 09:14 2345-11500-010.bootrom.ld -rw-rw-rw- 1 root root 385800 Aug 9 09:14 2345-11500-020.bootrom.ld -rw-rw-rw- 1 root root 458008 Aug 9 09:14 2345-11500-030.bootrom.ld -rw-rw-rw- 1 root root 1941892 Nov 20 14:47 2345-11500-030.sip.ld -rw-rw-rw- 1 root root 458008 Aug 9 09:14 2345-11500-040.bootrom.ld -rw-rw-rw- 1 root root 1941892 Nov 20 14:47 2345-11500-040.sip.ld -rw-rw-rw- 1 root root 458008 Aug 9 09:14 2345-11600-001.bootrom.ld -rw-rw-rw- 1 root root 2402865 Nov 20 14:47 2345-11600-001.sip.ld -rw-rw-rw- 1 root root 458008 Aug 9 09:14 2345-11605-001.bootrom.ld -rw-rw-rw- 1 root root 2402865 Nov 20 14:47 2345-11605-001.sip.ld -rw-rw-rw- 1 root root 600360 Aug 9 09:14 2345-12200-001.bootrom.ld -rw-rw-rw- 1 root root 1914301 Nov 20 14:47 2345-12200-001.sip.ld -rw-rw-rw- 1 root root 600360 Aug 9 09:14 2345-12200-002.bootrom.ld -rw-rw-rw- 1 root root 1914301 Nov 20 14:47 2345-12200-002.sip.ld -rw-rw-rw- 1 root root 1914301 Nov 20 14:47 2345-12200-004.sip.ld -rw-rw-rw- 1 root root 1914301 Nov 20 14:47 2345-12200-005.sip.ld -rw-rw-rw- 1 root root 609676 Aug 9 09:14 2345-12500-001.bootrom.ld -rw-rw-rw- 1 root root 2446397 Nov 20 14:47 2345-12500-001.sip.ld -rw-rw-rw- 1 root root 609676 Aug 9 09:14 2345-12560-001.bootrom.ld -rw-rw-rw- 1 root root 2446397 Nov 20 14:47 2345-12560-001.sip.ld -rw-rw-rw- 1 root root 609676 Aug 9 09:14 2345-12600-001.bootrom.ld -rw-rw-rw- 1 root root 2446397 Nov 20 14:47 2345-12600-001.sip.ld drwxrwxrwx 2 root root 0 Dez 12 09:59 SoundPointIPLocalization -r--r--r-- 1 root root 95926 Jul 29 2003 SoundPointIPWelcome.wav -rw-rw-rw- 1 root root 4384640 Aug 15 17:31 bootrom.ld -r--r--r-- 1 root root 11371 Mai 29 2007 phone1.cfg -rw-rw-rw- 1 root root 3091 Dez 2 20:28 readme.txt -r--r--r-- 1 root root 152205 Okt 29 11:09 sip.cfg -rw-rw-rw- 1 root root 14514445 Nov 20 14:20 sip.ld -r--r--r-- 1 root root 14 Nov 20 10:37 sip.ver
For successful upgrade, we recommend to erase the configuration of the phones. There are two configuration settings:
- The local configuration. You can do this by going through the following sequence:
- Press the menu button
- Select Settings (3)
- Select Advanced (2)
- Enter the password (by default, 456)
- Select Admin Settings (1)
- Select Reset to Default (4)
- Select Reset Local Config (1)
- The device configuration (same steps as above, but select "Reset Device Setting").
You need to reboot several times in order to clean the settings of the device.
Preparing Provisioning
Before the phone is able to fetch the settings, you need to tell the phone from where to fetch the provisioning data and how to authenticate. The "where" can be defined by DHCP option 66 or you can manually specify that in the server menu (see below).
For secure provisioning, you need to put the extension's password or the domain provisioning password into the phone. This must be done on the phone; obviously it cannot be automatically provisioned.
- Press the menu button.
- Select Settings (3)
- Select Advanced (2)
- Enter the password (by default 456)
- Select Admin Settings (1)
- Select Network Configuration (1)
- Select the Server Menu
- Edit the Server User to the domain provisioning account or the extension's name. If you choose the extension name, you should include the domain name (like 43@domain1.com)
- Edit the Server Password
- You may stay in the server menu if you need to make further changes below before you reboot the phone
If security is not important, you can also use the other modes described in the "Allow TFTP password" setting (in the Port Setup page. For example, if you set it to "Always", so that the phones always get their password after a reboot.
In order to do this, you need to perform the following steps on the phone:
- Press the menu button.
- Select Settings (3)
- Select Advanced (2)
- Enter the password (by default 456)
- Select Admin Settings (1)
- Select Network Configuration (1)
- Select the Server Menu
- Set the Server Type to "HTTP"
- Set the Server Address to the IP address of the PBX
- Set the Server User to the extension name (e.g. "40" in a single domain case or "40@domain.com" in the case of multiple domains on the server).
- Set the Server Password to the http password of the extension.
It is important that you change the Server Type from FTP (which is the default) to either HTTP or TFTP, because the PBX does not support FTP.
Switching the transport layer
If you have devices that use sidecars you will probably run into problems with the UDP transport layer. The Polycom phones do not support UDP fragmentation (RFC 791), and messages that contain updates of the buddy list easily break the UDP fragmentation size. Therefore in these kind of situations you might have to move to TCP transport layer (or even TLS transport layer).
The way how to do this is to change the following PnP parameters (in the admin settings under PnP):
- polycom_phone.xml/transport: Put "TCPpreferred"
- polycom_phone.xml/layer: Put "tcp"
- polycom_sip.xml/transport: Put "TCPpreferred"
- polycom_sip.xml/layer: Put "tcp"
After a restart, the phone should use TCP transport layer. The PBX by default has a TCP port, you you don't need to change anything in the Port section of the PBX.
Please note that when the phones are using a connection oriented transport layer they will disconnect after 60 seconds if there was no traffic. In order to keep the connection alive, you can either set the maximum registration duration to something like 55 seconds or you provision the setting "voIpProt.SIP.pingInterval" with a value of 55 seconds. In version 3 of the PBX (starting with 3.0.0.2954) the PBX automatically provisions this setting, so you can just use automatic provisioning.
Call Redirection
A common problem is the call redirection from the phone. If you phone shows a little "bounce" animation on the screen, the user has turned call redirection on on the phone. The phone will send 302 responses to INVITE messages. This is okay; however, the user will not be able to get any calls on this device. It is better to ask the user to use the feature codes in order to program call redirection, so that the PBX is aware about the user's desire to redirect the calls.
TLS
The Polycoms support TLS you must load a valid certificate into the PBX. Polycom uses the OpenSSL library and it accepts only valid certificates. You can also manually specify the root certificate, This should be done through the keyboard interface of the phone or manually editing the config file but it can't be done via PnP.
The parameter "layer" must be lower case, the other parameter "TLS" upper case:
- polycom_phone.xml/transport: TLS
- polycom_phone.xml/layer: tls
- polycom_sip.xml/transport: TLS
- polycom_sip.xml/layer: tls
