Microsoft UC Client Deployment Script

After a lengthy work in progress, I am pleased to share a Microsoft Unified Communications Client Deployment script that I think will help some deployments rollout Office Communicator, Office Live Meeting, and the Office Live Meeting Outlook Add-In.

You can view the script, download it, and read about the features here. It is 1500+ lines of VBScript joy wrapped in a Windows Script File (wsf).

The script was born out of the need to deploy Office Communicator, Office Live Meeting, and the Office Live Meeting Outlook Conferencing Add-In with a customized configuration for a mid-size OCS deployment without a good central software distribution ability. Using Group Policy to rollout the clients also had issues.

The Deploying Microsoft Office Communicator 2007 R2 document (download “OCS 2007 R2 Deploying Communicator.doc”) gives more details on the various options available for deploying Communicator. The Microsoft Office Communications Server 2007 R2 Resource Kit (book) also has some good information about deploying the UC clients and a basic script similar to this one. This script was a complete re-write of this one.

The script has many features, including the following:

  1. Install, or upgrade, Microsoft Office Communicator, Live Meeting, or the Live Meeting Outlook Conferencing Add-In for Windows XP, Windows 2003, Windows 2008, Windows Vista, and Windows 7 clients.
  2. Automatically populate the user SIP address to one of three formats: AD email address, the Username environment variable, or Nothing.
  3. Supports for a Silent or Informational Mode. A Silent mode can be used to run under a GPO for example.
  4. An option to copy the installation files locally (with or without a progress UI indicator), and install from the local source.
  5. Microsoft Office Communicator 2005 can be detected and explicitly uninstalled before installing a newer version of Communicator (including any existing desktop shortcuts).
  6. Configures customized user settings for Communicator and Live Meeting (via local registry entries).
  7. Supports options to not install Live Meeting or the Live Meeting Outlook Conferencing Add-In (for deployments that do not have Live Meeting).
  8. Detects if Outlook is installed, and will not attempt to install the Live Meeting Outlook Conferencing Add-In if Outlook is not installed.
  9. Detects what version of Outlook is installed, and sets the current user Outlook integration settings accordingly.
  10. Detects if Outlook is running, and prompts the user to close before installing the Live Meeting Outlook Conferencing Add-In.
  11. Generates four log files for troubleshooting.  One for the main script, and three separate log files for the Communicator, Live Meeting, and the Live Meeting Outlook Add-In installation.

See the Script Customizations for all the possible customizations. While it is highly configurable, treat the script as a starting resource – dig into it, understand it, and customize it for your environment if you want to use it.

The script has been tested and used on many different client operating systems (listed in point #1 above) and is being used in a 3000+ user rollout.

Enjoy!

Share and Enjoy:
  • Twitter
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • LinkedIn
  • MySpace
  • Reddit
  • Technorati

18 comments to Microsoft UC Client Deployment Script

  • Steve

    I thought I had local copy turned off. It works now. Thanks.

  • Steve

    I tried changing INSTALLATION_ROOT to both of your suggestions and both times I get “could not access source” errors.

  • You should be able to do that by just leaving the INSTALLATION_ROOT null (i.e. = “”), or by setting it = “.” (reference the current directory).

    I am not sure which one would be best in the SCCM case. I would try setting it = “.”

    Hope that helps,
    Curtis

  • Steve

    This script is great. I plan on deploying it using SCCM. How can I prevent it from requiring a source path and just run from where the source files are stored? I’d like the files copied from the SCCM DPs and run from the local SCCM cache folder.

  • Hi Ryan, glad the script was useful for you – it was a lot of work :-)

    My understanding is that the MSI would kick-off, detect Communicator is installed, and do nothing if it was the same or newer version. If that is not the case it is an easy fix.

    Starting at line 1070, the script checks to see if Communicator is already installed, and what version. If you want, you can just ‘do nothing’ if a version of Communicator newer than MOC 2005 is installed. You could add this at line 1092:

    If (communicatorCurrentVersion >= “2.0″) Then
    g_communicatorInstalled = True
    WScript.Sleep 1000
    WriteToLogFile logFileSection & “Office Communicator Installation Finished”
    Exit Sub
    End If

    Regards,
    Curtis

  • Ryan

    Thank you for the script, works almost perfectly! I have the wsf script set to apply at computer start up and it goes through perfectly. The only issue is that every time a person restarts, the script runs again and the client is installed again. Is there a simple switch I can put it to not run the script if Communicator 2007R2 is already installed?

  • Gordon

    Thanks for the script. My GPO skills are a bit rusty and I’m having difficulty getting it to apply. I think my issue may be that I can’t do what I want (run as a startup script but limit to specific users on certain machines).

    I’d like to have it run on laptops in an OU the GPO is applied to, but only for users in a specific Security Group. We have configured the script as startup script and set the security to allow read/apply for the test security group.

  • Hi,
    This problem and the patch for it look really old – it was fixed by the June 2009 update for Communicator 2007 R2. You can use the script today to include a fix for this. Just incorporate the latest Communicator 2007 R2 .msp update file into the .msi file that the script points to – that will install Communicator (i.e. you can apply patches to an install file).

    The latest Communicator 2007 R2 release is from April 2010 – this will include a fix for your issue and many more issues. You can download the corresponding .msp file here: http://support.microsoft.com/kb/978564.

  • Great script. Works as advertised. Keep up the good work!!

    I have an issue with my 64x computers. I keep getting this error as described by Microsoft.

    http://support.microsoft.com/kb/972085/

    I apply the patch they mention and it fixes the problem. I was wondering if you could incorporate the patch into your script or is there a way to add the patch myself?

    Thanks

  • Got it. I haven’t seen this before, and without seeing your environment I would suspect it is the Communicator MSI causing this.

    The script will invoke the Communicator MSI with the following command on the command line:
    > “msiexec.exe /qn /log /i ”

    You can try running this command yourself when Communicator is running and see if it shuts down Communicator.

    A new questions and I’ll try some tests in my environment when I get time:
    1) Is your MSI patched with the latest version? 3.5.607.83
    2) Is the GPO attached to the machine or user?
    3) Does it happen only Windows 7 users? Win7 x32 or x64 bit?

  • Yes, it works. Communicator, Live Meeting and Conferencing Add-in were installed correctly by the script. However When I login into my pc, Communicator starts normally but after few seconds I see the Communicator process that disappears from Task Manager, so Communicator exits.

    Note 1: if I disable the script in gpedit, all works fine
    Note 2: I’m using Windows 7

    Regards
    iwgroup

  • Thanks. I am a little confused. Was Communicator successfully installed? Or did the installation script start, and then ’switch off’ (end)?

    Curtis

  • Hi, This is script is terrific! I’ve only a problem: after the user login, Communicator process switches off even if I set to run at the logoff by GPO

    iwgroup

  • Catalin

    Nice script – used it to deployed 100+ R2 and live meeting clients. Several clients failed but so far all of them did not have the necessary administrator rights to install locally.

  • Curtis Johnstone

    I assume Mac Messenger runs on a Mac OS (:-)), and the script is a windows script file (embedded VBScript) so I assume no it doesn’t. Having said that, I haven’t checked whether a Windows Script Host (interpreter) exists for the Mac. If one does, the script hasn’t been tested with Mac Messenger – but do let me know if you get it working on a Mac :-)

  • Michael

    Fantastic script. Configured it to copy and install locally and it worked great. Will it work with mac messenger?

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>