The new Communicator Phone Edition (CPE) Device Update Service in Office Communications Server (OCS) 2007 R2 is 1000 times better than in the previous release where you had to set Windows Sharepoint Services (WSS) 3.0 and stand on one leg and pray you had everything configured perfectly. I'm not sad one bit to see that mess go J
In OCS R2, WSS is gone and the Device Updater is built right into the Front-End Server. An intuitive interface allows you to upload and manage the device updates with ease.
I did run into one issue, and now confirmed a bug by Microsoft PSS, whereby R1 CPE devices would not update when connected externally to a network. In this case 100% of the users were external to the OCS network that was hosted at a data center so the phones are in various home and client offices. The phones would show a "0x0/401" status in the about menu. Upon further investigation this error code suggested that an unauthorized user was attempting to connect. Seemed strange since you could log on with the user account and the phone worked as it should. It just wouldn't update get the update. In the IIS 7 logs you would see the same error when the phone did a post for /RequestHandlerExt/ucdevice.upx. Notice the 401 after the Microsoft+UCPhone+Device entry below..
2009-08-13 13:28:39 192.168.1.43 POST /RequestHandlerExt/ucdevice.upx - 443 - 216.221.86.228 Microsoft+UCPhone+Device 401 2 5 12
2009-08-13 13:28:47 192.168.1.43 POST /RequestHandlerExt/ucdevice.upx - 443 - 216.221.86.228 Microsoft+UCPhone+Device 401 2 5 12
2009-08-13 13:37:44 192.168.1.43 POST /RequestHandlerExt/ucdevice.upx - 443 - 216.221.86.228 Microsoft+UCPhone+Device 401 2 5 14
After confirming everything was confirmed to be setup correctly and pulling out the last of my remaining hair, I opened a PSS Case and explained the issue to the engineer. He quickly identified the issue as an undocumented bug and asked me to make a couple of changes.
First, we added Anonymous Logon to the RequestHandlerExt virtual directory NTFS permissions:
Secondly, we changed the RequestHandlerExt Authentication options by enabling Anonymous Logon:
After restarting IIS 7 and rebooting the Polycom CX700, the phone was able to download the new update. The phone showed and update status of 0x0/200 and you could also see this in IIS 7.0 as shown here:
2009-08-13 13:43:47 192.168.1.43 POST /RequestHandlerExt/ucdevice.upx - 443 - 216.221.86.228 Microsoft+UCPhone+Device 200 0 0 3683
2009-08-13 13:47:28 192.168.1.43 GET /DeviceUpdateFiles_Ext/UCPhone/Polycom/CX700/A/ENU/3.5.6907.35/CPE/CPE.nbt - 443 - 216.221.86.228 Microsoft+UCPhone+Device 200 0 0 220879
2009-08-13 13:47:28 192.168.1.43 GET /DeviceUpdateFiles_Ext/UCPhone/Polycom/CX700/A/ENU/3.5.6907.35/CPE/CPE.cat - 443 - 216.221.86.228 Microsoft+UCPhone+Device 200 0 0 164
2009-08-13 13:58:15 192.168.1.43 POST /RequestHandlerExt/ucdevice.upx - 443 - 216.221.86.228 Microsoft+UCPhone+Device 200 0 0 181
You can also verify this in the Request Handler Audit Log located on your front end server (C:\Program Files\Microsoft Office Communications Server 2007 R2\Web Components\DeviceUpdateFiles\Logs\Server\Audit\imageUpdates)
You should see an entry for every phone connecting, the current firmware it is on and whether it has made a request to download the new firmware. The first entry shows a phone that is already been updated and the second one shows a phone that has made the request to download the firmware.
08/13/2009 09:43:47,[email protected],192.168.1.25,UCPhone,8/13/2009 9:43:35 AM,"001B9E2CCC19","1108010762","Polycom","CX700","A","ENU",cpe.nbt;1.0.522.101;8/12/2008 2:17:07 PM,http://OCS2.DOMAIN123.ORG/DeviceUpdateFiles_Int/UCPhone/Polycom/CX700/A/ENU/3.5.6907.35/CPE/CPE.nbt;3.5.6907.35;6/27/2009 10:28:10 AM
08/13/2009 09:58:15,,192.168.1.25,UCPhone,8/13/2009 6:53:44 AM,"001B9E2CCC19","1108010762","Polycom","CX700","A","ENU",cpe.nbt;3.5.6907.35;6/27/2009 10:28:10 AM,
08/13/2009 10:01:56,[email protected],192.168.2.22,UCPhone,8/12/2009 6:16:38 PM,"001B9E2CC773","1108009571","Polycom","CX700","A","ENU",cpe.nbt;1.0.522.101;8/12/2008 2:17:07 PM,http://OCS2.DOMAIN123.ORG/DeviceUpdateFiles_Int/UCPhone/Polycom/CX700/A/ENU/3.5.6907.35/CPE/CPE.nbt;3.5.6907.35;6/27/2009 10:28:10 AM
This should hopefully be posted as a support article on TechNet soon.
If you are having any other issues with the Update Service, Rui Silva has written a great troubleshooting post here. You should also go through the Communicator Phone Edition R2 Deployment Guide.