Technote (FAQ)
Question
Is there any way to pre-configure a Lotus Notes client so that the Administrator can prevent user intervention? In this scenario, the Administrator does not want users to have to know what server they need to connect to, or be able to select options the Admin does not want them to when they log in to their Notes client for the first time after installation.
Answer
Although there is not a way to avoid configuring the client altogether, much of the configuration can be achieved behind the scenes so that you have limited user intervention through a process called "Scriptable Setup."
The scriptable setup option uses a setting in the Notes.ini file to provide information to the client setup wizard. During installation, the wizard displays only the panels that users need to set up the Notes client. The notes.ini parameter, ConfigFile= points to a text (.TXT) file that contains the parameters that the wizard needs.
For example: ConfigFile=C:\Program Files\Lotus\Notes\Data\setup.txt
The wizard reads the text file and completes the setup. The user is able to bypass the wizard screens for which parameters have been provided by the text file.
The settings and parameters that you can use in the text file are listed in this table:
| Setting | Description |
| Username | User's hierarchical name -- for example, John Smith/Acme |
| KeyfileName | Directory path to the user's ID file name --for example, c:\program files\lotus\notes\data\jsmith.id |
| Domino.Name | Domino server in the same domain as the user name. You do not need to enter a hierarchical name. |
| Domino.Address | An address for the Domino server, such as the IP address of the server, if needed, to connect to the server. For example, server.acme.com or 123.124.xxx.xxx |
| Domino.Port | Port type, such as TCPIP |
| Domino.Server | 1 to connect to the Domino server, 0 for no connection |
| AdditionalServices | The "Additional Services" panel lists Internet, proxy, and replication settings. The options for this parameter are 1, 0, and -1. AdditionalServices = 1 means that the panel will display no matter what, even if sufficient information has been provided by the script to complete setup. AdditionalServices = 0 means the panel will display only if insufficient information has been provided by the script to complete setup. AdditionalServices = -1 suppresses display of the "Additional Services" panel no matter what. |
| AdditionalServices.NetworkDial | To configure a network dialup connection to Internet accounts created via Additional Services dialog box |
| Mail.Incoming.Name | Incoming mail (POP or IMAP) server name |
| Mail.Incoming.Password | An address -- such as the IP address -- of the home server, if needed to connect to server |
| Mail.Incoming.Server | 1 for POP; 2 for IMAP |
| Mail.Incoming.Protocol | Mail account user name or login name |
| Mail.Incoming.Username | Mail account password |
| Mail.Incoming.SSL | 1 to use SSL; 0 not to use SSL |
| Mail.Outgoing.Name | Outgoing mail account name, a friendly name used to refer to these settings |
| Mail.Outgoing.Server | Outgoing mail (SMTP) server name |
| Mail.Outgoing.Address | User's Internet mail address, such as user@isp.com |
| Mail.InternetDomain | Internet Mail domain name such as isp.com |
| Directory.Name | Directory account name, a friendly name used to refer to these settings |
| Directory.Server | Directory (LDAP) server name |
| News.Name | News account name, a friendly name used to refer to these settings |
| News.Server | News (NNTP) server name |
| NetworkDial.EntryName | Name of remote network dialup phone book entry |
| NetworkDial.Phonenumber | Dial-in number |
| NetworkDial.Username | Remote network user name |
| NetworkDial.Password | Remote network password |
| NetworkDial.Domain | Remote network domain |
| DirectDial.Phonenumber | Phone number of Domino server |
| DirectDial.Prefix | Dialup prefix, if required. For example, 9 to access an outside line. |
| DirectDial.Port | COM port to which the modem is connected |
| DirectDial.Modem | File specification of modem file |
| Proxy.HTTP | HTTP proxy server and port -- for example, proxy.isp.com:8080 |
| Proxy.FTP | FTP proxy server and port -- for example, proxy.isp.com:8080 |
| Proxy.Gopher | Gopher proxy server and port -- for example, proxy.isp.com:8080 |
| Proxy.SSL | SSL proxy server and port -- for example, proxy.isp.com:8080 |
| Proxy.HTTPTunnel | HTTP tunnel proxy server and port -- for example, proxy.isp.com:8080 |
| Proxy.SOCKS | Socks proxy server and port -- for example, proxy.isp.com:8080 |
| Proxy.None | No proxy for these hosts or domains |
| Proxy.UseHTTP | Use the HTTP proxy server for FTP, Gopher, and SSL security proxies |
| Proxy.Username | User name if logon is required |
| Proxy.Password | User password |
| Replication.Threshold | Transfer outgoing mail if this number of messages held in local mailbox |
| Replication.Schedule | Enable replication schedule |
All or only some of these parameters can be used. Depending upon which parameters are used dictates which of the setup screens the user may be challenged with.
Starting in Notes 6.5 the following options are also available:
| IM.Server | Sametime server required. |
| IM.Port | Sametime server port (any positive number) |
| IM.ConnectWhen | (Optional setting) Defines when to connect to Sametime:
|
| IM.Protocol | Use one of these:
|
| IM.ProxyType | Required if IM.Protocol is set to 3. Use one of these:
|
| IM.ProxyServer | Required if IM.Protocol is set to 3. Name of Sametime proxy server |
| IM.ProxyPort | Required if IM.Protocol is set to 3. Port of Sametime proxy server (any positive number) |
| IM.ServerNameResolve | Only used if IM.ProxyType is 1 (SOCKS5) but it is not required. Use one of these values:
|
| IM.ProxyUsername | Required if IM.Protocol is set to 3 and IM.ProxyType is not SOCKS4 |
What follows is an example of a text file that would simply prompt the user for his/her password upon initial login. Based on the parameters in this example text file, setup would be complete once the user's password has been entered and the client has completed creating the Bookmark.nsf, Names.nsf, etc.
Example setup.txt:
-
Username=User Name/Acme
KeyfileName=c:\Program Files\Lotus\Notes\Data\username.id
Domino.Name=servername/Acme
Domino.Address=servername.acme.com
Domino.Port=TCPIP
Domino.Server=1
AdditionalServices=0
AdditionalServices.NetworkDial=0
Replication.Threshold=9999
Replication.Schedule=0
Starting with 8.5 the scripted setup code can now resolve system environment variables on any line of the configuration file that's read in.
The login procedure into Windows can set system variables like:.
DOMINOUSERNAME=user name/O
DOMINOSERVERNAME=server/O
KEYFILELOCATION=c:\user name\IDs\uname.id
Starting with 8.5.1 the parameter CONFIGFILE= can contain system environment variables, too.
In case the setup configuration file is stored next to the template notes.ini the following setting would apply to all Windows flavors:
CONFIGFILE=%ALLUSERSPROFILE%\Application Data\Lotus\Notes\Data\config.txt
which resolves to...
CONFIGFILE=C:\Documents and Settings\All Users\Application Data\Lotus\Notes\Data\config.txt
and must be set prior to the initial launch of Notes after install.
Config.txt contains:
-
Username=%DOMINOUSERNAME%
Domino.Server=1
Domino.Name=%DOMINOSERVERNAME%
Domino.Port=TCPIP
KeyFileName=%KEYFILELOCATION%
AdditionalServices=0
Replication.Threshold=1
Replication.Schedule=1
... and when Notes is launched for the first time the user sees only a password prompt and setup is completed with no additional UI.
Environment variables can be used on any line of the configuration file as long it's in the correct format ("%ENVVAR%" on Windows or "${ENVVAR}" on Unix).
Any name can be used for the vars as well as long as it matched what you set on your system.
They can be constructed from multiple vars:
CONFIGFILE=%HOMEDRIVE%\%HOMEPATH%\Desktop\config.txt
which resolves into CONFIGFILE=C:\Documents and Settings\username\Desktop\config.txt
NOTE: The CONFIGFILE parameter is the ONLY notes.ini parameter capable of this flexibility.
Troubleshooting:
In one case, the user was prompted with the configuration screens, but those screens were populated with the information from the config file indicating that the config file was being recognized. It was found that the client machine could not connect to the Lotus Domino Server specified in the config file. Once the client was set to not connect to that server, the scriptable setup worked as expected.
Related information
A simplified Chinese translation is available
Rate this page:
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.