Lotus cc:Mail and Exchange 2000 Server Coexistence and Migration

Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Updated : June 14, 2001

Version 3.0

Configuration and Implementation White Paper

Paul Bowden
(pbowden@microsoft.com)
Exchange Server Product Unit

Greg Dodge
(gregdod@microsoft.com)
EC3 Enterprise Directory Team

On This Page

Abstract
Introductions
Assumptions
What You Should Know Before Moving Forward
Before You Start
Exchange 2000 Connector for Lotus cc:Mail Architecture
Configuring the Exchange 2000 Connector for Lotus cc:Mail
Migration From Lotus cc:Mail to Exchange 2000 Server
Exchange 2000 Server Connector for Lotus cc:Mail Registry Entries
Exchange 2000 Server Connector for Lotus cc:Mail Quick List

Abstract

This document provides an in-depth discussion of Microsoft® Exchange 2000 Server Connector for Lotus cc:Mail and the migration tools supplied with Microsoft® Exchange 2000 Server. This paper also discusses the process of converting Lotus cc:Mail users to Exchange 2000 Server. The intended audience for this document is consultants and systems integrators who are considering linking a Lotus cc:Mail environment with Exchange 2000 Server or who must migrate from Lotus cc:Mail to Exchange 2000 Server. Correct configuration and implementation is important in mail system coexistence and migration.

Special thanks goes to Neil Koorland from the Exchange development team and Andy Moss, Brian Thompson, and Jeff Grewal (PSS) for their clarification of points presented in this paper. Thanks also goes to Matt Fender, Steve Kelly, Wilson Sinclair, and Scott Anderson for discovering practical problems at the coal-face and contributing materials; this experience has been incorporated into the paper.

Introductions

Guide to Coexistence and Migration

This white paper helps consultants and system integrators perform a "marriage" between the Lotus cc:Mail environment and Microsoft® Exchange 2000 Server. The main aim of this document is to explain the process of connecting the two mail systems and also guide when necessary configuration changes have to be made to achieve the "perfect marriage".

You must consider many issues before installing Exchange 2000 Server and Microsoft® Exchange 2000 Connector for Lotus cc:Mail, including the following:

  • What do I want to achieve: coexistence or migration?

  • What are the business requirements?

  • What are the technical requirements?

This paper concentrates on technical aspects of the product and is based on Lotus cc:Mail Version 6.x or 8.x using a DB6 or DB8 database migrating to Exchange 2000 Server

Assumptions

Microsoft Exchange 2000 Server

This paper assumes that readers have a thorough knowledge of Microsoft Exchange 2000 Server and that they understand the architecture that Exchange 2000 Server employs, such as the message transfer agent (MTA), Microsoft Active Directory™ directory service, and Web Storage Services. It is also assumed that readers have a good knowledge of Exchange 2000 connectors and their use.

It is best to read this paper before you deploy an Exchange 2000 Server, but the paper does cover topics that might assist those who have already begun their migration. This paper does not cover the best practices for building and deploying Exchange 2000 in your environment, because there are plenty of excellent white papers available on those subjects. Before you start your migration, you should plan and implement Windows 2000, Active Directory, and Exchange 2000 in your environment.

Lotus cc:Mail

This paper assumes you have some experience with Lotus cc:Mail. If you have access to the Lotus cc:Mail manuals, they provide a good background to some advanced topics in this paper, especially the subjects of Lotus cc:Mail Automatic Directory Exchange (ADE) relationships and the utilities you need to prepare your system for migration.

What You Should Know Before Moving Forward

Lotus cc:Mail

Lotus cc:Mail is a product that has been around for many years. In fact, Lotus cc:Mail was a separate company based out of Mountain View, California, until Lotus Development purchased it. Recently Lotus announced plans to discontinue the Lotus cc:Mail product line in three phases:

October 31, 2000 -- Lotus cc:Mail will be withdrawn from the market.

January 31, 2001 -- All Lotus cc:Mail development will cease.

October 31, 2001 -- Lotus cc:Mail telephone support will cease.

The Lotus cc:Mail product suite has evolved over the years, so one of the first tasks is to understand what the version numbers mean. The Lotus cc:Mail product is made up of a number of components, ranging from front-end clients to back-end databases to gateways and monitoring programs.

The post office database is essentially a set of files held in one file directory that is normally called \ccdata. Because Lotus cc:Mail uses a shared-file architecture, the files can be located on any type of server operating system that supports sharing files and locking records. Most Lotus cc:Mail post offices in use today are found in Novell NetWare, Microsoft Windows NT, Windows 2000, or IBM OS/2 environments. The 32-bit versions are of particular interest, because many Lotus cc:Mail service and maintenance utilities come in three forms: DOS, 32-Bit Windows, and OS/2. By looking through the \ccadmin directory, you will generally see programs such as Reclaim.exe, Reclaim2.exe and Reclaim32.exe. All file names appended with "2" are OS/2 versions of that utility, and all files ending in "32" are 32-bit Windows versions.

Before you attempt to link Lotus cc:Mail and Microsoft® Exchange 2000 Server, it is very important to understand the version numbers of Lotus cc:Mail, as they can cause confusion. When you configure Microsoft Exchange 2000 Connector for Lotus cc:Mail, you must select the correct options so that the two systems can interoperate properly.

Post office database versions

Database version

Platform suite

Comments

DB5

Lotus cc:Mail 3.x for DOS

This database structure is now more than eight years old. Although some companies might still use this version, it is uncommon because it is not year 2000 compliant.

DB6

Lotus cc:Mail 4.x for DOS
Lotus cc:Mail 1.x for Windows
Lotus cc:Mail 2.x for Windows
Lotus cc:Mail 6.x for Windows

This is the most common database structure and the version that you are likely to find, although it is not year 2000 compliant either.

DB7

cc:Mobile 2.x
cc:Mobile 6.x

Although the physical structure of this database is very similar to DB6, only one user can log on, and so it is for only remote products.

DB8

Lotus cc:Mail 6.x for Windows
Lotus cc:Mail 8.x for Windows
(It should be noted that Lotus cc:Mail 6.x for Windows can also communicate with DB6 as well as DB8 Post Offices)

This version is relatively new, launched in the summer of 1996. The file structures look much different from the other database versions. It is the only version that is fully year 2000 compliant.

How do I find out the database version number?

It should be easy to discover which post office version you have. To find out, you can use the Analyze.exe utility, or you can look at the files in the \ccdata directory. Note that the post office files are not required to be in the \ccdata directory called ''; but it is the default location.

Telltale signs

  • DB5

    1. The customer tells you that they haven't upgraded for eight or more years.

    2. You can't find Analyze.exe in the \ccadmin directory (Analyze.exe wasn't shipped with DB5).

    3. The customer uses a program called Gateway, which was the name for the router message transfer agent (MTA) program before Lotus renamed it.

      Note: The Exchange 2000 Connector for Lotus cc:Mail Connector in Exchange 2000 cannot communicate with DB5 post offices.

  • DB6

    1. There are files in the \ccdata directory with the following names:

      MLANDATA

      CLANDATA

      NFTERROR.LOG

      USRxxxxx

    2. The Lotus cc:Mail for Windows 2.x or 6.x client is being used on the desktop.

    3. Analyze.exe reports database version 6.

  • DB7

    1. cc:Mobile is installed on the computer.

    2. There is only one USRxxxxx file in the \ccdata directory.

    3. You cannot log on to the post office by using the Admin.exe program.

  • DB8 (8.x)

    1. There are files in the \ccdata directory with the following names:

      CCPOMS.xx

      CCPODS.xx

    2. The Lotus cc:Mail for Windows 6.x or 8.x client is being used on the desktop.

    3. Analyze(32).exe reports database version 8.x.

What is Analyze(32).EXE?

Analyze(32).exe is primarily a utility that is used inside Lotus to check the integrity of the file structures and to identify a corrupt post office. The beauty of this utility, unlike CHKSTAT, RECLAIM, and others, is that you do not need a password to run it. All the Lotus cc:Mail utilities support the '/?' help switch.

What are all the files in the \ccdata directory?

This paper does not discuss the underlying file architecture for Lotus cc:Mail. However, you might find understanding what each file is used for useful when troubleshooting. Because the file sets of DB6 and DB8 are very different, both versions are listed. The following table does not list all the files, but rather gives an overview of the major files that make up a post office.

DB6 Post offices

File name

Purpose

MLANDATA

Message database. Every message that exists in a user's mailbox or bulletin board is housed in this single file. Lotus cc:Mail uses single-instance storage and is very much like Exchange 2000 Server in its storage nature.

CLANDATA

Post office information, directory, and message index. This file has many different functions. The first sector (512 bytes) holds the post office name and password; the second sector stores the encryption key. The rest of the file is used for message allocation tables, the main directory list, and the master pointer index to the messages in MLANDATA.

USRxxxxx

Each user has a USR file. These are numbered logically (hexadecimal). This file holds information such as the user's name, password, private folder names, and pointers to messages held in MLANDATA.

NFTCHECK

A dummy file that is always 512 bytes in size. When a Lotus cc:Mail client logs on to a post office, data is written, read back, and compared to verify that the connection is good.

NFTERROR.LOG

Logs any serious errors. These can include read and write errors. Generally, errors found in this log can be attributed to network problems or post office corruption. Exchange 2000 Connector for Lotus cc:Mail might also log errors here.

CCPODOWN

A dummy file (normally zero bytes) that indicates that a post office is shut down. Each Lotus cc:Mail component checks this upon logon and backs out if necessary.

TRANSIT.LOG

Used by Lotus cc:Mail routers for tracking which queues are being worked on.

DB8 (8.x) Post offices

File name

Purpose

CCPOMS.xx

Message store. The equivalent of MLANDATA in DB6. The file extension changes depending on the post office version. The version refers to when the post office was last defragmented or RECLAIM'd.

CCPODS.xx

The post office name, password, encryption key, and master directory.

CCPOMI.xx

The allocation tables and master message pointer index.

Unnnnnnn.xx

User's name, password, private folder names, and pointers to the master list.

CCNFT.LOG

Equivalent of the NFTERROR.LOG in DB6.

How does this affect Exchange 2000 Server?

Exchange 2000 Server Connector for Lotus cc:Mail uses a Lotus-compatible format to aid message transfer and directory synchronization. The utilities that Exchange 2000 Connector for Lotus cc:Mail uses are called Import.exe and Export.exe, and they can be obtained from the Lotus cc:Mail Software CD (or Lotus). Because there are different versions of the post office database, there are different versions of Import and Export, and the syntax is slightly different between them. Unfortunately, Import and Export have their own version numbering, so you will have to match the correct Import and Export release with the post office database.

IMPORT / EXPORT version

Post Office Database

IMPORT 5.15 / Export 5.14

DB6

IMPORT 6.0 / Export 6.0

DB8

IMPORT 8.0 / Export 8.0

DB8

IMPORT 8.5 / Export 8.5

DB8.1

Note: Because DB6 is not year 2000 compliant, Microsoft does not support date-related issues when trying to migrate from this database version. Fortunately, the tools and procedures in this paper successfully migrate the data from this database version.

Before You Start

At this stage, you must consider the question: What do I need to achieve?

Possible answers:

  1. I have an existing Lotus cc:Mail system and I need to interoperate with an existing Microsoft® Exchange 2000 Server network. For example, two companies have merged, or business partners require better integration than SMTP mail can provide.

  2. I want to create a message switching service among the many messaging systems that my company uses.

  3. I have a reasonably small (less than 10 post offices) existing Lotus cc:Mail network, and I want to migrate everything to Exchange 2000 Server.

  4. I have a medium or large existing Lotus cc:Mail network, and I want to migrate everything to Exchange 2000 Server.

This list is obviously not exhaustive, but you likely fall into one of these categories and must proceed accordingly. For example, if you chose answer 1 or 2, your first priority is to set up one or more Microsoft® Exchange 2000 Connectors for Lotus cc:Mail in your Exchange 2000 Server network. Then you can work on full migration by October of 2001. If you answered 3, you might be able to move everyone to Exchange 2000 in one step (depending upon the business), so you will want to know more about the process of migration than about Exchange 2000 Connector for Lotus cc:Mail. Finally, if you answered 4, you must implement one or more Exchange 2000 Server Connectors for Lotus cc:Mail in your Exchange 2000 Server network and think of migration at the same time. If you have a large Lotus cc:Mail network, it might not possible to migrate everyone to Exchange 2000 in a weekend, but this approach is sometimes viable with due diligence and risk mitigation.

Exchange 2000 Connector for Lotus cc:Mail Architecture

With Microsoft® Exchange Server version 4.0, released in 1996, if you wanted to communicate with a Lotus cc:Mail system, you had to use a common protocol that was supported by both systems (for example, Simple Mail Transfer Protocol [SMTP] or X.400), use a third-party product, or write your own. The cheapest route was to use a common protocol. The problem here is that it was very difficult to perform directory synchronization, and most companies either entered the address on each mail message or manually entered the addresses in the administrator program of each system. Exchange Server 5.5 released the first version of Microsoft® Exchange Server Connector for Lotus cc:Mail, which provides messaging and directory coexistence. Customers have used the Exchange 5.5 version of Exchange Connector for Lotus cc:Mail to coexist and to migrate millions of Lotus cc:Mail users to Exchange.

Exchange 2000 Server simplifies the whole process by providing a native Exchange Server Connector for Lotus cc:Mail in both the Standard and Enterprise editions of the product. Exchange 2000 Connector for Lotus cc:Mail builds on the features of the previous connector included with Exchange 5.5, with new features like integration with the Active Directory™ service for Microsoft® Windows® 2000 and upgraded version compliance. It is very easy to understand its architecture, especially if you have used the Import and Export programs with Lotus cc:Mail before. Exchange 2000 Server automatically executes the EXPORT utility to extract information out of the Lotus cc:Mail post office into plain, but structured, text. The Exchange 2000 Connector for Lotus cc:Mail can also write information into the format for the Lotus cc:Mail Import program, so two-way message communication is possible. Because the user directory can also be extracted and parsed with the same programs, it is also possible to synchronize directories between the two systems.

Is Exchange 2000 Connector for Lotus cc:Mail Connector similar to the Microsoft Mail Connector?

The job of Exchange 2000 Connector for Lotus cc:Mail is to move messages from the Exchange 2000 Information Store into the Lotus cc:Mail post office, and Microsoft® Mail Connector does a similar job (although obviously it moves messages to Microsoft Mail postoffices instead). If you look at the architectures of the two connectors, you find that they are very different. Exchange 2000 Connector for Lotus cc:Mail is different from Microsoft Mail Connector in the following ways:

  • No shadow post office

    The Microsoft Mail Connector translates messages from the Exchange 2000 Information Store and places them in a temporary routing postoffice that is like a Microsoft Mail postoffice. The Exchange 2000 Connector for Lotus cc:Mail Connector translates messages and places them directly into the destination Lotus cc:Mail post office.

  • No router MTA

    With Microsoft Mail Connector, once the message is in the shadow postoffice, a configured message transfer agent (MTA) moves it to the destination Microsoft Mail post office. Because the Exchange 2000 Connector for Lotus cc:Mail Connector does not use a shadow post office, no MTA is necessary.

  • One post office connection only

    Microsoft Mail Connector allows connection to many Microsoft Mail post offices, whereas the Lotus cc:Mail Connector can communicate with only one Lotus cc:Mail post office. This means that Exchange 2000 must funnel messages to one post office, and then Lotus cc:Mail carries out onward routing.

  • Does not support Asynchronous or X.25 connections

    The Lotus cc:Mail post office that the Exchange 2000 Server communicates with must be available on the LAN or WAN. The criterion for connectivity is based upon the ability of connecting to the share point for the \ccdata directory.

The Exchange 2000 Connector for Lotus cc:Mail directory structure

Usually, Exchange 2000 Server is installed in the exchsrvr directory on one of the server's hard disks. In this folder is a directory called ccmcdata, which holds all the structured text files in transit and some configuration information. ccmcdata has several subdirectories All these subdirectories have a purpose, but until Exchange 2000 Connector for Lotus cc:Mail is run for the first time they do not exist or are empty:

Subdirectory of \ccmcdata:

Purpose

Bad

Holds messages that are not in the normal, consistent structure. Entries in here are corrupt.

Export

Messages that have been exported from the Lotus cc:Mail post office.

Export.bak

Copies of messages that have been exported. Entries will only appear here if the relevant Registry flag is set.

Import

Messages to be imported into the Lotus cc:Mail post office

Import.bak

Copies of messages that have been imported. Entries will only appear here if the relevant Registry flag is set.

Submit

Temporary working directory for message submission from Exchange.

In addition to these basic directories, the Dirsync directory might appear after you configure Exchange 2000 Connector for Lotus cc:Mail.

The Exchange 2000 Server Connector for Lotus cc:Mail Registry entries

Much of the configuration information for the Exchange 2000 Server Connector for Lotus cc:Mail is held in the Registry. From this, special .ini files are built and placed in \ccmcdata. These files are used for automating the import and export processes.

The Exchange 2000 Server Connector for Lotus cc:Mail uses the Registry values held under:

HKEY_LOCAL_MACHINE

SYSTEM

CurrentControlSet

Services

MSExchangeCCMC

In the majority of cases, any entries that need to be adjusted are underneath the Parameters sub-key. Alterations to these values are discussed later in this document.

Message routing from Exchange 2000 to Lotus cc:Mail

The diagram below shows the whole process of routing a message from Exchange 2000 Server to a Lotus cc:Mail post office.

For example, a user on the Microsoft Exchange 2000 Server sends a message to a user on Lotus cc:Mail.

  1. The Exchange 2000 user composes a message and addresses it to the Lotus cc:Mail user either by choosing the name if Dir Synch has been implemented between the two systems or by typing in the Lotus cc:Mail address in the To box of the Exchange 2000 message.

    [CCMAIL: Jim Beam at PO1]

  2. The Exchange 2000 Information Store receives the message, evaluates the address, identifies that it is not a local recipient, and passes it to the MTA for routing.

  3. The Exchange 2000 MTA evaluates the address in the To box. If appropriate, the MTA replaces the recipient name with information from the Exchange 2000 directory. It then uses the routing tablesto work out which connector can accept this type of message, and then moves it to the Lotus cc:Mail MTS-OUT queue, which is part of the Private Information Store.

  4. Exchange 2000 Server Connector for Lotus cc:Mail then retrieves the message from MTS-OUT and converts the envelope, text, and any body parts into a structured format. While converting, the data is written into a .tmp file in the \ccmcdata\submit directory. After it is written in its entirety, the file is renamed with a .ccm extension and then moved to \ccmcdata\import. If there are multiple messages to be transferred, each message is submitted individually; therefore, multiple files are written to disk.

  5. The Import.exe program is set to run on a schedule (default of every 15 seconds). Using special parameters defined in the Registry, it imports the message into the Lotus cc:Mail post office and updates the Lotus cc:Mail user's pointer file. Import executes only if there are messages to pass to Lotus cc:Mail; therefore, the 15-second period can be considered as a check time. Because the Import program was written for MS-DOS®, a Virtual DOS Machine (NTVDM) is spawned for this process.

  6. The Lotus cc:Mail client polls the post office (every 6 minutes, by default) and retrieves the message header. The other scenario is where the message is destined for a downstream post office. In this case, a Lotus cc:Mail router MTA transfers the message to its destination.

Message routing from Lotus cc:Mail to Exchange 2000

A similar process is used to transfer messages from Lotus cc:Mail to the computer running Exchange 2000 Server.

For example, a user on Lotus cc:Mail sends a message to a user on Exchange 2000 Server.

  1. The Lotus cc:Mail user composes a message and addresses it to the Exchange 2000 user either by choosing the name from the directory if Directory Synchronization (Dir Synch) has been implemented or by typing in the Exchange 2000 address manually. The latter usually involves the Lotus cc:Mail user selecting the post office entry that relates to Exchange 2000 (default is the Exchange Site name). The user can then type in the Lotus cc:Mail proxy address of the Exchange 2000 user. If the Lotus cc:Mail user enters the name in Last Name, First Name format the message generally fails. This is because Lotus cc:Mail switches the name to First Name Last Name format. Because this does not match the Lotus cc:Mail proxy address that has been generated for the Exchange 2000 user, the message cannot be delivered (more on this later). At a basic level, to overcome this problem, the Lotus cc:Mail user should prefix the address with an additional comma (,Bowden, Paul) or implement Dir Synch.

  2. The message then resides in the Lotus cc:Mail to Exchange 2000 post office queue, waiting for the EXPORT program to run. EXPORT runs against the post office every 15 seconds by default. EXPORT physically runs even if no messages are waiting in the queue. Exchange 2000 Server spawns an NTVDM to execute Export.exe.

  3. The export process extracts the queued messages and writes them into a .ccm file in the \ccmcdata\export directory. Multiple Lotus cc:Mail messages can reside in the same .ccm file

  4. Exchange 2000 Server Connector for Lotus cc:Mail then processes the messages that have been exported. This involves converting them to an Exchange 2000-compatible format and placing them in the MTS-IN queue in the Private Information Store.

  5. The Exchange 2000 MTA extracts the message, looks at the header, and replaces the data with Exchange 2000 directory information, if available. The MTA then passes the message back to the Store or routes the message to another Exchange 2000 Server for final delivery.

Configuring the Exchange 2000 Connector for Lotus cc:Mail

Before you start

It is important that you learn how the Lotus cc:Mail network is configured before you implement Exchange 2000 Server Connector for Lotus cc:Mail. In fact, the default settings are fine if all you want to do is transfer messages between the two systems. But most of the time, you must also configure Directory Synchronization (Dir Synch), and most of the pitfalls lie here.

Following are suggestions for how to get started:

  1. Gather documentation on the existing Lotus cc:Mail network. Note the numbers of post offices, physical locations, which operating system they are on, gateways to other systems, and so forth.

  2. Gather documentation regarding the message routing configured between all the post offices. Find out how many router MTAs there are (Router.exe), and how they connect with each post office (Type 1 – Direct Drive mapping; Type 2 – Native Protocol, Asynchronous, or X.25). It is especially important to find out which post offices do all of the routing (Hubs).

  3. Find out whether and how the Automatic Directory Exchange (ADE) topology has been configured. In ADE, you find terms such as Superior, Subordinate, Peer, Broadcaster, Division' and 'Enterprise. Your ADE configuration is the most important part of understanding and configuring directory synchronization between Microsoft® Exchange 2000 Server and Lotus cc:Mail.

  4. Look at the address structuring inside the post office. Is it based on Last Name, First Name or First Name Last Name or some other custom format? Many post offices are based on the former, and you might want to change some entries in the Registry on Exchange 2000 Server (more on this subject later).

The connection point

You must consider where your computer running Exchange 2000 Server is going to link with the Lotus cc:Mail environment. Some companies are tempted to connect directly into a Lotus cc:Mail hub post office, but a more cautious approach is to connect Exchange 2000 Server to an isolation post office. This is almost like having a shadow postoffice in the Microsoft Mail environment. The isolation post office is located on the computer running Exchange 2000 Server, and you use the Lotus cc:Mail Router program (the version for Microsoft® Windows NT®, if possible) to route between this post office and the live Lotus cc:Mail environment. This is a very good approach, because you can keep Exchange 2000 one-step away from Lotus cc:Mail. It also helps if you are trying to troubleshoot problems. The isolation post office also allows you to look at how the Exchange 2000 directory has been synchronized with Lotus cc:Mail before publishing the changes to the rest of the Lotus cc:Mail network.

You should also consider the ADE environment and work out whether your Exchange 2000 users will be visible to all the Lotus cc:Mail post offices, and vice versa. If you implement the isolation post office, you will want to place it in a broadcaster or enterprise ADE relationship with the main Lotus cc:Mail hub post office. Many companies choose a broadcaster relationship, which provides the best fit for the majority of scenarios. If you use an enterprise relationship, you must implement the "Use ANR" registry switch for Exchange 2000 to create the Lotus cc:Mail addresses properly, as described in the registry entries appendix later in this document. In general, it is not a good idea to Dir Synch Exchange 2000 with a Lotus cc:Mail subordinate or peer post office, because Exchange 2000 users are not visible outside that local post office. It is important to understand that Lotus cc:Mail can be both a superior and subordinate (and others) at the same time. It depends on where the post office resides in the ADE hierarchy.

The other point of consideration is the database version that you use for the connecting post office. In general, DB8 provides more stability and robustness than DB6, and for a year-2000-compliant environment, you want to use the most recent DB8 post office. Lotus cc:Mail Administrators generally prefer DB8, because they can perform the maintenance online, and therefore they do not need to shut down the post office frequently for required maintenance. Exchange 2000 Server can communicate with both formats. As a word of warning, if the Lotus cc:Mail environment relies heavily on aliases, you should use a database format that matches the rest of the post office infrastructure, because these can cause problems if you mix the two versions. If you use the ccmc.exe program from Exchange 2000 Server, Exchange Server 5.5 Service Pack 1 (SP1), or Exchange Server 5.0 Service Pack 2 (SP2), you can use the "Use ANR" registry parameter to overcome this issue.

There are various rules that you should follow when implementing Exchange 2000 Server Connector for Lotus cc:Mail:

  • Each computer running Exchange 2000 Server can have only one Exchange 2000 Server Connector for Lotus cc:Mail.

  • You can implement as many Exchange 2000 Server Connectors for Lotus cc:Mail in the same Administrative Group as you have Servers.

  • You should not have two computers running Exchange 2000 Server in the same Administrative Group connected to the same Lotus cc:Mail post office.

  • Only one Exchange 2000 Server Connector for Lotus cc:Mail should have Dir Synch enabled. The rest should be pure messaging connectors (although you must manually change the routing path to Exchange 2000 in the Lotus cc:Mail environment because of the static nature of Lotus cc:Mail routes).

  • You should not implement dual Exchange 2000 Server Connectors for Lotus cc:Mail for fault tolerance unless you are prepared to manually adjust the Lotus cc:Mail post office routes in the event of a failure.

It is possible to break some of these rules, but careful configuration is required. You might even need to tidy up some entries manually or perform some nonstandard configuration work. You should make your choice very carefully and document the connection strategy.

Improving robustness

Lotus also supplies a utility called CCREGMOD that changes the way that Microsoft® Windows NT® Server implements its record-locking mechanism (oplocks) and network redirector write cache. Under certain circumstances, Microsoft® Windows® 2000 Server might try to write to a Lotus cc:Mail data file when another process has the exclusive lock. This results in post office corruption. Although newer releases of the Lotus cc:Mail Client program automatically adjust these parameters on execution, you must manually apply the CCREGMOD program, or add the following Registry parameters for each server running Exchange 2000 Server Connector for Lotus cc:Mail:

HKEY_LOCAL_MACHINE / System / CurrentControlSet / Services / LanmanWorkstation / Parameters

Value: UseOpportunisticLocking

Type: REG_DWORD
Data: 0

Value: UseNtCaching

Type: REG_DWORD
Value: 0

Note that you might notice some system performance degradation as a result of changing these Registry values. For maximum Exchange 2000 Server performance, run the Exchange 2000 Server Connector for Lotus cc:Mail on a dedicated computer, which will mitigate the performance hit of this setting.

The CCREGMOD program is available on newer releases of the Lotus cc:Mail software CD, or from the Lotus Web site at https://www.lotus.com/ccmail.

Improving performance

Because the Import and Export programs are used to facilitate message flow between the two environments, an NTVDM is created to execute these DOS-based utilities (every 15 seconds by default). Whenever a VDM is spawned under Windows NT, the contents of CONFIG.NT and AUTOEXEC.NT are processed. You can increase performance by removing unnecessary commands from these files. Examples are the virtual CD-ROM driver and virtual network protocol drivers (if you use a local Isolation post office). You might also increase the time period to prevent Import and Export from running too frequently. This decreases the load on the server.

If you are going to set up a test connector

Many people prefer to try out the Exchange 2000 Server Connector for Lotus cc:Mail before using it with a live system. This method is generally used to find out if there are any limitations, any pitfalls, or just to make sure that understanding of the system is correct. If you try this, be aware of the following two common problems:

  1. When you set up a test Lotus cc:Mail post office, you can create it dynamically by specifying all the necessary parameters on one command line. For example:

ADMIN /NTEST-PO /P12345 /Dc:\ccdata

There is a bug in version 5.12 of the Lotus cc:Mail Admin.exe program (which is used to set up a DB6 post office). With this bug, the post office is created successfully and new entries can be entered, but the post office name and password are automatically corrupted. This means that if you try to get the Exchange 2000 Server Connector for Lotus cc:Mail running, it won't work. Also, when you log out of the Lotus cc:Mail Administrator program and try to log in again, you can't.

Therefore, always create post offices interactively by running Admin.exe on its own, and then specifying the name, password, and directory when prompted.
  1. On the Exchange 2000 Server Connector for Lotus cc:Mail Post Office tab is a check box for "Permit ADE to propagate entries synched to Lotus cc:Mail to downstream post offices". By default, this is selected. This is fine if ADE is enabled on the test post office with the "/DIRPROP/Y" switch, but otherwise an error results.

Lotus cc:Mail Connector configuration and Import/Export

It is very simple to configure the Lotus cc:Mail Connector. There are only nine tabs in all, and for simple messaging, only two require configuration information. Before you set up the connector, it is important that you copy the Import.exe and Export.exe programs to the local computer running Exchange Server (you need a license to use these). Normally, these programs can be found in the \ccadmin directory on most Lotus cc:Mail systems. You have three choices about where you put these programs. Put them in the path for Windows 2000, put them in a directory and modify the existing path, or adjust the following Registry entries:

Export.exe

path to Export.exe

Import.exe

path to Import.exe

If you are dealing with Import and Export version 6.x or 8.x (DB8), you also must copy the Language resource file Ie.ri for version 6.x or impexp.ri for versions 8.03 and later .to the appropriate directory. It is generally better to place these files in the system path rather than adjust the Registry, because Microsoft Exchange Server Migration Wizard requires these files to be in the path if you are going to perform a migration.

If you use the 8.5 versions of the Import and Export utilities, you must make special consideration. Lotus changed these versions of the utilities to run interactively as 32-Bit Microsoft® Windows® programs instead of on a command line, which creates issues with Exchange 2000 Server Connector for Lotus cc:Mail and the migration wizard. Exchange 2000 and Exchange server 5.5 Service Pack 3 (SP3) contain fixes to allow the migration wizard to work with the newer versions of these utilities, but to have them work properly with Exchange 2000 Server Connector for Lotus cc:Mail, you must take the following steps:

To run Exchange Connector for Lotus cc:Mail with the new Lotus cc:Mail 8.5 post office and Import and Export utilities:

  1. Stop Exchange Connector for Lotus cc:Mail.

  2. Rename the Import32.exe and Export32.exe files to Import.exe and Export.exe, respectively.

  3. Copy the Import.exe, Export.exe, Cdmw800.dll, Cfw803.dll, and Ciw803.dll files to a directory that is in the path of the computer running Exchange Server, for example, the Winnt directory.

  4. Copy the ie.ri/Impexp.ri file to the <drive>\Exchsrvr\Ccmcdata directory.

  5. Restart Exchange Connector for Lotus cc:Mail.

The connector functions normally, including directory synchronization.

Configuring Exchange 2000 Server Connector for Lotus cc:Mail property pages

If you installed Exchange 2000 Server Connector for Lotus cc:Mail component when you installed Exchange 2000 Server, you can access the Lotus cc:Mail property pages from Exchange System Manager component, available from the Exchange menu. See the following figure for an example of the Exchange 2000 Server Connector for Lotus cc:Mail location in Exchange System Manager.

Cc767109.ccmigrat01(en-us,TechNet.10).gif

Post Office configuration tab

The Post Office configuration tab allows you to specify the following information:

  • The administrator's mailbox

  • Which Lotus cc:Mail post office to communicate with

  • The language setting for the post office

  • Secondary ADE propagation options

  • Preservation of forwarding information in messages

  • Which Windows 2000 account to use to connect to the path

Cc767109.ccmigrat02(en-us,TechNet.10).gif

Post office name and path

It is easy to enter the post office name (which can be as many as 126 characters in length, including spaces and other punctuation) and the post office password. The path must be specified according to universal naming convention (UNC). This format is easy to work out if you are dealing with Windows NT or Windows 2000 file servers, but if the Lotus cc:Mail post office is located on a Novell NetWare server you must ensure the following:

  • Gateway Services for NetWare has been installed on the computer running Exchange 2000 Server.

  • The frame types have been set correctly.

  • A NetWare account has been created for a Windows 2000 Services Account, and the passwords have been set up appropriately.

  • The account created on NetWare is specified in the Lotus cc:Mail configuration property page as shown in the previous figure.

  • The UNC path includes the NetWare server name and volume, for example:

    \\Netware1\sys\ccmail\ccdata

Post office password

Although the password field is relatively straightforward, it can cause problems if you do not understand it completely. When Exchange 2000 Server Connector for Lotus cc:Mail exports from Lotus cc:Mail, it uses the security context of the Lotus cc:Mail to Exchange queue, not the context of the Lotus cc:Mail post office password. Every local account in a Lotus cc:Mail post office has a password; this includes mailboxes, mobile users, and directly connected post offices. If you manually create a post office (P) entry in Lotus cc:Mail, by default it has no password associated with it (null). The first time that Exchange 2000 Server Connector for Lotus cc:Mail communicates with the post office, the password specified on the Post Office tab is applied to that post office entry. Therefore, any subsequent attempts to access the post office under this context require the same password. Thus, if you want to change the password in the future, you must make the change on the Post Office tab of the Connector, change the post office password from the Lotus cc:Mail administrator program, and then change the Lotus cc:Mail to Exchange post office entry.

Post office language

The post office language should match the language setting on a DB8 post office, but even with DB6, you should make sure that the correct language is specified. The post office language is important for code page translation.

Other options

The Enable message tracking option allows Exchange 2000 Server to track messages as they flow in and out of the connector. This option no longer is configured on the Exchange 2000 Connector for Lotus cc:Mail property pages, but is turned on by enabling message tracking on the server object in the Exchange 2000 system manager application. These messages can be viewed in the Message Tracking Center.

The Permit ADE to propagate entries synched to cc:Mail downstream post offices option is very important. When selected (as it is by default), any Exchange 2000 directory entries that are propagated to the Lotus cc:Mail post office directory will be repropagated via Lotus cc:Mail ADE to other post offices if the necessary relationships are established between those post offices. In Lotus cc:Mail terms, this function is performing a directory import with the /PROP switch. If the post office that you are communicating with does not have ADE enabled, or if you wish to stop the Exchange 2000 directory entries from propagating to any other post offices, apart from the post office that you are directly connecting with, clear the check box. For Lotus cc:Mail versions 8.0 and later, this option has no effect on propagation, because they use a newer version of ADE that repropagates entries regardless of this setting.

Cc767109.ccmigrat03(en-us,TechNet.10).gif

Secondary propagation flag on (default)

Cc767109.ccmigrat04(en-us,TechNet.10).gif

Secondary propagation flag off

You still cannot be absolutely sure that your Exchange 2000 directory entries are going to be propagated to other post offices even with the secondary propagation flag on. Lotus cc:Mail ADE supports a whole range of propagation relationships, and some (such as superior, subordinate, and broadcaster) allow the Exchange 2000 directory to pass through, but others specify that nonlocal entries received from another post office (in this case, Exchange) should not be propagated (peer-to-peer relationships, for example).

The Preserve forwarding history on messages sent from cc:Mail to Microsoft Exchange option should be selected if you want to encapsulate the forward information generated by Lotus cc:Mail into a forward.txt file that will be seen by the Exchange client.

General configuration tab

Use the General tab to enter information such as an Administrative note. Previously you could also use this tab to set a message size limit on Exchange 2000 Connector for Lotus cc:Mail, but that option is now on the Advanced configuration property page.

Note: Microsoft Exchange 2000 only supports message size restriction when sending messages from Exchange to Lotus cc:Mail.

Address Space tab

Use the Address Space tab to define the routes from the Exchange Server network to each of the Lotus cc:Mail post offices with which you want to communicate. The Address Space tab is a standard Microsoft Exchange Server feature and appears on all connectors. However, it is important to note the format that the address space takes.

Here you would add a new Lotus cc:Mail address type, with options for mailbox and Post Office information. By using this, you can change the routing characteristics of this Exchange 2000 Server Connector for Lotus cc:Mail instance to handle only mail destined for one or more post offices in the Lotus cc:Mail system. The format is below:

CCMAIL: *

CCMAIL: * at PO1

CCMAIL: * at *

CCMAIL: * at PO??

Note that if you specify only one post office in the address space, you cannot send to any other post offices through this connector. An exception is pass-through addressing, when Exchange believes that the Lotus cc:Mail user is located on the connecting post office, but when sent, the message is rerouted to another post office queue.

Configuring the Lotus cc:Mail post office

If you want to implement Directory Synchronization between Microsoft Exchange and Lotus cc:Mail, you can bypass this configuration stage, because Exchange 2000 Server Connector for Lotus cc:Mail automatically creates the necessary queue entry on the Lotus cc:Mail post office. The post office name for Exchange is the name of the Lotus cc:Mail proxy on the Site Addressing tab. Lotus cc:Mail handles an Exchange Administrative Group as one large post office. The default proxy post office name is inherited from the Exchange Administrative Group name. The location code will be "P" (directly connected post office), and the address type will be blank, because the Lotus cc:Mail router is not involved.

Note: The Comments field for the Lotus cc:Mail to Exchange post office entry should be set to "MSExchangeCCMC <server name>". For example:

EXSITE1

P

MSExchangeCCMC PLUTO

Without this information, users deleted from the Exchange environment are not propagated to Lotus cc:Mail. Another symptom of not having the correct comments field is that Exchange sends the full directory to Lotus cc:Mail on each directory synchronization cycle.

If, on the other hand, you want to test messaging connectivity before implementing Directory Synchronization, you must log on to the Lotus cc:Mail post office and manually create the queue for Exchange (configuration as above). If there is a space embedded in your Exchange Administrative Group name, you might get a warning message when you try to create the Lotus cc:Mail queue. You can ignore this error message in this instance.

Starting Exchange Connector for Lotus cc:Mail

Before starting Exchange Connector for Lotus cc:Mail, it might be worth checking to make sure you have enabled a recipient policy to allow routing of messages to this Exchange 2000 Server Connector for Lotus cc:Mail connector. After you enter the basic information, you can start Exchange 2000 Connector for Lotus cc:Mail (from the Control Panel) and pass messages between the two systems. Any connection errors appear in the Event Log, so look there to make sure that everything is going smoothly.

If there are problems starting the connector, or if you would like to view the processes that are running, start the Ccmc.exe process from a Microsoft Windows NT command prompt. Exchange 2000 Server Connector for Lotus cc:Mail is unique because it has a user interface (UI) that you can view when you run it from a command prompt. The error messages are also affected by the severity settings on the Diagnostics Logging setting on the server object, and therefore the event viewer shows more information if logging is set to Maximum. This screen can be a great help when you need to troubleshoot the connector.

For troubleshooting, you can view the messages waiting to be exported by Exchange 2000 Server Connector for Lotus cc:Mail. Log on to the Exchange queue with the Lotus cc:Mail client. You can log on as any user that has a local USR or U file. Because connected post offices ("P" entries) have an associated pointer file, you can specify the queue name for logon. The password is the same as that used for Exchange 2000 Server Connector for Lotus cc:Mail (on the General tab). After logging on, you can see the messages waiting to be exported to the Exchange environment. If you read these messages, they won't be exported. If you want to read messages without affecting the queue, forward them to another account. This does not mark them as read. You can also use this technique to look at queues between Lotus cc:Mail post offices.

If zero byte files are being generated in the \ccmcdata\export directory (and they are stacking up), this indicates that Exchange 2000 Server Connector for Lotus cc:Mail is having problems contacting the post office. You can check this by looking in the Event Log. If this is the case, you might need to review your connector settings. This might also happen if the connecting post office is shut down for maintenance. In any case, these files must be cleaned up manually.

Even if Dir Synch isn't configured between the two systems, simply starting Exchange 2000 Server Connector for Lotus cc:Mail creates a directory called DIRSYNC, with two subdirectories called Import and Export, under \exchsrvr\ccmcdata. An Export.ini file is also created in \exchsrvr\ccmcdata. This .ini file takes on the standard parameter-passing format for the EXPORT program to use. The actual file looks similar to the following example:

[export]

CMD = "/EXSITE1" /D\\cpq-msg1\ccdata /END/16 /ITEMSIZE /FORMAT/FAN /BATCH /FILES/MACBIN2 /DATE/1 /CODEPAGE/850

[export2]

CMD = "/EXSITE1" /D\\cpq-msg1\ccdata /END/16 /ITEMSIZE /FORMAT/FAN /BATCH /FILES/MACBIN2 /DATE/1 /CODEPAGE/850

You can see that the Export program is told to pull messages from the queue name that relates to the Exchange Site.

Testing message connectivity

To send a message from an Exchange Client:

Type [CCMAIL: Jim Watkins at PO1] on the TO: line

To send a message from a Lotus cc:Mail Client:

  1. Compose a new message and select the Exchange Site name

  2. Type in the Lotus cc:Mail proxy address of the Exchange user. If Dir Synch is not configured, you must enter the Exchange name in ,Last Name, First Name format, because Lotus cc:Mail changes the format to First Name Last Name.

You will notice that when the first message has been sent from the Exchange client to a Lotus cc:Mail client, an Import.ini file is created under \exchsrvr\ccmcdata. This file should look something like the following:

[import]

CMD = "/PO1" /D\\cpq-msg1\ccdata /ITEMSIZE /PARTIAL /BATCH /FILES/MACBIN2 /DATE/1 /CODEPAGE/850

[import2]

CMD = "/PO1" /D\\cpq-msg1\ccdata /ITEMSIZE /PARTIAL /BATCH /FILES/MACBIN2 /DATE/1 /CODEPAGE/850

What level of interoperability can I expect?

Exchange 2000 Server Connector for Lotus cc:Mail is very functional and can retain most of the message properties generated by both mail systems. Of course, there are big differences in the facilities offered by Exchange and those offered by Lotus cc:Mail. There are obvious limitations; for example, Lotus cc:Mail users cannot access Public Folders. The following table should give you an idea of conversion interoperability:

Exchange Feature

Lotus cc:Mail Interpretation

TO: CC: BCC:

Interpreted correctly

Importance (Urgent, Normal, Low)

Urgent, Normal, Low

Message flags

Lost – no such feature in Lotus cc:Mail

Message sensitivity

Lost – no such feature in Lotus cc:Mail

Delivery Receipt

Lost – no such feature in Lotus cc:Mail

Read Receipt

Generated when message is read

Lotus cc:Mail Forms

Imported as .LFM file attachment that can be read if the application is loaded locally

File attachments

Correct – with associated file name(s)

Shortcuts

Translated to absolute path

Embedded URLs

Appears as plain text

Embedded OLE Objects

Separate attachment, can be launched with the appropriate viewer

Rich text (colors, fonts, etc.)

Lost

Text justification

Lost

Tabs

Converted to five spaces (can be adjusted in the Registry)

Special characters ($, @, %, £)

Translated correctly

Bullet points

Converted to asterisks

Embedded messages

Attached as additional text items

When you send mail messages from Lotus cc:Mail to Microsoft Exchange, generally, all the information is preserved in the way that you expect. The Lotus cc:Mail client is not as functional or as rich as the Exchange Client and the Microsoft® Outlook® Messaging and Collaboration client, so many features are not supported on message sending.

Using Exchange Server as a gateway

It is possible for Lotus cc:Mail clients to use Exchange Server as a gateway to other messaging worlds such as SMTP, X.400, and Fax. Because most of these facilities are built in to Exchange Server, it provides a reliable, robust, and inexpensive solution.

Perhaps the most important requirement is that Lotus cc:Mail users have full outbound and inbound Internet mail. You can accomplish this by configuring the Internet Mail Service (IMS) on one of the Exchange servers. One configuration issue might arise here: if a Lotus cc:Mail user attempts to send more than one attachment with a message through the IMS, the files fuse together. The recipient will notice that the Multipurpose Internet Mail Extensions (MIME) type is Application/MS-TNEF . The problem here has to do with rich text. By default, the IMS leaves the preservation of Rich Text Format (RTF) information to the sender; however, Lotus cc:Mail users have no way of specifying RTF preservation, so the IMS assumes that it should be preserved. The solution to this problem is to reconfigure the IMS so that it never sends rich text with the message. Although Internet recipients can now read file attachments, all messages, including those sent from Exchange users, have RTF information stripped. If this is unacceptable, a different solution is to have two Internet Mail Services: one for Lotus cc:Mail users, the other for Exchange users.

Implementing directory synchronization

The ability to transfer directories between Exchange Server and Lotus cc:Mail and to mail messages is the main function of Exchange 2000 Server Connector for Lotus cc:Mail. In other mail systems, you can often find a way of transferring mail information, but trying to get directory interoperability is a real challenge.

Inside Lotus cc:Mail, there are a number of ways to achieve directory coexistence. The first is to manually enter the names and addresses in each post office. The second is to take a snapshot of a directory by using the export command with the /DIRECTORY switch. This places the Lotus cc:Mail directory into a structured format in a text file. The file takes on the form of:

Name:

User's name (or post office queue name)

Locn:

Location code (L, R, P, A)

Addr:

Address (home post office or telephone number)

Cmts:

Comments field (up to 126 characters)

Name:

 

Locn:

 

Addr:

 

Cmts:

 

…etc

 

As you can see from this format, a single entity such as a user or post office queue name requires only four lines of the file. These records are ordered one after another and placed in a single file. This file can then be imported with the import command and the /DIRECTORY switch into another post office. Even though local ("L") users do not specifically have addresses (because they are local), when you perform an export, their home post office is placed on the Addr: line in the file. Through this process, a secondary post office can recognize this user as being local on another post office, rather than local on this post office.

Because manual imports and exports are time-consuming, there is a third method of directory propagation. This is known as Automatic Directory Exchange or ADE. ADE uses a concept similar to the Import and Export directory method. However, only changes are propagated, and the Lotus cc:Mail routers make the adjustments to the directory. Exchange Connector for Lotus cc:Mail does not use ADE, but it does support the sending of changes instead of the whole directory to the Lotus cc:Mail directory. Exchange Server accomplishes this by comparing the current Exchange directory to the Lotus cc:Mail directory.

For the purposes of completeness and usefulness when trying to integrate Exchange into a large Lotus cc:Mail system, the ADE process is described here.

The process of configuring automatic directory propagation between Lotus cc:Mail post offices is as follows:

  1. The administrators of each post office must turn ADE on by starting the Admin.exe program with the /DIRPROP/Y switch. On DB6 post offices, this creates a special bulletin board called ##Directory Updates, where all the updates are stored. On DB8 post offices, this is created upon post office installation.

  2. The administrators of each post office define an ADE relationship with each other, depending on the administrative requirements. They could implement superior/subordinate relationships, which means that one post office has the superior directory, and the other post office(s) a subordinate directory. All changes come from the superior directory, including mailbox creation and deletion. The other common type of relationship is broadcaster, which implies decentralized administrationand in which only the local users of each post office are propagated. There is no superior directory in this instance. There are many other relationships that can be defined, and you can make your own by setting individual propagation flags.

  3. The router call lists are configured to exchange directory updates as well as messages.

The actual act of propagating a directory entry is as follows:

  1. The administrator of one post office makes a change in the directory (for example, the administrator creates a local user called "Bloggs, Fred").

  2. When the administrator exits the administrator program, a message asks whether to propagate changes. If changes are not propagated, the user exists, but other post offices do not receive the change. If changes are propagated, a specially formatted message is written in the local ##Directory Updates bulletin board. The message (with no text body) is addressed to the administrator of the post office and has a single file attachment called CCMUPDAT (with no file extension). The contents of the CCMUPDAT file look similar to the following:

    Name: Bloggs, Fred

    Locn: L

    Addr: PO1

    Cmts: Extension 3459

  3. When the Lotus cc:Mail router of this post office next connects to the other post office, it searches through the ##Directory Updates Bulletin Board, looking for new additions.

  4. All the new messages (directory changes) are bundled into one CCMUPDAT file and filtered through the propagation relationship that has been set for the adjacent post office. Essentially, the router is trying to work out what updates it is allowed to send across.

  5. The CCMUPDAT file is passed between the two routers.

  6. The adjacent Lotus cc:Mail router receives the incoming update and passes it through the propagation relationship filter that has been set in respect to the sending post office. Essentially, this router is trying to work out what updates it should receive from this post office. To put this in perspective, the propagation relationships might be incorrectly configured (for example, superior to superior, which is invalid), and one post office might try to control the directory of the second post office. You can think of these propagation filters as a level of security.

  7. The changes that are allowed through are then applied online to the post office directory.

This is a simple process to understand. When a deletion occurs, the same process happens again, except that the update message has the Locn: field set to DL, which means "delete local user." The directory update messages are never automatically deleted from the ##Directory Updates Bulletin Board, so they must be manually deleted by the administrator or by an automated process (a single bulletin board can have up to 32,767 messages in it).

How directory synchronization really works

Microsoft Exchange Server synchronizes its directory with Lotus cc:Mail through an automated import and export procedure. It is a little like running the procedure manually between two Lotus cc:Mail post offices. Although manual imports and exports generally swap whole directories with each other, Exchange imports only changes into Lotus cc:Mail.

The Exchange 2000 Connector for Lotus cc:Mail Dir Synch process is as follows:

  1. Export the directory, mailing lists, and bulletin board from the connecting Lotus cc:Mail post office:

    Directory

    =

    EXPORT\CCMDIR.EXP

    Mailing Lists

    =

    EXPORT\CCMLIST.EXP

    Bulletin Boards

    =

    EXPORT\CCMBB.EXP

  2. Parse the Ccmdir.exp file and calculate the number of Exchange and Lotus cc:Mail entries retrieved from the directory.

  3. Parse the Ccmlist.exp file and calculate the number of Lotus cc:Mail mailing lists.

  4. Parse the Ccmbb.exp file and calculate the number of Lotus cc:Mail bulletin boards.

  5. Search the Exchange directory and prepare a Lotus cc:Mail import file.

  6. Compare the import file to the information extracted from the post office and conclude what alterations are required:

    Exchange Deletions

    =

    IMPORT\CCMDEL.IMP

    Exchange Additions

    =

    IMPORT\CCMDIR.IMP

  7. Delete any entries from Lotus cc:Mail by importing the Ccmdel.imp file into Lotus cc:Mail.

  8. Add any entries to Lotus cc:Mail by importing the Ccmdir.imp file into Lotus cc:Mail.

  9. Start updating the Exchange directory by making the necessary additions, deletions, and modifications.

  10. Update the Lotus cc:Mail mailing lists in the Exchange directory.

  11. Update Lotus cc:Mail bulletin boards in the Exchange directory.

The import performance that you can expect on a Pentium 166-MHz computer with 64 MB of RAM is as follows:

8,500 new updates imported into Exchange per hour

2,500 unchanged imports per minute

Preparing to synchronize Exchange and Lotus cc:Mail

Before configuring Dir Synch between your two systems, it is necessary to investigate the current setup. It is relatively simple to configure the Dir Sych tabs on the Exchange Connector for Lotus cc:Mail, but you might find problems if you don't first investigate thoroughly. By default, Exchange assumes the following:

  • Once imported, you want your Lotus cc:Mail users to appear on the Global Address List (GAL) in First Name Last Name format.

  • The Exchange alias (and therefore the Microsoft Mail and SMTP proxy names) are built using the first name and one character from the last name.

SMTP Proxy Addresses

Most companies that have Exchange Server implemented like to make full use of the IMS, which is built into Exchange. When your computer running Exchange Server is linked to Lotus cc:Mail via the connector, your Lotus cc:Mail users can send and receive messages to and from the Internet. There are, however, the following considerations:

  • To prevent awkward address formats, Exchange and Lotus cc:Mail should be Dir Synch'd.

For example, a Lotus cc:Mail user would send a message to a user on the Internet as follows:

  1. Select the post office queue name that relates to the Exchange site.

  2. Type in the SMTP address.

  3. Send the message.

If the sender (in this case the Lotus cc:Mail user) is not a Contact on the Exchange Server, the from and reply-to field would look similar to:

IMCEACCMAIL-Jim+20Wilson+20at+20PO1@domain.com

Although this e-mail address is valid, it is extremely awkward.

  • If your company is a significant size, it is recommended that you change the Registry parameter that controls the generation of alias (and therefore SMTP) addresses for each Lotus cc:Mail user.

Exchange generates alias addresses for Lotus cc:Mail users as follows:

First name then first character from last name (e.g. JimW)

The other issue here is how a Lotus cc:Mail user's SMTP proxy address is generated. By default, the SMTP address is built from the alias, and if there are two JimWs, their SMTP addresses are JimW@domain.com and JimW1@domain.com. Although you can change these after creation, there is a certain amount of administration overhead here, and a certain amount of confusion before the problem is resolved.

To resolve this issue, either change the Registry parameter called "Dir Synch alias name rule" detailed at the end of this paper, or adjust the SMTP proxy generation rules so that the address is built by using other mailbox fields. For example, some companies have an SMTP naming convention of First.Last@domain. Because the Lotus cc:Mail Dir Synch process populates the First Name and Surname fields in the directory, you have extra flexibility for building other addresses. For example, you can set the following rule for SMTP site addressing:

SMTP: %g.%s@microsoft.com

You can use any of the following variables with the SMTP proxy generator (which is case sensitive):

%d

-

Display Name

%g

-

Given Name

%i

-

Initials

%m

-

Mailbox (or alias) name

%s

-

Last Name

%rxy

-

Replace character x with y

%nv

-

Use n characters of the variable v

It should be noted that not all proxy generators in Exchange support these variables. For instance, the Lotus cc:Mail proxy generator (CCMPROXY.DLL) does not support %rxy but does support all the others.

Every object in Exchange requires an X.500 Distinguished Name (DN). For Exchange mailboxes, this name is inherited from the hierarchy and alias.

For example:

/o=Microsoft/ou=North America/cn=Recipients/cn=Paul.Bowden

When the Exchange 2000 Server Connector for Lotus cc:Mail Dir Synch process runs, it also allocates a Directory Name for each Lotus cc:Mail contact. The Relative Distinguished Name (RDN) is a calculated field, and at first glance, is a random hexadecimal string.

For example:

/o=Microsoft/ou=North America/cn=Recipients/cn=66688E05

This hexadecimal string is vitally important, because it is stamped on messages sent from Lotus cc:Mail to Microsoft Exchange. If the user moves from their existing post office to another one (Full User Move) on the next Dir Synch cycle, the hexadecimal string would be calculated differently and messages previously received from this Lotus cc:Mail user could no longer be replied to. For this reason, keep movement of Lotus cc:Mail users between post offices to a minimum. If you are in an environment where this is a common occurrence, configure an Enterprise ADE relationship to your connecting isolation post office, and then change the "Use ANR" registry parameter (Exchange Server 5.0 SP2 and Exchange Server 5.5 SP1 or later) so that Exchange Connector for Lotus cc:Mail imports the message into the post office by using only the Lotus cc:Mail user name and not the user name with the post office appended. Using this mechanism ensures that the RDN for users remains constant even though the user might change post offices.

The Import Container tab

When configuring Exchange Connector for Lotus cc:Mail for Dir Synch, you must first specify where Exchange is to place the imported recipients. This depends upon your situation. If Exchange is being deployed as a message-switching backbone, create a separate container to house these contacts. If you need Lotus cc:Mail connectivity to migrate all users to Exchange eventually, place the entries in the standard recipients container. Some companies create a separate container and then migrate the users to Exchange. This can cause a problem, because during the migration you would expect to migrate the contact object in the dedicated container to a mailbox object in the recipients container. The consequence of this is that, because the X.500 DN has now changed, messages previously received from this user can no longer be replied to. If you are going to create a dedicated container, you should give it a directory name that is not associated with the Lotus cc:Mail system, although its display name could be something like Lotus cc:Mail Addresses.

Microsoft Exchange Server Migration Wizard, which comes with Exchange 2000, now automatically handles the placement of the X.500 proxy on migrated mailboxes so that no mail will go undelivered. This feature was also added in Exchange Server 5.5 SP3 and later.

Cc767109.ccmigrat05(en-us,TechNet.10).gif

The next item to configure is the import filtering. The default is to import every entry from the connecting Lotus cc:Mail post office. However, it might be necessary only to import certain entries or to exclude importing addresses from certain Lotus cc:Mail post offices. You configure the import filtering strings in much the same way as you configure the Address Space tab (for example: * at PO2). A common use of the filter is to restrict the import of bulletin boards and mailing lists (# entries).

If large Lotus cc:Mail networks and multiple Exchange sites are involved, you might to have multiple Exchange Connectors for Lotus cc:Mail performing Dir Synch. To ensure that directory information isn't triangulated, you must configure this filtering option carefully.

In certain situations, it is necessary to run a Dir Synch between the two systems without starting Exchange Connector for Lotus cc:Mail. For example, if you need to break the Dir Synch for a major directory reconfiguration and then reimplement it, mail messages might be backing up in the queues while you make your changes. Of course, when you start the connector, the messages are processed before a resynchronization has time to occur. To get around this problem, you can force a directory synchronization from the command line by running "CCMC CCDIR".

The Export Containers tab

The Export Containers tab defines the containers that you want to export to Lotus cc:Mail. It is very important to realize that it is not the GAL that gets exported. For example, you might have ten Exchange sites from which you're exporting all recipient containers to Lotus cc:Mail. If an Exchange administrator creates another container, or a new site comes online, you must reconfigure Exchange Connector for Lotus cc:Mail to export these as well. Although this sounds messy, it gives Exchange Administrators great flexibility to configure directory synchronization. If there is a mix of Exchange mailboxes and Lotus cc:Mail contacts in a particular container, you might also want to export your import container. Exchange ensures that duplicate addresses are not created if you do this.

The Trust Level setting can also be used to control exactly which Exchange recipients are exported. For example, you might want to hide certain entries from Lotus cc:Mail.

It is not possible to dictate the trust level assigned to Dir Synch'd Lotus cc:Mail objects. All contacts will have a trust level of '0'.

Cc767109.ccmigrat06(en-us,TechNet.10).gif

The Dirsync Schedule tab

The Dirsync Schedule tab defines when directory synchronization is performed. You must change the default setting of Never. If you specify Always, a full Dir Synch occurs every 15 minutes, which is unnecessary for most configurations. If you highlight and select complete hours, dir synch occurs only on the hour of each hour selected.

Remember that if the Lotus cc:Mail user already appears in Exchange when Dir Synch runs, the object is not modified and the Update Sequence Number (USN) is not incremented. This means that your computer running Exchange Server is not re-replicating unchanged entries to other computers running Exchange Server. Although this seems logical, there are certain tools in Exchange that do re-replicate unchanged entries (for example, when you import information from a .CSV file using the "Tools / Directory Import" command).

After Dir Synch has occurred

You should notice a few extra .ini files in the \exchsrvr\ccmcdata directory after the first Dir Synch. The following table lists the purposes of these files:

File name

Purpose

Bboards.ini

Controls the command string parameters for exporting the names of bulletin boards from a post office

Exportdr.ini

Controls the command string parameters for exporting the directory from a post office

Importdr.ini

Controls the command string parameters for importing the directory into a post office

Lists.ini

Controls the command string parameters for exporting mailing list names from a post office

You should also notice that there are some new files in subdirectories beneath \exchsrvr\ccmcdata\dirsync. The following table lists the purposes of these files:

File path

Purpose

EXPORT\CCMBB.EXP

Listing of bulletin board names on the connecting Lotus cc:Mail post office

EXPORT\CCMDIR.EXP

Listing of the directory on the connecting Lotus cc:Mail post office (includes Lotus cc:Mail and Exchange users)

EXPORT\CCMLIST.EXP

Listing of mailing list names and the users on that list from the connecting Lotus cc:Mail post office

IMPORT\CCMDEL.IMP

List of Exchange recipients that were deleted from the Lotus cc:Mail directory (because they no longer exist in Exchange) in the last directory synchronization cycle

IMPORT\CCMDIR.UND

List of Exchange recipients that could not be added to the Lotus cc:Mail directory in the last directory synchronization cycle

IMPORT\CCMDIR.IMP

List of Exchange recipients that were added to the Lotus cc:Mail directory in the last directory synchronization cycle

Looking at the Lotus cc:Mail post office

You should now see all the Exchange recipients in the Lotus cc:Mail directory. They have the following format:

Name:

Locn:

Addr:

Cmts:

Last, First

l

EXSITE1 Last, First

Notes

The name in the Lotus cc:Mail directory is taken from the Lotus cc:Mail proxy e-mail address for the Exchange recipient (this defaults to Last Name, First Name). The location code will be "l," which indicates that this is a local user of another post office. The address field is the name of the Exchange site where this user exists. In the address field, you see the user's name. This is known as a Foreign Alias Name (FAN) and is implemented in this way so that when messages are sent from Lotus cc:Mail to Exchange, the address is presented in Last Name, First Name format. Some companies use the address box for other purposes (for example, third-party gateways). It is not possible to prevent the FAN field from being populated. The comments field is taken from the Notes attribute on the Exchange mailbox.

If users on other Exchange sites are also propagated through this connector, a new post office entry for each can be seen in the following format:

Name:

Locn:

Addr:

Cmts:

EXSITE2

p

EXSITE1

 

Springer, Will

l

EXSITE2

 

This informs Lotus cc:Mail that any messages sent to Will Springer should be directed to the EXSITE2 post office. Lotus cc:Mail then works out that the EXSITE2 post office is via EXSITE1 and queues the message for EXSITE1. Lotus cc:Mail always goes through this chaining effect to work out which queue should hold the outgoing message.

Looking at the Exchange server

You should notice that the import container is populated with contacts that relate to the Lotus cc:Mail users.

You will notice that the display name for each Lotus cc:Mail contact has been built in First Name Last Name format, which is the default way to build normal Exchange mailboxes. If your company has decided that display names should be built differently (for example, it is common to use the format of Last Name, First Name) you should modify the Registry entry called "Dir Synch display name generation rule," which is detailed at the end of this paper.

The Lotus cc:Mail addresses for Lotus cc:Mail users are by default generated in First Name Last Name format regardless of the format used in the Lotus cc:Mail directory. You can change the generation format by adjusting the "Generate secondary proxy address" Registry parameter in Exchange Server 5.0 with SP1 or later. If you do not adjust this Registry parameter, it can cause problems when creating a backbone for Lotus cc:Mail traffic over a computer running Exchange 2000 Server.

You might notice a peculiarity when Lotus cc:Mail alias names are synchronized into Exchange. If the alias refers to a user downstream of the connecting post office (for example, a little "a" directory entry), Exchange imports the alias but cannot associate it with the name of the post office where the user is located. Therefore, Exchange Server appends the name of the connecting post office (derived from the connector's General tab). This is usually not a problem, because when a message is imported from Exchange, the import program is able to resolve the alias name into the name of the real user and send it on to the destination post office. The only time this causes a problem is when there is a version mismatch between the Lotus cc:Mail post offices. For example, if the connecting post office is DB8 and the other post offices are DB6, messaging to downstream aliases will fail. When troubleshooting this problem, you notice that the message is addressed to the real user in Last Name, First Name at downstream-PO format instead of First Name Last Name at downstream-PO. This causes the Lotus cc:Mail Router program to bounce the message if the two post offices differin version.

There are two ways around this problem; either make sure that the connecting post office version matches that of the downstream post offices, or use the "Use ANR" registry parameter with Exchange Server 5.0 SP2 or Exchange Server 5.5 SP1 and later.

The second synchronization cycle

In some implementations, a problem occurs when the directory synchronization cycle runs for the second time. In Exchange, you might notice that Exchange users appear twice on the GAL. One address refers to the real mailbox for the user; the other is a contact and appears in the import container.

The problem is a result of the way Exchange differentiates between Lotus cc:Mail users and imported Exchange users. For Exchange to recognize its own users, you need to add MSExchangeCCMC <server name> to the comments field relating to the Lotus cc:Mail to Exchange post office name.

Bulletin boards and mailing lists

Bulletin board and mailing list addresses are imported into Exchange as contacts. Exchange does not automatically recognize these recipients as public folders and distribution lists.

Maintaining mailing and distribution lists

Both Microsoft Exchange Server and Lotus cc:Mail have the concept of group lists. The term used with Exchange is distribution lists (DL); with Lotus cc:Mail, they are called mailing lists (ML). Microsoft Exchange DLs are in fact much more functional than the Lotus cc:Mail equivalent. With Exchange, a DL can contain any type of recipient, including mailboxes, contacts, hidden recipients, public folders, and other DLs. With Lotus cc:Mail, an ML can contain any object from the main directory, including Lotus cc:Mail users, recipients that are located in other Lotus cc:Mail post offices, and users accessible via a gateway. Lotus cc:Mail mailing lists cannot contain the names of other mailing lists on the same post office, so there is no concept of nesting here. There is also a hard-coded limit of up to 200 names per mailing list. In some situations, you might find that you cannot place 200 recipients on the list due to a limitation in the message header. Lotus cc:Mail message headers can be up to 4 KB in size. You cannot send messages to huge numbers of users.

To get around this problem, many Lotus cc:Mail Administrators have implemented what Lotus calls Bankshot Routing or Ricochet Routing. In Bankshot Routing, a user sends to a name in the main directory. This name could be something like "#All", but it is defined as a user on another post office (usually a mail hub). When the message is sent to this user, Lotus cc:Mail notices that the name is not in the hub's directory and then continues to see if the name refers to a mailing list. In this case, the Lotus cc:Mail administrator would have already set up this mailing list on the hub. The message is then sent to the mailing list, and it so happens that this list contains users at other post offices (perhaps called #PO1-All and #PO2-All), so the message is now passed to these users on the associated post offices. When the Lotus cc:Mail router tries to deliver the message, it cannot find the name in the directory, and so it searches for mailing lists with that name. These mailing lists probably contain all the users on the local post office. The result is that users can send to potentially thousands of other users with a single message and not reach the 4-KB header limit.

You have to be quite careful when coexisting between Lotus cc:Mail mailing lists and Exchange distribution lists. If there is a large DL defined in Exchange with Lotus cc:Mail users (more than200 contacts) present on the list, and an Exchange user sends a message to this list, the Exchange Connector for Lotus cc:Mail refuses to deliver the message to the Lotus cc:Mail users. The error generated states: Unable to deliver the message due to the number of specified recipients of the message. In this instance, the connector does not even attempt to import the message.

A number of coexistence strategies are available to you. For example, let's say you currently have a Lotus cc:Mail mailing list called "#Sales Team". Some of your salespeople are Lotus cc:Mail users; others are Exchange users. When coexisting with Exchange, you have the following options:

  • Add the "l" Exchange recipients to the current Lotus cc:Mail mailing list.

    Advantages:

    Short-term ease and convenience

    Disadvantages:

    Not scalable — as the team expands, you might reach the 200 limit.

    Requires more work if you plan to migrate to Exchange.

  • Create an Exchange distribution list for the sales team and add the "l" account of this distribution list to the existing Lotus cc:Mail mailing list.

    Advantages:

    The sales team members on Exchange are controlled by the Exchange administrators.

    Good solution if most of the members are on Lotus cc:Mail.

    Disadvantage:

    There are two points of administration.

  • Create an Exchange distribution list for the whole sales team and add Exchange mailboxes and Lotus cc:Mail contacts to this list. Lotus cc:Mail users would then send to the "l" account for the Exchange distribution list.

    Advantages:

    All administration is performed on Exchange.

    Good solution if most of the members are on Exchange.

    Requires less work if you plan to migrate to Exchange.

    Disadvantage:

    The 4-KB header might be reached on Lotus cc:Mail, and the message would be undeliverable. ** See the following Note for how to avoid this problem.

  • Create an Exchange distribution list for the whole sales team and add Exchange mailboxes and the Lotus cc:Mail contact account for the Lotus cc:Mail mailing list holding sales team members on Lotus cc:Mail.

    Advantages:

    Scalable solution.

    Good solution if most of the members are on Exchange.

    Disadvantages:

    Two points of administration

    More work to do if the end goal is a full migration to Exchange

    Note: Most Lotus cc:Mail administrators want to pass the maintenance for mailing lists on to someone else, which is quite understandable. Sometimes, the best solution is to adapt one of the previously described options. You could create a "Sales Team" distribution list in Exchange that you can think of as the superior list. You then create other DLs in Exchange and nest them underneath the superior list (you might want to hide these from the directory). As long as you don't exceed 199 names in any of your subordinate lists, Lotus cc:Mail will deliver the messages. When a Lotus cc:Mail user sends a message to the list, they would send to the Lotus cc:Mail proxy address for the superior distribution list. When the message reaches Exchange, Exchange expands the DL and send messages to the recipients. Exchange generates one message for the superior and one per subordinate list. When Exchange Connector for Lotus cc:Mail imports each message, the header contains the name of the superior list and all the users on that list. The subordinate lists and their contents are not shown. Essentially, when the connector imports each message, all such users on that subordinate list are specified on the BCC line, and therefore, the Lotus cc:Mail recipient does not see a large header.

There are other advantages with this solution. Exchange controls all Lotus cc:Mail mailing lists. This allows the Exchange administrators to delegate ownership of the lists to Exchange clients. If Exchange is being used as a message switch, you have total control of the names and addresses on the list. Lotus cc:Mail mailing lists always start with the '#' symbol, in some messaging systems (such as Quarterdeck Macintosh Mail), this is an invalid character. Also, if the end goal is to migrate to Exchange, you make the task is made considerably easier by moving ownership and administration of these lists first.

Maintaining bulletin boards and public folders

Both Microsoft Exchange and Lotus cc:Mail have the concept of shared repositories for collaboration. Lotus cc:Mail uses bulletin boards; whereas Exchange uses public folders. Lotus cc:Mail bulletin boards are quite simple. The Lotus cc:Mail administrator must create the bulletin board, the structure is completely flat, and there is no concept of an access control list. All users can create items in any bulletin board, read items in any bulletin board, and delete any of their own items. The Lotus cc:Mail administrator can also delete messages from bulletin boards. However, Lotus cc:Mail bulletin boards can be synchronized between different post offices. Synchronization occurs through mail messages and offers creation and deletion facilities. Lotus cc:Mail cannot copy missed messages in any way and offers no automatic resynchronization ability if the bulletin boards get out of step with each other (a manual import or export must be performed). Also, there is no native back-end rule functionality for bulletin boards.

Exchange public folders, on the other hand, are highly functional and support all the features that organizations require for their collaboration strategies. There is a challenge here if you want to coexist between cc:Mail bulletin boards and Exchange public folders.

Many different approaches have been tried to build a comprehensive coexistence mechanism, but they all seem to fall short in one area or another. The following two approaches are the most frequently used:

  • Make the Lotus cc:Mail bulletin boards primary for user postings, and the Exchange public folders receive updates from the bulletin boards.

  • Make the Exchange public folders primary for user postings, and the Lotus cc:Mail bulletin boards receive updates from Exchange public folders.

Each strategy has its own merits, and your choice depends on how your user community uses bulletin boards. Also, you might decide to use one strategy for existing Lotus cc:Mail bulletin boards and use public folders for any new requests for collaborative repositories. Eventually, when your users are migrated to Exchange, you can switch to using only public folders. Neither solution handles deletes, but you can use age rules on public folders to remove older items.

Option 1: Lotus cc:Mail is primary, replicate to Exchange

  1. Create a contact in Exchange that points to the bulletin boards on the hub. Disable the ability to Dir Synch this entry through Exchange Connector for Lotus cc:Mail. The address should be something like #bbsname at hubponame. The display name in Exchange should be something like #bbsname, or whatever matches the client's naming standards.

  2. Using Microsoft® Outlook®, create a public folder in Exchange to correspond to the bulletin board. On the folder's property sheet in Exchange Administrator, change the Lotus cc:Mail proxy address to something that begins with a tilde (~). This is just a convention, but it will place it at the bottom of the address book in Lotus cc:Mail.

    On the hub Lotus cc:Mail PO, create a locked and hidden entry for the Exchange public folder you just made. It should be something like ~pfname at exchangesitename. To make the entry locked and hidden:

    1. As soon as you create it, press ENTER, and then on the menu click change propagation Type (T).

    2. On the resulting menu, click cusTom (T).

    3. On the next menu, use the arrow keys to select <H>ide send updates, and then press ENTER to switch its value to yes.

    4. Do the same for the <L>ock receive updates value.

    5. Press ESCAPE twice.

    6. Exit the admin tool and when the question Propagate ADE changes? appears, click No.

  3. Go back into the admin tool for the hub PO, and include the entry you created in step 3 in the propagation list for the bulletin board.

  4. Lotus cc:Mail users post as they always have. Exchange users send mail to the contact from the GAL.

Option 2: Exchange is primary, replicate to Lotus cc:Mail

  1. Using Outlook, create a public folder in Exchange to correspond to the bulletin board.

  2. On the folder's property sheet in Exchange Administrator, change the Lotus cc:Mail proxy address to something that begins with #. This is just a convention, but it is used in Lotus cc:Mail to denote a bulletin board.

  3. On the Advanced tab of its property sheet, unhide the public folder from the address book. Dirsynch will propagate the new address to Lotus cc:Mail next time it runs.

  4. Create a Contact in Exchange that points to the bulletin board on the hub. Set the trust level for this Contact above the threshold for Dirsynch on Exchange 2000 Server Connector for Lotus cc:Mail. The address should be something like #bbsname at hubponame. The display name in Exchange should be something like #bbsname, or whatever matches the client's naming standards.

  5. Using Outlook, open the folder's Properties dialog box. Select the Administration tab, and click the Folder Assistant button. Add a rule to forward all messages to the contact you created in step 4. There is a choice to make here. If you choose the forwarding method to Leave the messages intact, the messages will appear in Lotus cc:Mail as coming from the original author directly. The router will not forward a copy of the message to the post office the originating user resides on, however, so the users must be trained to post a copy locally (resulting in two copies on all the other post offices). The best option is to choose the standard forwarding method. This results in expected, normal propagation behavior, although the messages appear in Lotus cc:Mail as forwards from the public folder.

  6. After you create the rule, open the Properties dialog box for the contact, select the Advanced tab, and hide the object from the address book.

  7. Microsoft Exchange users post to the public folder normally. Lotus cc:Mail users send their posts to the e-mail address for the public folder, which appears in the Lotus cc:Mail public address book, and the messages are forwarded to the bulletin boards.

Although these strategies are simple, you must be aware of their limitations. First, they don't handle deletions. Second, users must send their messages to the proper address. If users inadvertently send a message to the nonprimary address, the message exists in only that system. Also, because deletions are not handled automatically, changing an existing message creates a second message to the recipient without removing the original message.

Localization issues

There are a few issues to consider when using Exchange Connector for Lotus cc:Mail outside the United States. The first is the way in which date stamps are interpreted. The United States and some other countries use a time format of MM/DD/YY, whereas some other countries, including the United Kingdom, use DD/MM/YY. If you find that the date stamp is incorrect on messages flowing between the two environments, you might need to adjust the Locale Date Format registry parameter (see the end of this document). Some customers have reported that Exchange Connector for Lotus cc:Mail stops processing messages because of invalid date formats. Note that the Import and Export programs spawned the Exchange Connector for Lotus cc:Mail, run in the context of the logged-on user on the computer running Exchange Server. When no user is logged on, the default system locale information is used. To prevent these types of problems, ensure that all users who log on to the server console directly use the same locale as the default system.

Another date-related issue is that attachment filenames can appear corrupted when data is transferred between the two environments. This problem is generally noticed when Lotus cc:Mail v8 clients are involved. You might need to implement the Version 8 Attachment Format registry parameter detailed at the end of this document.

Migration From Lotus cc:Mail to Exchange 2000 Server

Your ultimate goal might be to move all your Lotus cc:Mail post office information over to Microsoft® Exchange 2000 Server. You must make many business and technical decisions. Although this list is not exhaustive, following are some of the issues that you face:

  • Predesign of the Exchange Server network backbone

  • Predesign and specification of the computers running Exchange Server

  • Microsoft® Windows® 2000 design and accounts for all users

  • Existing post office architecture (DB6 or DB8)

  • Tools for migrating Lotus cc:Mail mailboxes to Exchange

  • When the migration can occur (downtimes and so forth)

  • Consolidation of post offices

  • Methods available for moving Lotus cc:Mail mailing lists to Exchange

  • Methods available for moving Lotus cc:Mail bulletin boards to Exchange

  • Methods available for migrating Lotus cc:Mail archives

  • Methods available for migrating Privdir.ini files

  • Methods available for migrating mobile Lotus cc:Mail users to Exchange

  • Methods of moving gateways to Exchange

  • Rolling out the Exchange/Microsoft® Outlook® client

  • Roving user abilities

  • Setting up remote access facilities

  • Migrating diary information from Organizer to Exchange

  • Training for support staff, help desks, and end users

  • Introduction of new facilities available in Exchange

  • Possible migration of SmartSuite to Microsoft® Office

Exchange design

Before you can migrate any data from Lotus cc:Mail, you must ensure that a structured, reliable Exchange backbone is in place. At this stage, you should have made certain decisions regarding the specification of computers running Exchange Server, including the hardware and software requirements. The backbone should have been fully tested with all the necessary connectors in place to aid the migration. The goal is to migrate users to Exchange as seamlessly as possible. Users should not lose any functionality when moving to Exchange, nor should they have problems such as data loss during the migration period.

Be aware that when Microsoft® Exchange Server Migration Wizard extracts mailboxes from Lotus cc:Mail, it cannot retain the single-instance nature of Lotus cc:Mail, even though Exchange Server itself supports single-instance storage. Therefore, the data in a 500-MB Lotus cc:Mail post office will potentially take up far more space when it is migrated to Exchange. If you need to quantify exactly how much disk space is required to migrate the post office, run the CHKSTAT command with the /MESSAGES/ALL parameter. This shows you the total message data space taken up by each mailbox regardless of the single-instance storage architecture.

Methods for migrating mailing lists

As discussed previously, there are four different options to handle coexistence between Lotus cc:Mail mailing lists and Exchange distribution lists. They are:

  • Lotus cc:Mail mailing lists with the Exchange recipient's little "l" entries as members.

  • Lotus cc:Mail mailing lists with the Exchange distribution list's little "l" entries as members.

  • Exchange distribution lists with Lotus cc:Mail contacts as members.

  • Exchange distribution lists with the Lotus cc:Mail contact for the mailing list as member.

Depending on how mailing lists are used in your Lotus cc:Mail environment and the requirements you have established for the migration, you must blend these solutions appropriately. In most cases, it is best to migrate your mailing lists to distribution lists before any users are migrated, but you might also decide to move the mailing lists last. Regardless of when you choose to move the mailing lists, you need a process to assist in the move. These different methodologies are discussed below.

Move the mailing lists to Exchange before user data is migrated

When you move mailing lists to Exchange distribution lists, the Lotus cc:Mail contacts are made members of the distribution lists. With these in place, Exchange Server Migration Wizard can preserve distribution list membership when Lotus cc:Mail mailboxes are migrated to Exchange. This allows for all list membership to be administrated from Exchange, as well as allowing for nested mailing lists.

Move the mailing lists to Exchange after the users are migrated

Another method is to convert all the mailing lists to distribution lists after all the users in a list are migrated. This way, when users are migrated to Exchange, their Lotus cc:Mail directory entries are changed from a big "L" entry to a little "l" entry pointing to the Exchange post office, which in turn preserves the mailing list membership. An additional benefit is that as long as the post office the user was migrated from has not been reclaimed, you can easily restore the original Lotus cc:Mail mailbox by changing the entry back to a big "L" entry.

Due to Lotus cc:Mail restrictions, you must make sure that messages do not have more than 200 recipients and that the headers do not exceed 4 KB in size. Because you have probably already addressed these limitations in your existing Lotus cc:Mail mailing list setup, you should replicate that configuration in Exchange. Newer versions of the Lotus cc:Mail router that come with version 8.5 have implemented solutions to address this issue, but many customers have not turned on this feature or do not plan to because of possible issues with other gateways. For more details about the issues involved in this problem, see the Lotus support Web site.

The MLCONVERT utility

To migrate Lotus cc:Mail mailing lists to Exchange Server distribution lists, you should use the MLCONVERT utility, which can be downloaded from the Microsoft Exchange Web site (https://www.microsoft.com/exchange). Alternatively, you can obtain the latest version from the most recent version of the Exchange 2000 Resource Kit (ISBN is 6-1017-7). This utility allows you to extract the mailing lists from your Lotus cc:Mail environment and then clean them up before importing them into your Exchange 2000 directory as groups in Active Directory™ directory service.

Methods for migrating Lotus cc:Mail archives

Users tend to be electronic pack rats when it comes to mail messages. They don't want to delete them for fear that they might need to refer back to a message in the future. Also they tend to think that an electronic message takes up little or no space because it is in the computer and not taking up space on their physical desk. This frequently leads to poor message management and large archives of messages that might never be accessed again.

On the other hand, some percentage of archives contain critical information that must be saved for future retrieval. For instance, some government organizations must retain a copy of all e-mail messages to be compliant with laws such as the Freedom of Information Act or the Florida Sunshine law.

The first step you should take when considering migration of Lotus cc:Mail archives is to establish the business value of moving the data to Exchange. A measurable business value must justify the measurable amount of time to be spent locating, automating, and migrating this information to the Exchange platform. You must also determine if you want to handle the migration in an automated fashion, or if users will manually move the data.

Following are three different approaches to handling the migration of the Lotus cc:Mail archives to Exchange:

  • Move the Lotus cc:Mail archive back into the user's mailbox so it is migrated by the Exchange Server Migration Wizard.

  • Move the Lotus cc:Mail archive to a central location, and then convert the data to a .pst file on the user's home directory.

  • Use Microsoft or third-party migration tools on the user's local workstation during or after the Exchange client installation to convert the archived data.

The approach you choose depends on what percentage of users have archives and how much volume is expected. To determine this, poll your existing Lotus cc:Mail users to see how many have archives and how big those archives are. This way, you can determine the effect of archive migration on time and storage requirements.

For example, if you have a relatively small number of users with archives and a small volume of archived data to move, then you should have the users move the archives back into their Lotus cc:Mail mailbox before migration. If you have a large number of users with archives but the volume of data is small, then you should use the "move to a central location" approach. If you have a high number of users with archives and the data volume is large, then you need to use migration tools at the desktop level to convert the data.

Importing the archives back into users' mailboxes approach

The first approach is quite simple. You need to communicate with users that, if they have archives, they must import them back into their mailboxes before they are migrated. This involves using the Lotus cc:Mail client to import the archived data, but the steps are different for the various versions of ccMail on the market. Consult your Lotus cc:Mail client documentation for how to import archives back into the mailboxes. When Exchange Server Migration Wizard is used to move the user's mailbox to Exchange, the archived data is also moved. You might want to set the Microsoft® Outlook® client up to run autoarchive immediately when the Outlook client first runs to move the older messages back out to an autoarchive .pst file.

Harvesting to central location approach

The second approach — moving the archives to a central conversion area — takes some additional work. This involves two separate processes: moving the archive files to the central location, and converting those archives to .pst files on the users' home directories. To move the archive files to the central location, you might choose to include this in the automated setup of the Outlook client, but it can run separately. In the simplest form, you need to run a process to find all files ending in the file extension .CCA on the hard drive, then move those files to a drive or universal naming convention (UNC) share in a directory named for the user. Alternatively, you can rename the file to username.cca before moving it to the central location, although users might have more than one archive. There are many shareware and third-party utilities that can harvest and move the files to the central location. You might also want to write your own MS-DOS® batch script or Microsoft® Visual Basic® application to perform this task.

You can perform the second task — converting the .cca files to .pst files —with Lotus cc:Mail utilities you already have. This process can be done in an automated fashion, or can be performed manually by an administrator. However, it takes more effort to fully automate the process with the following steps:

  1. Create a dummy Lotus cc:Mail post office at the central location, and use the export and import utilities to create simulated mailboxes for all the users.

  2. Using the Lotus cc:Mail MS-DOS client, import the archive file into the simulated user mailbox.

  3. Using the Exchange Server 5.5 Migration Wizard, export the user's simulated mailbox directly to a .pst file.

  4. Move that .pst file to the user's home directory, and have the Outlook client configured to use this .pst file as the autoarchive location.

This task could be automated if you used an MS-DOS keyboard automatic playback program to feed the keystrokes to the Lotus cc:Mail MS-DOS client. Only steps 2 through 4 need to be automated, because you do the first step only once. It might be easier to write a simple Visual Basic or Microsoft® Visual Basic® Scripting Edition (VBScript) application to perform the automation of this three-step process.

The local migration with tools approach

Before you consider using this approach, look at the tools that can do the conversion available from Microsoft and third-party vendors. The Microsoft Lotus cc:Mail archive converter tool migrates archived data to Exchange mailboxes. For more details about this tool, see the Lotus cc:Mail tools area of the Exchange Web Site at https://www.microsoft.com/exchange.

You must decide if you want to run in automated mode, or if you want users to perform the import in interactive mode. To have users run the utility and import their own Lotus cc:Mail archives, allow them to decide what archived data is brought over to Exchange. Take the time to explain to users the process and how to determine the business value of archived data. If they know they have only limited space on Exchange with mailbox size limits, they can limit what they import or import directly to a .pst file. If you put no constraints on what they can do, expect your Exchange messaging database to grow in size very quickly.

If you decide to automate this task, do so during the process that builds the user's profile, because the user must be logged in to the mailbox for the utility to run. Depending on the unattended options you require, you might need to script other features, such as moving all archive files to a single directory on the local hard drive or removing the archives after the process has run. The following section describes how to run the Microsoft® Lotus cc:Mail Archive Converter in unattended mode.

Automating the Lotus cc:Mail Archive Converter

Command Line Options:

Also referred to as batch mode, because command line executions can be called from within a batch file, the command line feature allows you to feed the executable certain parameters so that the user need not provide input during execution.

Parameter

Description

Usage/Data Format

/P:

Profile for authentication and store configuration.

To specify profile. Use quotation marks around name if there are spaces.

/L:

Location for archives.

Valid path — can use wildcard character to take all archives at that location, or can specify one archive. Use quotation marks around path.

/S:

Store selection. A profile might specify more than one store — perhaps a mailbox and a .pst. This parameter names the store to which the archives are to be imported.

Use quotation marks around name if there are spaces. "Mailbox — George Jones (Exchange)" [Display Name] OR "storage" [personal folder display name].

Usage Example:

ccmarch /p:"George's Work" /l:"c:\archives\*.cca" /s:"storage"

You can also specify other options to the Lotus cc:Mail archive converter through the use of an .ini file and associated settings. The following sections discuss how to use the .ini file for name translations, as well as the other options available for the .ini file. The default name of the .ini file the converter uses is "ccmarch.ini". Also note that the .ini file is required for unattended execution but can also be used for interactive mode.

Name Translation:

There are two ways of performing name translation: the use of a semicolon-separated file to map names and the use of a specially written .DLL to perform some natural transformation or poll some other information source. This paper discusses only the semicolon method. The following table lists the options available in the .ini file:

INI Entry & Example

Default & (Units)

Possible Values

Usage

XLATORFile="c:\trans.txt"

None.

Path to semicolon delimited file or dll.

To implement name translation. Use quotation marks around path if there are spaces.

XLATORType=file

file

(file, dll)

Indicate translation file type.

Note: If XLATORType is used but no translation file is specified, an error that no file could be found is reported.

Example translate file:

Frederick Jones; Fred Jones

Willamina Heckle; Willamina Heckle-Forth

Secretarial Pool; Office Staff

Other Options available in the .ini file:

INI Entry & Example

Default & (Units)

Possible Values

Usage

LocalStorePreference=
"My Folder1"

Default store for message delivery

Any Store [filename, .pst] the client can access.

To specify store to import archives to. Use quotation marks around name if there are spaces.

ShowDefaultStore=0

1

(0,1)

Use 0 if you do not want to be able to select delivery default store for archive import.

SkipAttachments=1

0

(0,1)

Use 1 if you do not want to import attachments.

MaxMsgSize=50

0 (KB)

(0...)

0 means unlimited store. Enter a positive value to limit the size for each message.

LogPath=local

server

local, server, or an explicit path

Location for log files ccconv.L0 and ccconv.L1. Local means local temp directory. Server means directory .exe is in.

MaxLogSize=20

10 (KB)

(0...)

0 means unlimited log size. If total of both logs exceeds maximum, L1 will rename to L0 and a new clean L1 is created.

LogDetail=2

1

(1,2,3)

1 is regular, 2 is verbose, and 3 is debug.

InitialArchiveDirectory=
c:\archives

exe location

any path

Default path to archives. If a company has server-based user directories, this might be the parent net directory.

** 16-bit only** GMTBias=480

300 (minutes)

(-720..720)

Minutes to add to get Greenwich Mean Time.

** 16-bit only** DaylightBias=0

60 (minutes)

see specs

Daylight-saving adjustment.

OEMCodePage=852

OEM CP of PC importing

Valid Code Page

Text body, attachments, subject.

ANSICodePage=852

OEM CP of PC importing

Valid Code Page

** May be removed.

PostOfficeCodePage=852

OEM CP of PC importing

Valid Code Page

Recipients [CP values are first read from archive, then .ini settings, then PC OEM CP].

IncludePostOfficeName
InAddress=1

0

(0,1)

To attach Lotus cc:Mail post office name to Exchange display name.

AtString=at

at

Any valid string

Sets the string between user and post office name.

DefaultPostOfficeName=ccmpo

none

Lotus cc:Mail post office names [<= 126 bytes?]

Name to be attached.

In summary, you should take some time during your migration planning to determine how to handle the migration of Lotus cc:Mail archives for the users. The effort put forth to migrate this data must be backed by solid business needs and business value. As an alternative to any of these three approaches for migrating this data, you can use a mixture of methods. The best method is to keep the archived data from touching the Lotus cc:Mail or Exchange message database by converting directly to a .pst file. This ensures the least impact on the storage requirements of either the old or new messaging system.

Tools available for data migration

The obvious tool to transfer the Lotus cc:Mail mailbox data to Microsoft Exchange Server is Exchange Server Migration Wizard (Mailmig.exe). This migration tool is highly functional and can transfer most Lotus cc:Mail data into Exchange. This tool also has limitation as to what it can migrate. If you are using Exchange 5.0, the migration wizard can migrate DB6 and DB7 post offices. The wizard supplied with Exchange Server 5.5 can migrate DB6, DB7 and DB8 post offices. The Exchange 5.5 migration tool also includes a one-step migration for Lotus cc:Mail and has the ability of migrating Lotus cc:Mail mailboxes to .pst files. The Exchange 2000 migration wizard can migrate users directly to Active Directory.

After migration, users will notice that the contents of their Drafts folder are special mail messages in their Inbox. They might also see a folder named Clipboard. Lotus cc:Mail uses this special folder for internal purposes, and it can be safely deleted after the migration is finished.

Procedures to follow before the migration

Before you actively transfer the data from Lotus cc:Mail, make sure that you understand all the requirements for Exchange. At this point, you should have trained all the support staff, help desk personnel, and end users. You should have also given migrated users tips on the most common Exchange features and how to access them. Help desk personnel should be fully trained on all the features of the Exchange/Outlook client.

You should also send out e-mail informing the users about the migration. In particular, point out the following:

  • Delete unwanted e-mails in the Inbox, Messages Log, Trash, and private folders

  • Procedures for Lotus cc:Mail archived files

  • Where to find, and how to use the PRIVDIRU utility from the DMT (Privdir.ini migration)

  • Where to find, and how to use the PML2PDL utility from the DMT (mailing list migration)

  • How to import Lotus Organizer information

You should also point out what information won't get migrated:

  • Rules that the user has implemented in Lotus cc:Mail

You might also want to inform users that they should rename their Lotus cc:Mail personal folders if they are called Calendar, Notes, Journaling, Tasks, or Contacts. If, for example, a user has a Lotus cc:Mail personal folder called Contacts that is migrated, Outlook cannot create its own Contacts folder the first time the user launches Outlook.

You could also forcibly delete information from Inboxes, Message Logs, Trash, and private folders by using the CHKSTAT (or MSGMGR) tool. By enforcing a policy here on how much data migrates, you can seriously cut down on migration time.

You should also perform a full service on the post office(s) that you will be moving. This should include:

ANALYZE

CHKSTAT (DB6 only)

RECLAIM

This ensures that you have no inconsistencies or corruption in your post office(s) before you start the migration. In some instances, if Exchange Server Migration Wizard comes across minor corruption, the message or attachment is skipped. In the case of serious discrepancies in the post office, the migration wizard might halt.

Private mailing lists

When you migrate people from Lotus cc:Mail to Exchange, users still left on Lotus cc:Mail might not realize that their private mailing lists no longer contain all the original users.

Seconds before the migration

If you migrate a whole post office, you should halt the Lotus cc:Mail router message transfer agents (MTAs), link gateways, Exchange Connector for Lotus cc:Mail, and any other entity delivering information into the post office that is migrating. If it is not possible to halt the router MTA for a long period of time (for example, if the router services more than one post office), you should remove the necessary entries from the router call list. If messages are delivered while Exchange Server Migration Wizard is running, there is a chance that the wizard might halt or that it will not bypass new messages after it has passed the mailbox in question.

You should also ensure that no ADMIN programs are running against the post office and that no migrating users are logged on. You can log the users off in any of the following ways:

  • Send an e-mail.

  • Broadcast a message over the telephone system.

  • Create a CCPODOWN file in the \ccdata directory. (This only stops new users from logging on.)

  • Remove permissions from the directory.

  • Run NPODOWN (for Novell networks only).

Exchange Server Migration Wizard should run on either the fastest available computer or the actual computer running Exchange Server to which you will be migrating the mailboxes. Experience has shown that copying the Lotus cc:Mail post office to the local computer running Exchange Server greatly reduces migration time.

How Exchange Server Migration Wizard works

Exchange Server Migration Wizard is installed with the Exchange Server Administrative Tools component. With Exchange 2000 Server, you can use this tool to migrate information from Microsoft Mail, Lotus cc:Mail, Lotus Notes, Novell GroupWise, Collabra Share, LDAP-compliant Internet directories, and IMAP-compliant mail servers. Depending on which type of messaging system you are moving from, the migration is performed in different ways.

For Lotus cc:Mail migration, copy the appropriate version of the files Export.exe and its language file (ie.ri or impexp.ri) into the system path of the computer running the Exchange Server Migration Wizard. You can also gain extra performance and overcome some other limitations (like Lotus cc:Mail mailbox names greater than 57 characters in length) by using the 32-bit version of the Export program. To use this, manually rename Export32.exe to Export.exe.

Steps for migration:

  1. Start by deciding whether to migrate to Exchange 2000 Server or to .pst files. At a prompt, you must choose a one-step migration or two-step migration. A two-step migration generally gives you better control over the migration process. This option is also good if you want to use a new naming standard, or if you have Lotus cc:Mail user names of more than 64 characters in length. You must specify a location for the migration data that consists of one packing list file and many primary and secondary files.

  2. Next specify the post office path, name, and password to migrate from by typing them into the appropriate fields on this page, and then click Next.

    Choose what you want to transfer:

    • Information to create mailboxes

    • Personal e-mail messages (all or date range)

    • Bulletin boards

    • Private mailing lists (PABs)

  3. Now select the users to migrate. You can migrate only "L" users in the directory.

  4. At this stage, the Lotus cc:Mail data is extracted from the post office and placed in a set of migration files.

  5. You should find the following files under the migration directory:

    File name

    Purpose

    Post Office Name.PKL

    Packing list file. This matches the primary and secondary files with the mailbox name.

    Post Office Name.PRI

    Directory import file. Specifies how entries are going to appear in the Exchange directory after being imported.

    Xxxxxxxx.PRI

    Sequentially numbered primary file. This holds the message headers and folder names for migrated messages.

    Xxxxxxxx.SEC

    Sequentially numbered secondary file. This holds the message bodies relative to the headers defined in the primary file.

  6. You might want to change the primary file for the post office at this point. This is where you can dictate how imported entries are going to appear in the Exchange Global Address List (GAL). Because the Lotus cc:Mail messages have been exported at this point, you might have very little time to make your changes because messages are still flowing. What you could do is adjust the primary file for the post office and then save a copy. If you are sure that no administration is going to take place on the Lotus cc:Mail post office, you can rerun the first stage again, but use the old primary file. This affords you more time to make changes.

  7. When using a two-step migration, run Exchange Server Migration Wizard for the second run, which actually performs the import process of the migration. Then you will see the selections that allow you to specify the organizational unit in which to place the migrated users, as well as other options like specifying a template account. See the migration wizard autodemo on the Exchange Web site for an overview of this process.

Converting Lotus Organizer information

Because working with calendars and schedules is a very important part of any messaging system, there might be some users on Lotus cc:Mail that use Lotus Organizer for their diary. Most of the organizations that you come across will not use Organizer as a group scheduling tool. Lotus cc:Mail administrators usually allow users to install the Organizer product, and there might be cases in which managers and secretaries open each other's diaries, but generally that is all.

Outlook can translate information from Organizer version 1.0, 1.1, and 2.1. For Outlook to perform the transfer, the Organizer program executables must be installed on the computer doing the translation, and the support files for Organizer from the Outlook installation must be present.

When users transfer their Organizer file to Outlook Calendar, the last Lotus Organizer (the Lotus Organizer data file ending in the file extension OR.2 or ORG) data file that was opened appears as the file to import from. The user is prompted for the types of information (Planner, Diary, Addresses, and so forth) that should be transferred. Outlook 2000 users can change the field mappings, but this is not normally necessary. Accepting the default options gracefully transfers information to Outlook, including:

  • Diary items

  • Recurring items

  • Tasks list with priorities and due dates

  • Contacts listing

Converting Privdir.ini information

Lotus cc:Mail personal addresses, such as private SMTP addresses, are held in a file called Privdir.ini at the local workstation. Some Lotus cc:Mail users rely heavily on the various gateways installed on the Lotus cc:Mail system, and so you might find resistance from users if you tell them that their information will be lost. The format of the Privdir.ini file is as follows:

[Internet]

EntryCount=2
Entry1=Sue.Bowden@qatraining.com
Entry2=dstrange@microsoft.com

[X400]

EntryCount=1
Entry1=c=gb;a=attmail;p=lotus;s=Honer;g=Mike

The file above indicates that the pseudo-post office used to access the Internet is called "Internet".

Migrated users can run the Lotus cc:Mail archive importer tool to migrate their Privdir.ini information across to Outlook Contacts. This utility is available on the Exchange Web site at https://www.microsoft.com/exchange/downloads/2000/ccMailImporter.asp.

Migrating a cc:Mobile user to Exchange

This paper assumes that remote users are using Lotus cc:Mobile for Microsoft® Windows®. There are many different ways of migrating mobile users. For more information on this subject, see the Microsoft Exchange Migration Guide. Generally, you will do one of the following to migrate Lotus cc:Mobile users, depending upon time and requirements:

  • Use Exchange Server Migration Wizard to connect with the DB7 post office on the cc:Mobile user's hard disk and do a direct transfer. The name of the mobile post office is LOCALPO, and the password is the user's normal mailbox password.

  • Have the cc:Mobile user dock his or her Lotus cc:Mail mailbox on the local area network (LAN) and transfer all messages. From here, you can perform the migration in the normal way.

    Note: Make sure that the cc:Mobile user is defined in the post office directory as "L" before the migration. The migration wizard cannot migrate "R" accounts.

Using Outlook against a Lotus cc:Mail post office

Another option worth considering is using the Lotus cc:Mail MAPI provider, which can be found on the Outlook 97, Outlook 98, and Outlook 2000 CDs. In the VALUPACK directory are two files. Ccmailsp.exe is used for Microsoft® Windows 95 and Microsoft® Windows NT® 4.0 platforms. Ccmailnt.exe is used for Windows NT 3.51 platforms only.

This provider can be added to a new or existing MAPI profile. One drawback of this logon method is that all Lotus cc:Mail messages are downloaded into a .pst file from the post office. It is not possible to directly look at the post office mailbox.

Exchange 2000 Server Connector for Lotus cc:Mail Registry Entries

This list details some of the more common Registry entries that you might need to adjust to get the desired interoperability between Microsoft® Exchange 2000 Server and Lotus cc:Mail.

All the parameters that you might want to modify are held under:

HKEY_LOCAL_MACHINE

SYSTEM

CurrentControlSet

Services

MSExchangeCCMC

Parameters

Note: Exchange 2000 Server Connector for Lotus cc:Mail service must be shut down and restarted after you make a change to any of these parameters.

Parameter Name:

Initial Data Value:

Notes:

Always delete IMPORT/EXPORT output

0x00000001 (1)

Not implemented in Exchange Server 5.x

Lotus cc:Mail Admin file path

""

Not implemented in Exchange Server 5.x

Lotus cc:Mail to Exchange queue size

0x00000040 (64)

Maximum number of messages that can be waiting for a worker thread. Export will not run again until the number of messages waiting drops below this number. This prevents the thread from becoming overloaded.

Connector Store Path

C:\exchsrvr\ccmcdata

Change value if there are more than eight characters in a directory name, or if the path includes spaces.

Dir Synch alias name rule

%F%1L

Rules for how Exchange should create aliases for Dir Synch'd entries.

Dir Synch display name rule

%F %L

Rules for how Exchange should create display names for Dir Synch'd entries.

Dir Synch export BB command line

/BBOARD /LIST/
BATCH

Specifies that Exchange should extract the list of bulletin boards.

Dir Synch export
command line

/DIRECTORY/L/R/
A/P /FORMAT /
NOFAN /BATCH

Specifies that Exchange should extract local, mobile, alias users, and post office entries. The Foreign Alias Names (FAN) should not be exported.

Dir Synch export ML command line

/LIST /BATCH

Specifies that Exchange should extract the list of mailing lists.

Dir Synch import
command line

/DIRECTORY/PROP/
BATCH

Specifies that this is a directory import (rather than a mail message) and that entries should be repropagated to other post offices.

Exchange to Lotus cc:Mail queue size

0x00000040 (64)

Maximum number of messages that can be queued waiting for a worker thread. The connector will not retrieve more messages from MTS-OUT until the number of messages waiting drops below this number. This prevents the thread from becoming overloaded.

Export command line

/ITEMSIZE /
FORMAT/FAN /BATCH /FILES/MACBIN2

Messages should be exported with their byte sizes, FAN should replace the Lotus cc:Mail names in the header, and Macintosh file attachments should be exported in MacBinary II format.

Export.exe

Export.exe

Path to the Export.exe program.

FixedWidthFont

0x00000000 (0)

Specifies whether a Fixed Width Font should be used.

Generate secondary
proxy address

0x00000000 (0)

Specifies whether Dir Sync'd Lotus cc:Mail entries in Exchange have two proxy addresses or one. If set to "0", Lotus cc:Mail entries are Dir Synch'd in First Name Last Name format. If set to "1", Lotus cc:Mail entries have a primary proxy of Last Name, First Name and a secondary proxy of First Name Last Name.

Import command line

/ITEMSIZE /PARTIAL /
BATCH /FILES/MACBIN2

Specifies that when mail messages are imported, the byte count is attached, the message is delivered even if there are unknown recipients, and Macintosh file attachments are in MacBinary II format.

Import.exe

Import.exe

Path to the IMPORT.EXE program.

Inbound Conversion Threads

0x00000002 (2)

Number of threads allocated for messages entering Exchange.

Locale Date Format

0x00000000 (0)

0 specifies that the date format of the Import and Export programs should be used. 1 specifies U.S. format. 2 specifies United Kingdom format. 3 specifies Japanese format.
Note: Levels 2 and 3 are supported only in Exchange Server 5.0 SP3, Exchange Server 5.5 SP1 and later.

Maximum number of exceptions before shutdown

0x00000019 (25)

Number of connection errors that can occur on start before Exchange Server Connector for Lotus cc:Mail automatically shuts down.

Maximum number of messages to EXPORT

0x00000010 (16)

Number of messages that can be exported from Lotus cc:Mail in any one export session.

Maximum number of messages to IMPORT

0x00000005 (5)

Number of messages that can be imported into Lotus cc:Mail in any one import session.

Mutually Exclude Import and Export

0x00000001 (1)

Whether import and export sessions run in separate time windows.

Outbound Conversion threads

0x00000002 (2)

Number of threads allocated for messages leaving Exchange.

Save a copy of the exported files

0x00000000 (0)

Whether to keep copies of messages leaving Lotus cc:Mail. Copies are held in \ccmcdata\export.bak.

Save a copy of the imported files

0x00000000 (0)

Whether to keep copies of messages entering Lotus cc:Mail. Copies are held in \ccmcdata\import.bak.

Seconds to wait before Export

0x0000000f (15)

Polling interval for messages leaving Lotus cc:Mail.

Seconds to wait before Import

0x0000000f (15)

Polling interval for delivering messages to Lotus cc:Mail. Import runs only if there are messages to import into Lotus cc:Mail. Also, import executes before this time has elapsed if the number of messages waiting to be imported is equal to or greater than the "Maximum number of messages to be imported" Registry value.

Tab Length

0x00000005

Number of spaces that account for one tab character.

Use ANR

0x00000000

Dictates whether messages are imported from Lotus cc:Mail in "user at post office" format (default) or whether the post office portion should be stripped and Lotus cc:Mail's own automatic name checking routines should be used (1).
Note: This parameter is not present by default and can only be set when using Exchange 5.0 SP2, Exchange 5.5 SP1, or Exchange 2000.

Use Registry settings

0x00000000

Not used with Exchange 5.5 SP1 and later. Previous versions used this parameter to calculate the number of base threads to use for the service.

Version 8 Attachment Format

0x00000000

When set to 1, this parameter strips the date and time stamp from File Item: lines output by Exchange Connector for Lotus cc:Mail. This works around "corrupt" file attachment names noticed with Lotus cc:Mail version 8 clients.
Note: This parameter is not present by default and can be set only when using Exchange 5.5 SP2 or Exchange 2000.

Exchange 2000 Server Connector for Lotus cc:Mail Quick List

This section provides a numbered checklist for problems with Microsoft® Exchange Connector for Lotus cc:Mail. See the main document for complete descriptions of each point.

Connectivity

  1. Use an isolation post office and locate it on the computer running Exchange Server.

  2. Make sure that you have adjusted oplock and Microsoft® Windows NT® caching Registry entries or applied CCREGMOD.

  3. Change the "Seconds to wait before Export" Registry value to 60 or 120 seconds to relieve contention on post office files.

  4. Check that the correct versions of Import and Export exist in the path of the computer running Microsoft® Exchange 2000 Server.

  5. Check the Exchange GWART to ensure that the routing table is correct. If it is incorrect, manually recalculate the routing.

  6. Push Diagnostics Logging to maximum, and then run Exchange Connector for Lotus cc:Mail manually to get more information.

Directory Synchronization

  1. Make sure that MSExchangeCCMC <server name> is located in the Comments field for the Exchange queue on the connecting post office.

  2. Adjust Exchange 2000 Server Connector for Lotus cc:Mail Connector Registry entries to alter naming rules.

  3. Adjust the "Generate secondary proxy" Registry parameter to perform backboning.

  4. Set the "Use ANR" registry parameter to "1" if you are working with a Lotus cc:Mail Enterprise ADE environment or using this relationship on your isolation post office.

Push Diagnostics Logging to maximum, and then run CCMC CCDIR manually to get more information.