Lotus Notes Setup

Overview

When connecting to Lotus Notes, the integration uses an additional piece of software called the Domino Bridge. A small web application is deployed either on the Domino Server or a separate web server that accepts secure SOAP requests and translates these into calendar events. The web application uses a minimal-access delegate account to connect over DIIOP to your Domino server and create calendar entries on behalf of users.

Note: Enterprise Groupware for Lotus Notes is a Premium Service and requires a separate agreement with Deem to be in place before configuration can take place. If you are unsure if your agency has this service included in your reseller agreement with Deem, enter a support case (see Entering a Support Case for instructions).

You need the following:

  • A J2EE compliant Application Server for the Integration Service to run in. Any J2EE compliant Application Server such as Tomcat, IBM Websphere, JBoss and BEA Weblogic will work. We strongly recommend Tomcat Version 6.x as the integration has been thoroughly tested with Tomcat 6.x. It can be downloaded from http://tomcat.apache.org/download-60.cgi. You will need the binaries only.

Note: Do not use the native Domino Server due to potential conflicts with the IBM JDK version that Domino needs versus the Sun Microsystems, Inc. JDK 6.0 version that the groupware integration requires

Note: We strictly require JDK 6.0 due to dependencies with certain libraries. If you have any other version, we recommend that you have a separate JDK 6.0 instance running for the groupware integration.

Preparing Your Environment

Consult your Domino/System administrator when deciding on where to deploy the web application. You have two options

  • Deploy the web application on the same physical device as the Domino Server.
  • Deploy the web application on a separate physical device.

Note: If you have an environment that has multiple Domino Servers, you need to pick one of those as your “master” Domino Server and have that server communicate with the web application.

You will need to make sure that the device has the correct JDK and Tomcat version installed.  Follow the steps below to ensure that your device is ready for the web application (WAR) deployment:

  1. Ensure that the JDK environment is correctly set up. (You may skip this step if you already have JDK 6.0 on the device that you plan to install the web application.) 

     Click here to expand...
    1. Install JDK 6.0 from http://www.oracle.com/technetwork/java/javase/downloads/jdk6u38-downloads-1877406.html.
    2. Once you have run the installer, make sure that the environment variables are set correctly:
      • For Windows, add the path to the ‘bin’ directory of your JDK installation to the “PATH” environment variable. Choose My Computer>Properties> Advanced>Environment Variables. Edit the “PATH” variable and add the path to the ‘bin’ directory. For example: 
        PATH = C:\Program Files\Java\<JDK version>\bin
      • For UNIX, export PATH="${JAVA_HOME}/bin:${PATH}”
  2. Install Tomcat 6.x. (You may skip this step if you already have Tomcat 6.x  on the device that you plan to install the web application.) 

     Click here to expand...
    1. Install Tomcat from http://tomcat.apache.org/download-60.cgi . You will need the core binaries. You may choose to install the “Windows Service Installer” version.
    2. Make sure that the JAVA_HOME environment variable points to the JDK home directory:
      • For Windows, JAVA_HOME = <Path to the JDK directory>, e.g. C:\Program Files\Java\<JDK version>
      • For Unix, export JAVA_HOME="/usr/java/<JDK version>
    3. Once you are done with the Tomcat installation, the best way to confirm if it installed correctly is to type the following in your browser (http://localhost:8080/ OR http://<machine name/IP address>:8080/). If you see the tomcat page, then the installation went through successfully.
  3. Prepare the Domino Server For integration. 

     Click here to expand...
    1. Create a Delegate User on the Domino Server. You would create the delegate user like any other on the Domino Server; we recommend that you call it the “Deem Delegate” or simply “Delegate”. Since the integration users the delegate credentials to access user calendars, it is a good practice to make sure that the password for the user never expires. This will ensure that the integration works uninterrupted. 
      Note: If you do not have a password that never expires, the web application will need to be redeployed every time the password is changed.
    2. Enable DIIOP on the Domino Server. You do this by executing the command load diiop at the Domino command prompt (>).
    3. Configure Domino to start DIIOP whenever the servers are restarted. You do this by editing the notes.ini file and adding “diiop” to the end of the “ServerTasks = “ line.

Deploying the Integration Web Service

Before you start the web application deployment, make sure your environment is ready. You should have the following information with you before you deploy the web application:

  • Domino Server machine name
  • Domino server DIIOP port number (Default value is 63148)
  • Delegate user id and Delegate Internet password
  • Decide on a service password. You will need this when you generate the WAR file, and it has to be the same value when you configure the groupware server.

Download the TAR file

We recommend that you download it to the same device that will have Tomcat installed. We also recommend that you download it in a separate folder called “DeemIntegrations”. This makes it easy to go locate the files needed and also serves as an archival mechanism for the WAR files generated. Once you have downloaded the TAR file to the \DeemIntegrations folder, follow these steps: 

 Click here to expand...
  1. Unzip the TAR file and keep the directory structure intact. 
    1. On Unix : tar xvf groupware.tar
    2. On Windows : unzip using Winzip or equivalent
  2. The unzipped/untared file will generate a groupware directory.  On Unix, give executable permissions (for example, "chmod +x groupwareWebservicesSetup.sh"). Change the active directory to the groupware directory created in Step 2.
  3. By default a log file called RCGroupware.log will be created in the directory from where the web server is started, to change the location of log file, edit the file "groupware\WEB-INF\classes\log4j.properties" and set the property "log4j.appender.groupwarelogfile.File" to the absolute path of the log file.
  4. Run the groupware web service setup utility.  Make sure you have the Domino Server machine name, Domino server DIIOP port number, Delegate user ID and delegate password handy. 
    1. On Unix: Run the script groupwareWebservicesSetup.sh 

    2. On Windows: Run the script groupwareWebservicesSetup.bat
      Note: If need to get that TrustedCerts.class file into the classes directory once you've deployed to the web app container.
  5. The script will prompt you to enter the following information: 

    1. Domino Server Address : <Enter domino server machine name /IP Address>
    2. Domino Server Port : <Enter the DIIOP port number , default is 63148>.
      Note: Domino server should have DIIOP server running; contact your Domino admin if DIIOP is not enabled on the server.
    3. Delegate User Id : <Enter the User Id of the delegate > 
    4. Delegate User Internet Password : <Enter the delegate password> 
      Note: Web services uses this delegate's credentials to login to the Domino Server to perform the calendar operation. Make sure the delegate account is created before deploying. Also make sure that the delegate is assigned an Internet password and that the password is the one utilized in the WAR file.
    5. Enter Service Password : <Enter the service password>
      Note: this is the same password that is entered as service password while configuring the groupware server. The password is encrypted for security.
  6. Once the above configuration is entered, a groupware.war file is generated in same directory, deploy this war on the web server. For Tomcat, you simply need to copy this WAR file in the \webapps directory and restart the Tomcat Server.

To test whether the deployment was successful, restart the Tomcat Server and go to the following URL: 

http://localhost:8080/groupware/services/groupware 

 or 

http://<Macine name/IP address>:8080/groupware/services/groupware

In order to configure a Customer Groupware Server Configuration, we need the following information:

  • Web Services endpoint URL (e.g., http://10.5.3.239:8080/groupware/services/groupware)
  • Three or Four email addresses
    • Randomly selected from users to whom permissions for the delegate account have been applied
    • Used in testing application of the permissions
  • Send to travelcustomersuccess@deem.com and to your Activation Manager or Deployment Manager.
  • Send Service Password only to travelcustomersuccess@deem.com, or send a request to contact you and get the password over the phone.


Applying Delegate Permissions Using the Delegate Utility

Before running the following script, make sure that all the user ids or email ids for whom the delegate needs to be set are listed in a file called <users>. Each id should be listed in a new line. For the utility to work, all the users listed in the users file should have the "maximum internet name and password" setting set to Manager Level. In the Domino Administrator Console, this setting is in the user's ACL manage screen under Advanced tab. Alternatively the same setting can be set on the mail folder to take effect on all the users’ mail files in the folder.

Note: The “maximum internet name and password” only needs to be set to “Manager” level while the delegate permissions are being applied by the delegate utility. Once permissions are set, this setting can be reverted back to its original level.

  1. Run the Delegate Utility located provided in the downloaded TAR files.
    1. On Unix/Linux run the script delegateSetupUtil.sh
    2. On Windows run the script delegateSetupUtil.bat
  2. The script will prompt you to enter the following information:
    1. Domino Server Address : <Enter the Domino server machine name /IP Address>
    2. Domino DIIOP Port : <Enter the DIIOP port number , default is 63148> (Note : Domino server should have DIIOP server running , contact domino admin if DIIOP is not enabled on the server)
    3. Delegate Id : <Enter the User Id of the delegate >
    4. Delegate Domain: <Enter the delegate users domain >
    5. Administrator Id : <Enter the Domino Administrators user id>
    6. Administrator Password : <Enter the Domino Administrators Password>

The utility creates an ACL entry with the following permission for the entered delegateID/delegateDomain for all the line delimited users listed in <users> file:

  • User Type: Person
  • Access: No Access
  • Read Public documents - true
  • Write public documents <96> true
  • Rest all are set to false.

If the user already has the ACL set for the delegateID/delegateDomain set, then it will update the ACL with above permission set.

Applying Delegate Permissions Using Domino Administrator

Rather than using the delegate utility provided, the delegate permissions can be applied using Domino Administrator by following these steps:

  • Once in Domino Administrator, drill down to the mail file (Or mail folder if applying to all users) you wish to set permissions for.
  • Choose ACL>Manage to access ACL for user (Or folder).
  • Click Add… to add the delegate account to the user’s (Or folder’s) ACL.
  • Once delegate account is added, under Attributes select No Access.
  • Click Read public documents and Write public documents.

Enabling the Groupware Server in the Partner Dashboard

The Deem Activations team or your system administrator enables enterprise groupware in the Partner Dashboard by following these steps:

  1. Log into the Partner Dashboard as the site administrator. 
  2. Click the Groupware Servers link under the Settings tab.
  3. Click the Add Server link to show the Add Server page and add a server, or click the link for an existing groupware server to show the Edit Server page and edit the server’s settings.
  4. If adding a server, enter a Server or Gateway name for easy identification when choosing servers for groups. 
  5. Choose the server type from the Server Type drop-down menu: Lotus Notes Integration Service.
  6. Click the Save button to save the server settings.
  7. To commit these changes, click the green Changes not applied link in the top right corner of the page, and then click the Commit button.

Assigning the Groupware Rule to a Group

To assign the groupware rule to the group, follow these steps:

  1. Log into the Partner Dashboard as the site administrator.
  2. Click the Rules tab, and then click the Groupware Rules link.
  3. Click the Add button next to the group name (or the Everyone group).
  4. Enter a Rule Description that describes the intent of this rule, and click the Activate Rule checkbox.
  5. Scroll down to the “Then” section of the page, and click the “Enable groupware access” checkbox.
  6. Select the server or gateway name (the name you entered in Step 4 in the previous steps for adding the groupware server) from the Use Groupware Server drop-down menu, and click the “Enable calendar updates on this server” and “Enable address book lookups on this server” checkboxes.
  7. Click the Save button to save the settings.
  8. To commit these changes, click the Changes not applied link in the top right corner of the page, and then click the Commit button.


Web Services SOAP API

The Web Services for add, delete, and modify events are illustrated in the Web Services SOAP API.