markm75c


Does anyone know of a way to have the sign in name in communicator, auto filled in after an install or doing the install..

Basically every user has the same format.. first.lastname@domain for the login.

I'd prefer to find a way to have this info auto entered after the install when it first tries to open.

I'll be using communicator as a "broadcast" method.. and alot of users probably wont take the time to enter their info when I have it set to auto start/connect on windows start up.

Thanks




Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Samlw


I would be interested in this solution too. Communicator 2005 can pick out information from Active directory - why cant it pick out their sip name (or email address) too and so not bother the user for these credentials





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

markm75

I've found a way to do this..

Basically when the client gets installed.. I have a batch file.. It pulls the email address from AD and then uses that to create the registry entry for the sign in name.. Something like this (I may have to tweak this, havent fully tested it yet):

This would be part of a .vbs file.. which gets run from a file, say called setup.bat (first line would be the email.vbs, second line the msiexec.exe command line to install communicator):

xxxxxxxxxxxxxxxxxxxxxx

Option Explicit
'On Error Resume Next

Dim objUser, objADSysInfo,test

Set objADSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objADSysInfo.UserName)
'WScript.Echo objUser.Mail

'UserMicrosoft RTC Instant Messaging

Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")

'test = WshShell.RegRead ("HKCU\Software\Microsoft\Communicator\UserMicrosoft RTC Instant Messaging")
'Wscript.Echo test

WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\UserMicrosoft RTC Instant Messaging", objUser.Mail, "REG_SZ"
xxxxxxxxxxxxxxxxxxx

I also finally figured out how to use the wmi script with the resource kit to populate their contacts list and even add to groups.. now I'm struggling with how to make it create a contact in two groups simultaneously.. so far it appears to be only one group at a time (cant automatically put a contact in two groups at once, but it will work if the end user, manually copies it)...






Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Samlw

Very useful - thanks. I did see a post somewhere that suggested running:

reg add HKCU\Software\Microsoft\Communicator /v "UserMicrosoft RTC Instant Messaging" /t reg_sz /d "%username%@domain.com" /f > null

But that doesnt work in our environment as Communicator 2005 expects the person's email address so your script works perfectly!

Also I needed to add our domain to the access control list in communicator to allow all members of our firm to see availability and add other menbers of our firm to their lists without getting bothered by lots of prompts. The process is described here:

http://msgoodies.blogspot.com/2006/03/populating-users-in-office.html

I would have thought that this sort of thing would have been easier to do and manage, without the need for scripting - AD or the LCS server /farm or even group policy would be the obvious places. Oh well... maybe in the next version !!

Thanks again.





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

markm75

Samlw wrote:

Very useful - thanks. I did see a post somewhere that suggested running:

reg add HKCU\Software\Microsoft\Communicator /v "UserMicrosoft RTC Instant Messaging" /t reg_sz /d "%username%@domain.com" /f > null

But that doesnt work in our environment as Communicator 2005 expects the person's email address so your script works perfectly!

Also I needed to add our domain to the access control list in communicator to allow all members of our firm to see availability and add other menbers of our firm to their lists without getting bothered by lots of prompts. The process is described here:

http://msgoodies.blogspot.com/2006/03/populating-users-in-office.html

I would have thought that this sort of thing would have been easier to do and manage, without the need for scripting - AD or the LCS server /farm or even group policy would be the obvious places. Oh well... maybe in the next version !!

Thanks again.

You said to you needed to be able to allow other members to add others to their lists without prompts, I believe you can do so manually in the settings in the LCS snapin.. On the properties of an LCS user.. Allow/edit.. add.. "ALL" or something similar...

So far the only real issue I'm having with our setup is Groups.. if I have/want one contact in both groups and I run two different scripts for each group, then that user only appears in one group or the other, the end user has to manually copy the user to the other group, for them to appear in both.

The other issue is with Vista, as there is no remote assistance.. (and no remote assistance under more actions if using Presence information on Portal Intranet or in Office 2007).. I'm assuming with Communicator 2007 this will be fixed..





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

markm75c

I've also set this up in the batch file at install time as well (causes communicator to run right after install and the user gets logged in automatically):

(No reboot required)

At time of install I run this from my install batch file (call it.. something.vbs):

Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")

WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\AddToFirewallExceptionList", 0, "REG_DWORD"
WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\RTCState", 01000000, "REG_BINARY"

Then in the same batch file at the end of the install I simply execute communicator via "start communicator" and instantly the user is signed in.





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Samlw

I have been doing something similar, except I also set a couple of other options - see below: Not too sure if they are necessary, but it appears to work quite nicely (except the user may need to log in twice before communicator runs at login, I could force it to run the first time, but we didnt really need it to)....

Option Explicit
Dim objUser, objADSysInfo,test
Set objADSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objADSysInfo.UserName)
Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\UserMicrosoft RTC Instant Messaging", objUser.Mail, "REG_SZ"
WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\AutoRunWhenLogonToWindows", "1", "REG_DWORD"
WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\FirstTimeUser", "0", "REG_DWORD"
WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\Communicator", """C:\Program Files\Microsoft Office Communicator\Communicator.exe""", "REG_SZ"
WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\AddToFirewallExceptionList", 0, "REG_DWORD"
WshShell.RegWrite "HKCU\Software\Microsoft\Communicator\RTCState", 01000000, "REG_BINARY"





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Beholder242

For those of us who are more comfortable with batch scripting than VBScript, here is the script I use for automated Communicator installs, if you do not have SMS or another deployment method available.

Some notes about this script:

Our company is set up that office employees have S: drives available that replicate with all our offices around the world. Remote users (ones who dialup or use VPN to get into our network) do not get S: drives, so the first part of the script does three things: 1, detects if Communicator is already installed by seeing if it has a key present in the LOCAL_MACHINE portion of the registry (if the script throws an error here, don't panic, this is normal) and 2, checks that the S: drive exists and the installation file exists, and 3, installs Windows Installer 3.1 before installing Communicator, just in case the workstation is behind on updates.

The second part of the script checks to see if the user logging in already has Communicator configured for them. If yes, then the script simply exits, but otherwise it sets up in the registry the defaults that we use: don't play the tour, don't open main window at startup (optional, REM'ed out below--as shown, window will open), disable Customer Experience Improvement Program participation, sets received files to go into user's My Documents instead of a subdirectory inside My Documents, configures their sign-in name, runs automatically at next logon, and automatically signs in user even from the first execution.

Thanks to Samlw for inspiring me to add a few more keys into this and do as much behind the scenes configuration as possible.

On to the script!

@echo off
set OCINST=
set USERCFG=
REM *** TEST FOR COMMUNICATOR PRESENT ON SYSTEM ***
echo Checking for presence of Office Communicator...
reg query "HKLM\Software\Microsoft\Communicator" >NUL && set OCINST=YES
echo Checked registry, processing result...
if "%OCINST%"=="YES" goto CONFIGUSER
echo Installing Office Communicator.
if not exist S:\nul goto NOCORP
if not exist S:\Install\Communicator.msi goto NOINST
S:\Install\WindowsInstaller-KB893803-v2-x86.exe /quiet /norestart
S:\Install\Communicator.msi /passive

REM *** TEST FOR COMMUNICATOR CONFIGURATION FOR CURRENT USER ***

:CONFIGUSER

reg query HKCU\Software\Microsoft\Communicator /v "UserMicrosoft RTC Instant Messaging" >NUL && set USERCFG=YES
if "%USERCFG%"=="YES" goto :EOF
echo Configuring Office Communicator for current user.
reg add "hkcu\Software\Microsoft\Communicator" /v TourPlayed /t REG_DWORD /d 1 /f
REM reg add "hkcu\Software\Microsoft\Communicator" /v AutoOpenMainWindowWhenStartup /t REG_DWORD /d 0 /f
reg add "hkcu\Software\Microsoft\Communicator" /v "CEIP Preference" /t REG_DWORD /d 0 /f
reg add "hkcu\Software\Microsoft\Communicator" /v FtReceiveFolder /t REG_SZ /d "%USERPROFILE%\My Documents" /f
reg add "hkcu\Software\Microsoft\Communicator" /v "UserMicrosoft RTC Instant Messaging" /t REG_SZ /d "%USERNAME%@<<YOURDOMAIN>>.com" /f
reg add "hkcu\Software\Microsoft\Windows\CurrentVersion\Run" /v "Communicator" /t REG_SZ /d "%ProgramFiles%\Microsoft Office Communicator\Communicator.exe" /f
reg add "hkcu\Software\Microsoft\Communicator" /v "RTCState" /t REG_BINARY /d 01000000 /f
reg add "hkcu\Software\Microsoft\Communicator" /v AutoRunWhenLogonToWindows /t REG_DWORD /d 1 /f
reg add "hkcu\Software\Microsoft\Communicator" /v FirstTimeUser /t REG_DWORD /d 0 /f

goto :EOF

:NOCORP

echo No Corporate S: drive found. Unable to continue.
goto :EOF

:NOINST

echo Installation file not found. Unable to continue.
goto :EOF





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

RTellis

Did you ever figure out how to put a contact in two groups at once via the .wsf scripts



Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Scatterbrain

And how do you use "start communicator" to get Communicator to actually start after the installation

I can install it and even configure it the way I want, but I can not get it to start when the process is complete - and "start communicator" simply doesn't work. Is there a switch for the *.msi Something that I've missed





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

CBC Radio 3

Hi There,

The script work great except my organization uses firstname_lastname@domain for you e-mail address but lastname first initial for the user name. is there any varible like %username% that i can use instead to accomplish the same thing

Thanks

Mike





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

markm75c

Scatterbrain wrote:

And how do you use "start communicator" to get Communicator to actually start after the installation

I can install it and even configure it the way I want, but I can not get it to start when the process is complete - and "start communicator" simply doesn't work. Is there a switch for the *.msi Something that I've missed

When you tried the start communicator.. what happened For this to work it had to be fired off from the batch file like this:

c:

start communicator.exe

I'm not sure, but i think the whole c: was the key.. if you do this via the run prompt, it wont work.

On the note asked about if I got the thing to work publishing one contact to two groups.. No.. not as of yet.

There is also a limit on how many users you can put in one group as I found out.. its around 29 or 30.

What I really wish I could figure out was a way to detect if Communicator was running, ie: logged in (not just if the process was running, because this isnt enough).. I had a little batch file that i ran via SMS every hour or so, so if the user logged out of communicator, it would relaunch the program signing them back in Smile

Problem is... if its running, even hidden, and you fire this off, you end up with two instances of the same program. It needs a way to know if running and if signed in...





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

markm75c

This part of my script should take care of that:

Set objADSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objADSysInfo.UserName)





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Scatterbrain

Actually, when I was testing - I had somehow "semi-uninstalled" Communicator. (I can't explain it other than several of the key components of Communicator, including the communicator.exe were missing.) Once I cleared that up, the "start communicator" command sequence works.

Sorry for the confusion.





Re: Office Communicator 2005 sign-in name, auto populate after install somehow?

Mike@ALS

Mark,

If you could provide me with the information on how to populate the contacts list groups that would be awesome. I'm a Windows PC technician (until just recently being thrust into some server support - not saying that is a bad thing) and my company wants to deploy Communicator but not until I can populate the user list for everyone.

I've done several searches and you're the only one I've seen so far that seems to have done it successfully.

Any help you could provide would be greatly appreciated.

Mike