Welcome to Community Server Sign in | Join | Help

UC Client Installer

To take advantage of the full power of Office Communications Server 2007, you’ll need more than one Unified Communications (UC) softclient for the desktop.  You’ll need Office Communicator 2007 for IM presence and Telephony, Live Meeting 2007 for Web Conferencing and for integration with Outlook 2007, Outlook Add-in.  Installing these clients on thousands of desktops can be a daunting task.  There are a multiple of ways to manage desktop software deployments.  To help you manage the deployment of these UC clients, you might be interested in taking a look at this Windows Scripting Host script.  The advantage of a WSH script is that it will run on Windows XP and Windows Vista without additional pre-requisites.  It was originally created for Microsoft’s IT (MSIT) to deploy OCS 2007 internally.  To make it available to external customers, I’ve modified it to be more generic so it can be used with minimal modification.

 

To install these UC clients requires their respective MSI files.  MSIs allow silent installation by using the “msiexec.exe /qn /i” option.  This installation script will need the following three installation files:

  • Communicator.msi: installs Office Communicator 2007
  •  LMConsole.msi: installs Live Meeting 2007
  • LMAddinPack.msi: installs Outlook Add-on

Office Communicator 2007 requires a license, and is available through Microsoft’s Volume Licensing program; however, the Live Meeting Console and Outlook Add-in is freely available on the web.

 

The Live Meeting Console is downloadable at: http://office.microsoft.com/en-us/help/HA101733831033.aspx

To silently install the console, the MSI must be extracted from the executable, LMSetup.exe.  To extract the MSI file from the EXE file, run the command:

LMSetup.exe -out <folder path>

This will extract the installer: LMConsole.msi.

 

The Outlook Add-in is downloadable at: http://office.microsoft.com/en-us/help/HA102368901033.aspx

To silently install the console, the MSI must be extracted from the executable, ConfAddins_Setup.exe.  To extract the MSI file from the EXE file, run the command:

ConfAddins_Setup.exe -out <folder path>

This will extract the installer: LMAddinPack.msi.

 

Before running the ocinstall.wsh script, you’ll need to make changes to the following section near the beginning of the script to specify your SIP domain name, the network path where you’ll place the three MSI files so the installer script can find them, a URL that will display in Office Communicator where users can go find help, and branding resources.  The example below uses the example of a fictitious organization called contoso.com.

' -----------------------------------------------------------------------------

' SETTINGS THAT MUST BE CONFIGURED BEFORE RUNNING

' -----------------------------------------------------------------------------

# Organization SIP domain name

Const c_strDomainName = "contoso.com" 

 

# Network share where the installation files are located

Const c_strRoot = \\server\share\dir\ 

 

# URL that users can click on within Office Communicator to get help

Const c_strHelpURL = http://help.contoso.com

 

# Branding resources

Const c_strBranding = "Contoso Unified Communications"

Const c_strBrandingXML = http://contoso.com/branding.xml

 

 A log file will be generated located in the location: %windir%\logs\OfficeCommunications.log.  Subsequent runs of the installer script will append to the existing log file. The log file can help you determine any installation errors users might possibly experience.

The installer script is available below in the Attachements section. Upon downloading the installer script, rename the extension from TXT to WSH to make it a Windows Scripting Host file.

Happy client rollout!

 

Rui Maximo

Author – Office Communications Server 2007 Resource Kit (MSPress)

Published Tuesday, February 05, 2008 8:04 AM by octeam
Filed Under:
Attachment(s): ucinstall.txt

Comments

 

markd said:

It's funny.  We just deployed our first OCS07 servers and OC07 clients and the only thing we're having problems with is the conferencing add-in.  A majority of the handful of users who have installed are unable to get the conferencing add-in to work with Outlook 07.  Are there any ways to turn on diagnostics to find out what's going on?  It just doesn't seem to load the Add-In at all.  Beyond that, I'm pretty happy with OC 07.
February 5, 2008 2:56 PM
 

fbostic said:

Hi folks!
UC rocks, but deploying clients is a bit of a pain...
I tried to get the valuable script to work but, as a rookie AD guy:
- wsh or wsf? (not so clear to me from inline comments & deployment instructions)
- I can imagine it's a User logon script to be applied, right?
- the script has to be put in sysvol scripts folder?
- direct execution of the script pops up "Unterminated entity reference - matching ';' not found" at line 575 error code 80040008.

Any help REALLY appreciated: we're going to massively deploy OCS in our 65K users network: this seems the best way to do that....

Francesco
February 18, 2008 5:48 AM
 

fbostic said:

Quick update:
After one hard day of tests, I got the script to work:
- .msi files on a share
- wsf linked thru GPO as a Computer logon script
- removed pound signs (#) from the code in comments: wsh seems to dislike them...

Now I'm fighting to diplay a messagebox BEFORE starting the install process, just to warn users of a longer logon process than usual.

More soon!

Thank to you all: this will be a rocket propeller for ur OCS07 deployment!
February 18, 2008 3:57 PM
 

bobster said:

I am currently reviewing the script as well.  I seem to have some troubles with it currently.

I have changed the required infomration.  But after testing I am getting an error "Unterminated entity reference - matching ';' not found".

Also would like to add some function that would look for the old MOC 2005 and if found remove it.
March 6, 2008 11:46 AM
 

fbostic said:

Hi bobster.

The ugly semicolon has tampered me for a while, until I decided to:

- edit the script ONLY with Notepad
- save it as UTF-8
- carefully remove all the EOL trailing spaces

The script already "removes" (=replaces) the old 2005 client(s)...

Just to whom it may concern, I've added a start message box "Dear User, we're installing blah blah... Please note, logon process will take a bit longer than usual. Click OK to proceed"

The good feature would be an initial check whether OCS2007 is installed or not, just to exit the process if the client is up and running.
I am not familiar with WMI filters, but I think this could be the "pro" solution, submitting the GPO execution to this filter.
A "homemade" workaround would be to check for a registry key (or a definite set of keys) demonstrating "Hey, I'm already here! Don't touch me!", and then immediatly exiting the GPO processing.

This can help, avoiding the need to manually move back and forth PCs from an OU to another one.

Perhaps a volunteer could drop a few lines of code... I'm SO lazy and short of time to do that... and my fiancé propably would beat me if I bring a WMI manual at home....

Hope this helps.

francesco
March 6, 2008 1:09 PM
 

bobster said:

Thanks for the response francesco.  I will look at that.  Do you know by chance what should be in the brandingXML file?
March 6, 2008 3:48 PM
 

fbostic said:

Hi bobster.

I digged a bit around, and as far as I could understand, the BrandingXML file is used to display custom tabs besides the client window, MSN-like styled.

Provided this is not an obj for my organization, I've had no need to go deeper in the topic.
In fact, in "my" version of the "giga-script", I commented all the references to brandingXML data or reg keys.

Sorry I can't help more on this...

francesco


March 6, 2008 4:22 PM
 

bobster said:

Thats what I had found to, even looked in the SDK.  Well guess I will be commenting them out as well.

On another note still cant get it to work it is driving me mad!  I started with the whole "<?xml version" line and copied everything. saved as name.wsh.  maybe take a break from it.
March 6, 2008 5:02 PM
 

fbostic said:

"V" like VICTORY!
Now the giga-script seems complete!

I can detect if 2007 versions are already installed thru three WMI queries inline (thanks to Stefano and Ivano for this). If any is, just skip the corresponding step.

The weekend could be a right time to check if the WMI filtering step can be delegated to the GPO application process.

bobster, if I can help, I'll drop the code, or ask Rui, the thread owner, a place to upload it.

have a nice weekend!
francesco
March 7, 2008 1:18 PM
 

bobster said:

Thanks fbostic, that would be great.  Glad its the weekend cause I am hoping i can get this to run and test and be ready for a Monday dry run.
March 7, 2008 4:09 PM
 

bobster said:

It is Monday and I am hoping for better luck!  Francesco, hope your weekend was good.
March 10, 2008 11:11 AM
 

brian.wing said:

Any of you all get an error "There is no script file specified" ?

This is my first time trying a windows scripting host file to install and I'm having some newb errors.

What is the best way to invoke this script?

I've dl'd the ucinstall.txt, renamed it ocsinstall.wsh and modified the paths to point to my msi files and set the appropriate URLs; however, I'm pretty sure I'm missing something, any help would be greatly appreciated.

Thanks
Bwing
March 10, 2008 12:09 PM
 

bobster said:

Hey Bwing,

Your not the only one that has had that issue.  I have had my share of problems with it as well.  Francesco was going to see if he could post his to assist in some of the issues I have had.
March 10, 2008 1:06 PM
 

fbostic said:

Hi All.
The install script has to be saved (and published to SYSVOL, if you mean to do this way) as ".wsf", NOT as ".wsh".
Don't ask me why and how it works. It simply works.

I think I can't post a 200 lines script here...

at fbostic AT hotmail DOT com you can leave a e-mail address for the code drop. I'll attach a txt, so you'll be able to scan, read, proof and open it safely.
To run the script after a thoroughly deep review, rename it as wsf.
Waiting in my inbox :)

-francesco

March 10, 2008 2:55 PM
 

bobster said:

Hi fran, I dropped you my email.  Not sure if you were able to get it.
March 11, 2008 12:06 PM
 

fbostic said:

Replied just now!

f.
March 11, 2008 2:26 PM
 

bobster said:

To answer fbostic's question about using a WMI query to not apply it, you would do the following:

select * from CIM_Product WHERE Name="Microsoft Office Communicator 2007" and Version > "2.0.6362.0"

Remember when using WMI Filters on GPO's, the filter must = TRUE for the GPO to take place; and as long as the filter = FALSE then it will not apply.  Also you need to remember that when using WMI with computers that are Windows 2000, the GPO is always applied.
March 11, 2008 5:46 PM
 

brian.wing said:

So just to clarify, to use the .wsf, it has to be copied to c:\ assuming windows is installed there, then invoked locally?

-bwing
March 14, 2008 12:04 PM
 

fbostic said:

Brian,
Hmmm.... why would you need to?
For testing purposes or so, IMHO of course you can, but the best way seems either a startup script pushed thru a GPO or other configuration methods (SCCM, SMS...)

f.
March 14, 2008 1:14 PM
 

brian.wing said:

This was just my first experience with using a wsf script to install anything and wasn't sure what the requirements were to use this type of script.  I'm in testing now and having great success.  Thanks Francesco!

I do have one outstanding issue that I'm noodling now and that is getting the communicator username set up correctly.  The script you have provided grabs the username variable and uses it to attempt login to OCS, unfortunately we set up our sip usernames to be first.last@sip.company.com.

do you have any suggestions on how to poll AD and gather that info?

My counterpart thinks we may be able to set a variable in the login script to set a new variable that I can point the script at and grab the correct login name for OCS.

Either way, the script works pretty darn good and I appreciate the help.

Thanks
Brian
March 14, 2008 5:28 PM
 

fbostic1 said:

Hi Brian,
great to hear it works!

Users sip address is stored in "msRTCSIP-PrimaryUserAddress" property in AD user's account.
You can rather easily programmatically query for it thru ADSI.

During the LCS2005 pilot phase, we also set people to have a sip address different from e.mail address.
This had been quite a pain, so we could afford (having a handful of users to manage) to change from last.first@sip.domain.com to last.first@domain.com (which is indeed primary SMTP address).
We then decided for a short transition period in which we had either sip.domain.com AND domain.com as accepted sip domains for OCS, and now everything is only "domain.com".
Meanwhile, we decommissioned our last LCS2005 server, and migrated all users to OCS2007 servers.
At present time, not all users are already OCS2007 with advanced features, and are still using older clients.

Now it's up to you, balncing your company policies and the aim to simplify management.

f.
f.
March 15, 2008 12:07 PM
 

fbostic said:

Hi All,
and updated version is available.
Moved the WMI query check inline, instead of having it at the beginning of the Main sub.

This could be a little more time-spending, but seems to prevent "false positives" in detecting previous installations.

At usual address - fbostic AT hotmail DOT com - you can post a request, and I'll drop the "v.2" code.

-francesco
March 27, 2008 8:56 AM
 

jnutter said:

Fbostic

Thanks again for all your help. I've been testing and I'm getting closer. One thing though. I'm having issues with the script prompting to install on every reboot now.  Is there a way to have it check to see if communicator is already installed and if so just skip the script all together instead of being prompted each time.

thanks again
April 3, 2008 2:41 PM
 

fbostic2 said:

Alas, me as well...

(it's always me, can't get to remeber my account password here...)

Not yet completed this phase... I'm wondering about writing a custom reg key in HKLM and make a WMi filter before the GPO to check for its presence/value.
At present, I'm moving groups of machines in a temporary group, since I can directly control users and ask them if all's OK.
Or, checking the WONDERFUL log :)
In real word, I'll probably let the GPO run for a while checking the custom reg key.
When all is deployed, the policy will run only in the "entry point" OU (Typically "Computers").
Of course the dialog box can be removed upon your needs, or automatically responded sending ENTER thru the script itself.

-f
April 3, 2008 3:03 PM
 

ruim said:

hi everyone - the UC Blog moderated brought to my attention the number of comments on my articles.  I'm glad to see that this installer script is of interest, and that you're actively hacking away at it.  I wasn't sure whether anyone else would be interested in it.

I noticed there are a couple of typos in my article, and I apologies for the frustration you might have experienced.  Yes, you need to rename the script with a WSF extension and not a WSH extension.  

If you're willing to share with the community your customizations (checking whether OC 2007 is already installed, querying AD for the SIP URI instead of using the environment variables to determine the SIP URI, checking GPO, etc), please feel free to send me your changes.  I'll make sure to update the articles with your contributions for everyone to benefit.

You can reach me: ruimATmicrosoftDOTcom

thanks!
April 5, 2008 3:20 AM
 

AClotfelter said:

We purchased Office 2007 Professional Plus volume license at the end of 2006. now, we are moving toward implementing OCS07, and from what I have read, Communicator 07 is part of the professional Plus package. The problem is, I can't seem to find it anywhere. Does anyone know where I can find this package?
April 5, 2008 5:23 PM
Anonymous comments are disabled
Powered by Community Server, by Telligent Systems