One of the first larger programs I wrote with the Lotus Notes C-API (then
still on 5.0) was a command-line tool to be used by the Domino administrators
to register new Domino users. The program prompted for a userid, extracted
the relevant user details from our OpenLDAP directory and registered the
user in Lotus Domino, thereby creating the user’s mail-file as well as a
replica thereof on a second server. The program has been in use for over six
years now and has helped in both a very fast initial migration of users to
Lotus Domino as well as subsequent ease of administration in registering new
users. At the time, we (I was involved in the roll out of Domino) decided to
not use the interface in the Lotus Administrator program because it wasn’t
(isn’t?) able to create replicas and there were a number of fields we wanted
set in the Domino directory (NAB) Since the machine on which this program (and
other required utilities) runs is being phased out, and since I am the only
one around who understands what I did at the time :-), I decided to roll the
package into a Lotus Domino add-in task, giving the administrators a
simple database with which new users can be registered. As
soon as the user identifier is entered, the Notes interface retrieves the
user’s current details from the LDAP directory and populates the user’s
password field with a random password. The administrator chooses a certifier
for registering the user and the user’s home server and then saves the
document.
Pending documents are picked up by the add-in
task for processing. The user’s ID file is created, the Domino directory entry
is populated with all required fields including company name, Sametime
server, etc. The user’s mail-file is created and a replica thereof is created
on the user’s pre-defined replica server. The last steps performed by the add-
in are to populate the OpenLDAP directory with the user’s modified details (if
required) and to attach a full log transcript to the document in the
registration database. In my lab the system is performing very well, and I
plan to roll this out in the course of the week to the productional systems.