Provisioning Polycom VVX500 IP Phone for Lync2010
5 Sep 2012
The VVX500 is a high performance business media phone with high definition audio, video playback (upcoming in Q4 2012), and native Lync integration and Exchange calendar integration. With the latest release of the phone's firmware version 4.1.0, the VVX500 was officially qualified for Lync last month and can be fonud listed at http://technet.microsoft.com/en-us/lync/gg278172. The VVX phone delivers best-in-class desktop productivity and unified communications for Microsoft UC Environments. The summay of features available for Lync are shown in the table below:
• Lync Registration
• Contact list and presence • Contact and Group Management • Hold, Mute, Transfer • Voicemail Message Waiting • Full Duplex Echo Cancel • SRTP encrypted media • NTLMv2 authentication • Merge active calls • Multi-Language Support |
• Active Directory support
• Call logs • Call Detail Records (CDR) • Call Admission Control (CAC) • Codecs: G.711, G.722, G.722.1 • Exchange calendaring • Instant Messaging (SpectraLink) • NTLM Authentication • TLS-DSK Authentication • Secure Signaling (TLS) • Media Encryption (SRTP) |
• Monitoring Reports (QoE)
• In-Band Provisioning • Root Certificate Download • Federation & Remote Worker • Response Groups • ICE/STUN/TURN • Team-Call • Branch Office Survivability • Dial Plan Normalization • Location Services • LLDP-MED, E911 & VLAN |
Please note the firmware version 4.1.0 is currently only available through your local Polycom sales representative. The remainder of this article provides guidance on how configure the VVX500 for Lync integration. It assumes you already have a working Lync2010 server environment and the Lync user account used to login into the phone is already enabled for Enterprise Voice with the necessary dial-plans and voice policies. If this is not yet done, consult the Microsoft documentation and complete the setup before proceeding.
Step 1: Configuring Network Settings
A VVX500 must be properly configured for network settings before it can be provisioned for integration into Lync. A factory default VVX500 is configured to take network settings from a DHCP server but these settings can also be set manually from the phone's touch-screen interface. In this article, we will use DHCP. The DHCP server should provide the following information for the phone to work properly:
Option 002 Time Offset : Hex value providing the GMT offset in minutes. In my GMT+8 region, the value is 0x7080
Option 003 Router: IP adress of the default gateway for the VLAN segment
Option 006 DNS Servers: IP address of DNS server that can resolve the DNS domain for the Lync environment
Option 042 NTP Servers: IP address of the NTP server that the phone can synchronize time with
Option 066 Boot Server Host Name: FTP or HTTP URL of the server that can provide phone provisioning settings (more on this later)
Options043: These are shown as Option001-Option005 of type "MSUCClient" and are automatically generated when you run the DHCPUtil.exe script provided by Lync. It generates the necessary DHCP043 options required for TLS-DSK authentication and certificate download. For more information on how to run this utility, refer to http://technet.microsoft.com/en-us/library/gg412988.aspx
Option 120 UCSipServer: This is required for the phone to locate the Lync Front End servers for SIP Registration and is also automatically generated by DHCPUtil.exe.
As an alternative to setting up DHCP options on a DHCP server, you can use the bullt-in DHCP on the Lync server by running the cmdlet set-CsRegistrarConfiguration -EnableDHCPServer $true. This will allow the Lync server to provide options043 and 120 to the client but note that it will not assign DHCP addresses. You still need the DHCP server to assign IP addresses to the phones.
Power on the phone by connecting it to your PoE switch and let the phone obtain the network settings from your DHCP server. When the phone boots up you should see the Home Screen. Hit the Home button on the right of the display to toggle between the Home Screen and the Menu Screen, shown on the left and right below respectively: :
Option 003 Router: IP adress of the default gateway for the VLAN segment
Option 006 DNS Servers: IP address of DNS server that can resolve the DNS domain for the Lync environment
Option 042 NTP Servers: IP address of the NTP server that the phone can synchronize time with
Option 066 Boot Server Host Name: FTP or HTTP URL of the server that can provide phone provisioning settings (more on this later)
Options043: These are shown as Option001-Option005 of type "MSUCClient" and are automatically generated when you run the DHCPUtil.exe script provided by Lync. It generates the necessary DHCP043 options required for TLS-DSK authentication and certificate download. For more information on how to run this utility, refer to http://technet.microsoft.com/en-us/library/gg412988.aspx
Option 120 UCSipServer: This is required for the phone to locate the Lync Front End servers for SIP Registration and is also automatically generated by DHCPUtil.exe.
As an alternative to setting up DHCP options on a DHCP server, you can use the bullt-in DHCP on the Lync server by running the cmdlet set-CsRegistrarConfiguration -EnableDHCPServer $true. This will allow the Lync server to provide options043 and 120 to the client but note that it will not assign DHCP addresses. You still need the DHCP server to assign IP addresses to the phones.
Power on the phone by connecting it to your PoE switch and let the phone obtain the network settings from your DHCP server. When the phone boots up you should see the Home Screen. Hit the Home button on the right of the display to toggle between the Home Screen and the Menu Screen, shown on the left and right below respectively: :
To see that the DHCP server has provided the correct network settings to the VVX500, go the Menu Screen and tap Settings->Status->Network->TCP/IP Parameters.... You should see the correct network settings similar to the example shown below:
Step 2: Prepare and Configure XML files for Phone Provisioning
In order to provision the settings on the phone, you'll need to edit a couple of XML files and place them on the provisioning server specified by Option066 in Step 1. The server can be a HTTP server or FTP server. For simplicity, we will use FTP server in this article but note that for large deployments of phones you should use HTTP instead. To setup the FTP service on a Windows2008R2 server, follow the steps provided in this Youtube video:
http://www.youtube.com/watch?v=QsGPqkobCs8
After setting up the FTP server, obtain the UCS4.1 firmware from your Polycom representative and unpack them to your FTP server's root directory. For example, in my server the files are placed in C:\inetpub\ftproot\
A factory default VVX500 is preconfigured to use a user account/password of PlcmSpIp/PlcmSpIp (case sensitive) to login to the FTP server. You can create a new AD user with this username and password with permissions to read/write to the FTP server, or you can create a user with different username and password as long as you specify it in the phone settings. When the phone boots up, it automatically tries to download the XML config files and/or new firmware from the FTP server. Note that since you have unpacked the firmware in the ftp directory, the VVX500 will also automatically update its firmware to UCS4.1 if it's running an older version.
The XML files you need to edit vary depending on your requirements and there are many XML files found in the /config subdirectory where you unpacked the firmware. At a minimum to get the VVX500 working with Lync, you need to edit the XML file lync.cfg attached in this article. You can also find this file in the /config subdirectory. To edit the file, you can use any XML editor but I use the free XML Notepad which can be downloaded here: http://www.microsoft.com/en-us/download/details.aspx?id=7973
On the directory where you unpacked the firmware, locate and make a copy of 000000000000.cfg and rename the newly copied file to <MAC Addr of Phone>.cfg. This is because when the phone boots up, it will look for the master config file which is named <MAC Addr of Phone>.cfg. This master config file will specify what other XML config files the phone should download. The MAC address of the phone can be found in a label at the back of the device. For example, the master config file for my VVX500 is 0004f2a8b570.cfg and when opend with XML Notepad, will contain the elements shown below:
http://www.youtube.com/watch?v=QsGPqkobCs8
After setting up the FTP server, obtain the UCS4.1 firmware from your Polycom representative and unpack them to your FTP server's root directory. For example, in my server the files are placed in C:\inetpub\ftproot\
A factory default VVX500 is preconfigured to use a user account/password of PlcmSpIp/PlcmSpIp (case sensitive) to login to the FTP server. You can create a new AD user with this username and password with permissions to read/write to the FTP server, or you can create a user with different username and password as long as you specify it in the phone settings. When the phone boots up, it automatically tries to download the XML config files and/or new firmware from the FTP server. Note that since you have unpacked the firmware in the ftp directory, the VVX500 will also automatically update its firmware to UCS4.1 if it's running an older version.
The XML files you need to edit vary depending on your requirements and there are many XML files found in the /config subdirectory where you unpacked the firmware. At a minimum to get the VVX500 working with Lync, you need to edit the XML file lync.cfg attached in this article. You can also find this file in the /config subdirectory. To edit the file, you can use any XML editor but I use the free XML Notepad which can be downloaded here: http://www.microsoft.com/en-us/download/details.aspx?id=7973
On the directory where you unpacked the firmware, locate and make a copy of 000000000000.cfg and rename the newly copied file to <MAC Addr of Phone>.cfg. This is because when the phone boots up, it will look for the master config file which is named <MAC Addr of Phone>.cfg. This master config file will specify what other XML config files the phone should download. The MAC address of the phone can be found in a label at the back of the device. For example, the master config file for my VVX500 is 0004f2a8b570.cfg and when opend with XML Notepad, will contain the elements shown below:
Note that the APPLICATION/CONFIG_FILES element contains just one "lync.cfg" file. You can specify multiple config files using commars but as mentioned, we will just configure this one file in order to get the phone woking with Lync.
Next we will edit the lync.cfg file by opening it in XML notepad. The minimum reqiurements elements in this file are shown below:
Next we will edit the lync.cfg file by opening it in XML notepad. The minimum reqiurements elements in this file are shown below:
Below is a brief explanation of the 3 key elements to be configured:
reg.1.dialPlanName - This should be left blank so that the dialplan can be provisioned via Lync in-band settings
reg.1.lync.autoProvisionCertLocation - Set to 6 for the phone to download the certificate using DHCP option043
reg.1.serverAutoDiscovery - Set to 1 for the phone to discover Lync Registrar using DNS SRV records
Once done, save the file into the ftp root directory and proceed to the next step.
reg.1.dialPlanName - This should be left blank so that the dialplan can be provisioned via Lync in-band settings
reg.1.lync.autoProvisionCertLocation - Set to 6 for the phone to download the certificate using DHCP option043
reg.1.serverAutoDiscovery - Set to 1 for the phone to discover Lync Registrar using DNS SRV records
Once done, save the file into the ftp root directory and proceed to the next step.
Step 3: Set the Base Profile for Lync
Power on the phone by connecting it to your PoE switch. To use the phone with Lync, we first need to set the Base Profile of the phone. The fastest way to do this is via the the multi-key combo shortcut method:
1. Press the phone’s Home/Menu key.
2. From the idle screen, press and hold the following key combination on the phone keypad for about 3 seconds. These multi-key combo (MKC) keys vary by phone and for the VVX500 this will be 1, 4, 9. Pressing and holding the MKC keys causes the Base Profile Password menu to display.
3. In the Base Profile Password screen, enter the password (default 456) and press Enter.
4. In the Base Profile menu, select Lync.
The phone should then reboot. If the phone does not reboot, you can manually restart by powering off/on the phone. You can also manually reboot the phone: Press the Menu/Home key > Settings > Advanced, enter the password (default 456), press Enter, and choose Reboot Phone.
1. Press the phone’s Home/Menu key.
2. From the idle screen, press and hold the following key combination on the phone keypad for about 3 seconds. These multi-key combo (MKC) keys vary by phone and for the VVX500 this will be 1, 4, 9. Pressing and holding the MKC keys causes the Base Profile Password menu to display.
3. In the Base Profile Password screen, enter the password (default 456) and press Enter.
4. In the Base Profile menu, select Lync.
The phone should then reboot. If the phone does not reboot, you can manually restart by powering off/on the phone. You can also manually reboot the phone: Press the Menu/Home key > Settings > Advanced, enter the password (default 456), press Enter, and choose Reboot Phone.
Step 4: Sign in to Lync on the phone
When the phone completes the reboot cycle in Step 3, you are now ready to sign in to Lync. Go to the Menu Screen and tap Settings->Basic->Login Credentials.... The Lync Server Sign In screen displays. Enter the necessary information as follows:
Sign-in Address: the SIP URI of the Lync user
Domain: AD Domain in FQDN format
User: AD user logon name
Password: AD Password
Sign-in Address: the SIP URI of the Lync user
Domain: AD Domain in FQDN format
User: AD user logon name
Password: AD Password
Once you tap the Submit button, the phone will sign-in into Lync and you should see your Lync contacts populated on the Home screen as shown below as well as the screen capture of the phone in a call:
Certificate Issues
If the phone is not able to sign-in to Lync, it may be because it cannot download the root CA certificate via DHCP Option043 mentioned in step 1. This usually happens because the phone is not in the same VLAN as either the DHCP server or the Lync Registrar. When the phone boots up it sends a DHCP INFORM packet to the DHCP server and also broadcasts it across the subnet. Since broadcasts cannot traverse VLANs and unless DHCP relay is configured, you will need to either put a DHCP server that can provide Option043 on the same subnet as the phone, or a Lync registrar with DHCP enabled on that same subnet (as in the case of an SBA). Lync's built-in DHCP server only responds to Option043 and Option120 and does not provide IP addresses. You can enable this on the Lync registrar using the Lync powershell cmdlet set-CsRegistrarConfiguration -enableDHCP $True
If this is case then the certificate can be manually loaded onto the phone and I'll cover this in a later article.
If this is case then the certificate can be manually loaded onto the phone and I'll cover this in a later article.
Conclusion
The steps in this article provide a basic configuration guidance to get the VVX500 working with Lync in a lab environment for testing purposes. These steps are not sufficient for an actual deployment of phones with full Enterprise Voice features. If you are deploying in a production environment, please refer to the UCS4.1 Administrators Guide for the complete deployment steps. As always, comments and feedback are welcome at http://www.ucprimer.com/comments-discussions--feedback.html
lync.cfg | |
File Size: | 1 kb |
File Type: | cfg |
Update 3/Nov: UCS4.1.0B is now available from Polycom
Polycom has made available via their partner portal website the latest version of firmware for the SoundPointIP and VVX range of phones. UC software 4.1.0 Rev B is for use only with Microsoft Lync Server and using a single line registration. The following product lines will be supported:
• SoundPoint IP 321, 331, 335, 450, 550, 560, and 650 (The SoundPoint IP 670 is not supported.)
• SoundStation IP 5000 conference phones
• SoundStation Duo conference phones
• VVX 500 business media phone
The latest firmware can operate in "Lync Base Profile" mode and requires no provisioning server to push config files. Simply switch the phone to Lync Base Profile as descibed in this article and login on the phone using your Lync SIP URI and AD credentials. Note that the phone in this mode is programmed to obtain the necessary certificates using DHCP options 43 and 120, so ensure these are available in your network. PIN AUTH is also supported. Note that unlike the CX range of Lync Optmized phones, these Lync-compatible phones do not support the USB tethering method for login.
Contact your local Polycom sales representative to get an evaluation copy.
• SoundPoint IP 321, 331, 335, 450, 550, 560, and 650 (The SoundPoint IP 670 is not supported.)
• SoundStation IP 5000 conference phones
• SoundStation Duo conference phones
• VVX 500 business media phone
The latest firmware can operate in "Lync Base Profile" mode and requires no provisioning server to push config files. Simply switch the phone to Lync Base Profile as descibed in this article and login on the phone using your Lync SIP URI and AD credentials. Note that the phone in this mode is programmed to obtain the necessary certificates using DHCP options 43 and 120, so ensure these are available in your network. PIN AUTH is also supported. Note that unlike the CX range of Lync Optmized phones, these Lync-compatible phones do not support the USB tethering method for login.
Contact your local Polycom sales representative to get an evaluation copy.