Bulk-Uploads of Lync Phone Edition Updates

For environments with only a few Front-End pools applying device updates is a fairly simple process. You run the Import-CsDeviceUpdate cmdlet a few times to cover each phone vendor and you're done, but I've found that once you have a number of pools to update this process becomes incredibly tedious. In order to expedite this I've created a simple little PowerShell script which will search the environment for all Front-End pools and upload all the .cab files to each FE.

You can copy this text and save it as a .ps1 file on your Lync server.

Get-CsService -WebServer | Select PoolFQDN | ForEach {
	Import-CsDeviceUpdate -Identity ('WebServer:' + $_.PoolFQDN) -FileName Aastra.cab
	Import-CsDeviceUpdate -Identity ('WebServer:' + $_.PoolFQDN) -FileName HP.cab
	Import-CsDeviceUpdate -Identity ('WebServer:' + $_.PoolFQDN) -FileName Polycom.cab
	Import-CsDeviceUpdate -Identity ('WebServer:' + $_.PoolFQDN) -FileName Tanjay.cab

The only actions required from the admin are:

  1. Download each of the Lync Phone Edition packages.
  2. Extract each UCUpdates.cab files to a single common folder. Rename them as follows: Aastra.cab, HP.cab, Polycom.cab, Tanjay.cab
  3. Open the Lync Management Shell, and CD into the folder where the .cab files were extracted.
  4. Launch the script.