Lotus Notes 连接器体系结构

 

上一次修改主题: 2005-06-21

Lotus Notes 连接器可以将 Exchange 组织连接到 Lotus Notes 和 Lotus Domino 网络。Exchange Server 2003 Service Pack 1 (SP1) 支持与 Lotus Notes 版本 3 和 4 以及 Lotus Domino 版本 4.5、4.6、5 和 6 一起使用。这个基于 MAPI 的连接器使用 Lotus Notes Client API 来与 Lotus Notes 或 Lotus Domino 服务器通信。这需要在连接器服务器上安装 Lotus Notes 客户端。需要获得来自 Lotus Development 的许可证才能使用该客户端软件。有关如何安装和配置 Lotus Notes 连接器的信息,请参阅 Exchange Server 2003 Interoperability and Migration Guide(英文)。

note注意:
由于 Lotus Notes 连接器使用 Lotus Notes Client API 与 Lotus Notes 或 Lotus Domino 服务器通信,因此连接器需要有权访问 Lotus Notes 数据库的专用 Notes ID。

下表列出了 Lotus Notes 连接器的重要组件。

Lotus Notes 连接器组件

组件 描述

连接器邮箱

作为基于 MAPI 的连接器,Lotus Notes 连接器将它的邮件队列设在桥头服务器上默认邮箱存储的连接器邮箱中。邮箱名称是 Connector for Lotus Notes(<服务器名>),例如 Connector for Lotus Notes (SERVER01)。

连接器服务

Lotus Notes 连接器服务的主要可执行文件名为 Dispatch.exe。这是一个进程控制器,使用参数 -cexchconn.ini -nLME-NOTES -pCONTROL-SERVICE -l"C:\Program Files\Exchsrvr\bin" -vLME-NOTES 可以启动它,它可以基于 Exchconn.ini 文件中的设置将邮件传输和目录同步的各项任务调度给其他进程。Exchconn.ini 是在连接器安装和配置过程中自动创建的。

下列组件参与信息处理:

  • Dxanotes.dll 该组件检查 Lotus Domino Directory 中是否有收件人更新。该组件还会将 Exchange 地址信息更改传输给 Lotus Domino/Notes 通讯簿。
  • Dxamex.dll 该组件检查 Active Directory 中是否有收件人更新。该组件还会将 Lotus Domino/Notes 地址信息更改传输给 Active Directory。
  • Lsdxa.exe 这是目录交换管理器,用于控制 Dxanotes.dll 和 Dxamex.dll。
  • Lsmexin.exe 该组件从连接器邮箱内的 READYIN 文件夹中获得经过转换的邮件,并确认收件人的有效性,然后将邮件放在 MTS-IN 队列中。
  • Lsmexnts.exe 该组件从连接器邮箱中的 READYOUT 文件夹内获得邮件,并将它们从 MAPI 转换为 Lotus Notes 格式,然后将它们写入 Domino 服务器上的 mail.box 数据库。
  • Lsmexout.exe 这个组件从 MTS-OUT 队列获得出站邮件,并检查 Active Directory 以便将目标收件人信息替换为相应的 Lotus Notes地址,然后将邮件放在连接器邮箱内的 READYOUT 文件夹中。
  • Lsntsmex.exe 该组件从 Lotus Notes exchange.box 数据库下载邮件,并将它们转换为 MAPI 格式,然后将它们放在连接器邮箱内的 READYIN 文件夹中。

除了这些过程,Lotus Notes 连接器还包括 Microsoft Exchange Connectivity Controller 帮助应用程序服务 (Lscntrl.exe),该服务可以用来停止单个连接器进程。

所有文件都驻留在 \Program Files\Exchsrvr\Bin 目录中。

Lotus Notes 数据库

Lotus Notes 连接器在 Lotus Notes 和 Domino 桥头服务器上使用以下数据库:

  • Exchange.box 这是在 Lotus Notes 和 Domino 上的连接器邮箱,用于存储从 Lotus Domino 路由到 Exchange 的邮件。必须创建一个外部域文档,以便在 Lotus Domino Directory 中将 Exchange 组织注册成为外部域,并在该文档中指定连接器邮箱的名称。然后,从 Lotus Domino 路由到 Exchange Server 2003 的所有邮件将被发送到该连接器邮箱,Lotus Notes 连接器再从该邮箱中检索邮件。连接器需要具有删除权的 Manager 权限,才能从该数据库中选取邮件,并运行数据库维护操作。
  • Exchange.bad 这是死信的连接器邮箱,Lotus Notes 连接器用它来存储未能传输到 Exchange Server 2003 的任何邮件。连接器需要具有删除权的 Manager 权限才能将死信移动到该数据库,并运行数据库维护操作。
  • Mail.box 这是 Lotus Domino 服务器的服务器邮箱。Lotus Notes 连接器使用该邮箱来存放来自 Exchange Server 2003 并发往 Lotus Domino 邮箱的所有邮件。连接器需要 Depositor 权限才能丢弃邮件和执行数据库维护操作。
  • Names.nsf 这是 Lotus Notes 连接器用来进行目录同步的默认 Lotus Domino 目录文件。可以为 Lotus Domino 域指定不同或其他的通讯簿。连接器需要具有删除权的 Editor 权限才能执行目录同步。

此外,Lotus Notes 连接器可能需要对常规 Lotus Notes 数据库拥有 Reader 访问权,才能将 Notes 文档链接转换为 RTF 附件或 OLE 文档。

连接器存储

Lotus Notes 连接器使用文件系统上的文件夹结构来维护在目录同步期间所使用的控制文件。控制文件是架构定义文件和映射规则文件,用于确定一个目录中的属性如何映射到另一个目录。连接器存储位于 \Program Files\Exchrvr\Conndata 目录中。

可以在记事本中编辑以下架构定义文件和映射规则文件,以确定一个目录的属性如何映射到其他目录:

  • \Dxamex 子目录中的 AMAP.TBL 定义要同步的 Exchange 邮箱属性。
  • \Dxanotes 子目录中的 AMAP.TBL 定义要同步的 Lotus Notes 属性。
  • \Dxanotes 子目录中的 MAPMEX.TBL 确定从 Exchange Server 2003 到 Lotus Notes 的属性映射。
  • \Dxamex 子目录中的 MAPNOTES.TBL 确定从 Lotus Notes 到 Exchange Server 2003 的属性映射。

有关自定义 Lotus Domino 和 Exchange Server 2003 之间的目录同步的详细信息,请参阅 Microsoft 知识库文章 180517“XFOR: Customizing Directory Synchronization Between Exchange and Notes”(英文)。

注册表设置

在注册表中,Lotus Notes 连接器的设置被存储在以下位置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LME-NOTES。

代理地址生成 DLL

Lotus Notes 连接器的代理地址生成 DLL 被命名为 Ntspxgen.dll,该 DLL 驻留在 \Program Files\Exchsrvr\address\notes\i386 目录中。

addrType 对象

在 Active Directory 中,Lotus Notes 连接器的 addrType 对象的公用名是 NOTES:i386。

msExchConnector 对象

位于 Active Directory 的配置目录分区中的 Lotus Notes 连接器的 msExchConnector 对象存储了大多数的连接器配置设置。下列属性是从 msExchConnector 和 mailGateway 对象类派生,是 msExchNotesConnector 对象类所特有的:

  • exportCustomRecipients 指定是否通过目录同步将已启用邮件的联系人传播到 Lotus Notes。
  • msExchServer1AlwaysCreateAs 指定如何同步 X.500 对象。
  • msExchDeliveryOrder 指定邮件在连接器的队列中的处理顺序。选项有 FIFO、优先级(默认)和大小。
  • msExchExportDLs 指定是否通过目录同步将已启用邮件的通讯组传播到 Lotus Notes。
  • msExchPartnerLanguage 指定所连接的 Lotus Notes 和 Domino 服务器的语言(代码页)。
  • msExchDirsyncSchedule 指定自动执行目录同步的时间。
  • msExchDirsyncStyle 指定是执行完整的目录同步,还是执行增量的目录同步。
  • msExchNotesNotesServer 指定连接器当作非 Exchange 桥头服务器使用的 Lotus Notes 和 Domino 服务器的名称(使用 Notes 格式)。
  • msExchNotesForeignDomain 指定代表 Exchange 组织的 Lotus Notes 非 Exchange 域的名称。
  • msExchNotesRtrMailbox 指定被 Lotus Notes 邮件路由器使用的 Lotus Notes 和 Domino 服务器邮箱的名称,Lotus Notes 连接器将发往 Lotus Notes 的出站邮件放到该邮箱中。该邮箱通常是 mail.box。
  • msExchNotesConnectorMailbox 指定 Lotus Notes 邮箱的名称,Lotus Notes 连接器从该邮箱中检索要从 Lotus Notes 传递到 Exchange 的邮件。该邮箱通常是 exchange.box。
  • msExchNotesLetterhead 指定从 Exchange 传递到 Lotus Notes 的邮件所使用的 Lotus Notes 信头样式的名称。默认是纯文本。
  • msExchNotesNotesLinks 指定在发往 Exchange 的邮件中如何转换 Lotus Notes 文档链接。选项是 RTF、OLE 或 URL。默认为 RTF。
  • msExchNotesNotesINI 指定连接器用来登录到 Lotus Notes 和 Domino 服务器的 Lotus Notes 客户端 .ini 文件的完整路径和文件名。
  • msExchNotesTargetBook 指定将向其中导入 Exchange 用户的默认 Lotus Notes 通讯簿的名称。
  • msExchNotesSourceBooks 指定进行目录同步时导出到 Exchange 中的 Lotus Notes 通讯簿的列表。
  • msExchNotesExportGroups 指定在目录同步期间是否将 Lotus Notes 组导出到 Exchange。默认为 TRUE。
  • msExchNotesExcludeGroups 指定在目录同步时被排除的 Lotus Notes 组的列表。默认为 OtherDomainServers 和 LocalDomainServers。
  • msExchExportContainersLinked 指定在目录同步时 Lotus Notes 连接器用作导出容器的 Active Directory 中的组织单位的可分辨名称。
  • msExchImportContainerLinked 指定在目录同步时 Lotus Notes 连接器用作导入容器的 Active Directory 中的组织单位的可分辨名称。
  • msExchMaintenanceStyle 指定该连接器的维护样式。
  • msExchConnectorType 指定 Exchange 连接器的类型。该值是 NOTES。

管理单元

Lotus Notes 连接器的扩展管理单元被命名为 Exchange Notes 连接器。该管理单元用于扩展连接器的节点,可以在 Exchange 系统管理器中的该位置下面找到它:<组织名>/管理组/<管理组名>/路由组/<路由组名>/连接器。

邮件传输

下图说明了从 Exchange Server 2003 向 Lotus Domino 发送邮件的过程。

10ef053b-5a91-46b6-8eda-d862c90d0537

Exchange Server 2003 和 Lotus Domino 之间的邮件传输过程由以下三个步骤组成:

  1. Exchange 2003 确定收件人是 Lotus Domino 用户(根据用户的目标地址),并将邮件发送到邮件传输代理 (MTA)。
  2. MTA 将邮件传递给 MTS-OUT 目录,LSMEXOUT 进程从该目录中检索到此邮件,并将地址从基于 X.400 的地址转换为 Lotus Domino 地址,然后传递到 READYOUT 目录中。
  3. LSMEXNTS 进程将邮件转换为 Lotus Domino 格式,并将它传递到 Lotus Domino 服务器上的 mail.box 文件,以便进行路由。

下图说明了从 Lotus Domino 向 Exchange Server 2003 发送邮件的过程。

42e00ea4-4184-4c77-905a-25c13f08d4e1

Lotus Domino 和 Exchange Server 2003 之间的邮件传输过程由以下三个步骤组成:

  1. Lotus Domino 收到从 Lotus Notes 用户发送到 Exchange Server 2003 用户的邮件,并将邮件放在路由器的 mail.box 数据库中。邮件路由器识别出发送到 Exchange Server 2003 的邮件,然后将它存放在 exchange.box 文件中。
  2. Lotus Notes 连接器从 exchange.box 数据库中检索到邮件,并使用 LSNTSMEX 进程将邮件转换为 Exchange Server 2003 格式,然后将它传递到运行 Exchange Server 2003 的服务器上的 READYIN 文件夹中。
  3. LSMEXIN 进程接收邮件,并将地址从 Lotus Domino 地址转换为 X.400 地址,然后将它放在 MTS-IN 文件夹中。然后,Exchange MTA 对来自 MTS-IN 文件夹中的邮件进行处理,并将它放在简单邮件传输协议 (SMTP) 服务的 MTS-OUT 文件夹中,然后从该文件夹路由该邮件。

邮件转换

Exchange Server 2003 和 Lotus Domino 支持几种邮件类型,包括会议请求、任务、任务请求和电子邮件。Lotus Notes 连接器支持在 Exchange Server 2003 和 Lotus Domino 之间进行不同邮件类型的映射。但是,从一种格式转换到另一种格式可能导致邮件特征发生某些更改。例如,当邮件转换为 Exchange 格式时,将丢失 Lotus Domino 邮件的某些功能(例如,过期日期)。无法映射到目标域中相应邮件类型的邮件将转换成电子邮件。

note注意:
Lotus Notes 连接器不是为转换 HTML 格式的邮件而设计的。如果计划在 Exchange Server 2003 和 Lotus Notes 之间路由 HTML 格式的邮件(例如,因为想要通过 Exchange Server 2003 来路由发往和来自 Internet 收件人的所有邮件),请考虑部署 SMTP 连接器而不是 Lotus Notes 连接器。

下表说明了如何在 Exchange Server 2003 和 Lotus Domino 之间转换不同类型的邮件。

Lotus Domino 和 Exchange Server 2003 之间的邮件转换

Exchange Server 2003 功能 Lotus Domino 功能 Lotus Domino 到 Exchange Server 2003 Exchange Server 2003 到 Lotus Domino

电子邮件

电子邮件

电子邮件送达回执

电子邮件送达回执

电子邮件已读回执

电子邮件已读回执

未送达报告

未送达报告

重要性

重要性

投票按钮

无功能

嵌入式 OLE 对象

嵌入式 OLE 对象

嵌入式文件附件

嵌入式文件附件

邮件过期日期

邮件过期日期

无功能

答复者

Web URL

Web URL

无功能

URL 热点

会议请求

约会

会议已接受

会议已接受

会议已拒绝

会议已拒绝

会议暂定接受

会议已接受

显示为已接受

显示为已接受

会议请求已读

会议请求已读

会议请求送达

会议请求送达

会议更新

会议更新

显示为主题行包含单词“Updated”的新会议请求

显示为主题行包含单词“Updated”的新会议请求

会议取消

会议取消

任务请求

任务

任务请求显示为电子邮件或任务

任务请求显示为电子邮件

全天会议请求

无功能

显示为以午夜为开始和结束时间的会议

无功能

电话邮件

显示为电子邮件

其他邮件

其他邮件

默认电子邮件

默认电子邮件

note注意:
Lotus Notes 连接器不支持签名或加密的邮件。

电子邮件类型转换

最初来自 Exchange 或 Lotus Domino 的电子邮件将转换为目标邮件系统的格式。通过使用传递确认报告、已读回执和未送达报告,Lotus Notes 连接器还会跟踪邮件传递。

Lotus Notes 连接器处理会议请求和电话邮件的方式如下所示:

  • 会议请求和约会 Lotus Notes 连接器使 Exchange 会议请求和 Lotus Domino 约会同步。经过更新的会议请求在其主题行中被标识为 Updated。由于受 Lotus Domino API 的限制,Exchange Server 2003 用户发送到 Lotus Domino 用户的会议请求不会在 Lotus Domino 中自动更新。用户必须手动更新它们。
  • 全天会议请求 在 Exchange Server 2003 中生成的全天会议请求以开始和结束时间均为午夜的形式出现。
  • 电话邮件 Lotus Notes 电话邮件在 Exchange Server 2003 中以电子邮件的形式出现。

电子邮件属性映射

由 Exchange Server 2003 客户端 (Outlook) 发送到 Lotus Domino 客户端(Lotus Notes)的邮件中所嵌入的对象将转换为附件。嵌入对象总是以主邮件附件的形式出现,不管它们出现在原始线索中的什么位置。

下表说明了哪些 Lotus Notes 电子邮件功能会正确转换到 Microsoft Outlook。

Lotus Notes 和 Microsoft Outlook 之间的电子邮件转换

Lotus Notes Microsoft Outlook

大小

正确转换。

颜色

正确转换。

粗体

正确转换。

下划线

正确转换。

斜体

正确转换。

删除线

正确转换。

如果将 Microsoft Word 作为 Outlook 的主电子邮件编辑器,则正确转换,但是会丢失格式。如果 Outlook 是电子邮件编辑器,则不会正确转换。

嵌入式 OLE 对象,包括图形

正确转换并且可以编辑。

双删除线

忽略。

上标

忽略。

下标

忽略。

阴影

忽略。

边框

转换为斜体。

阳文

忽略。

阴文

忽略。

小型大写字母

忽略。

所有大写字母

忽略。

首字下沉

忽略。

隐藏

忽略;不隐藏文本。

除单下划线以外的下划线

忽略。

不作为 OLE 对象嵌入的位图

不迁移;格式丢失。

项目符号

忽略。

目录同步

下图描绘了 Exchange Server 2003 和 Lotus Domino 之间的目录连接。如上表所述,Lsdxa.exe 进程负责控制实际的目录同步进程 Dxamex.dll 和 Dxanotes.dll。当 Microsoft Exchange - Lotus Notes 连接器服务启动时,Lsdxa.exe 将自动启动。有关如何配置目录同步的详细信息,请参阅 Exchange Server 2003 Interoperability and Migration Guide(英文)。

note注意:
Lotus Notes 连接器会在 Active Directory 中为 Lotus Notes 邮件系统中的收件人创建已启用邮件的联系人。legacyExchangeDN 地址(即 Exchange 用户的 X.500 地址,采用 Exchange 5.5 格式)的第一部分与连接器的 legacyExchangeDN 匹配。第一部分是用于标识连接器的管理组的 X.500 地址的那一部分(即 /O=<组织名>/OU=<管理组名>)。

dac52e80-6ef3-4221-ac02-2f500ddc8198

在 Exchange 端,Dxamex.dll 通过 ADSI 与 Active Directory 通信,以便从连接器配置中所指定的导出容器内提取收件人信息。Dxamex.dll 对 Amap.tbl 和 Mapmex.tbl 中所定义的收件人属性进行映射,并将结果以邮件交换格式 (MIF) 写入名为 Dxanotes.text 的临时文件中,该文件位于 \Program Files\Exchsrvr\Conndata\Temp 目录内。之后,Dxanotes.dll 分析 Dxanotes.txt 文件,并处理地址,然后将它们放在 Lotus Domino 服务器上的目标目录中。若要与 Lotus Domino 通信,Dxanotes.dll 将使用 Lotus Notes Client API。

下面列出的内容是 Dxanotes.txt 文件的示例:

Load
A
FULLNAME:Administrator
MAILDOMAIN:Exchange
COMPANY:
DEPARTMENT:
FIRSTNAME:
LASTNAME:Administrator
LOCATION:
SHORTNAME:Administrator
UNID:DBC07527-91C1F649-8427525F-902428E2
DN:CN=Administrator,CN=Users,DC=contoso,DC=com
USNCreated:8194
Initials:
Title:
Phone:
MobilePhn:
Fax:
Resource:
CALDOM:Exchange
MAILSRV:

EndOfBuffer

Dxanotes.dll 还执行从 Lotus Notes 到 Active Directory 的目录同步。该过程使用 Lotus Notes Client API 来读取 Lotus Domino 目录。Dxanotes.dll 对 Amap.tbl 和 Mapnotes.tbl 中所定义的收件人属性进行映射,并将收件人信息写入 Dxamex.txt 文件,该文件位于 \Program Files\Exchsrvr\Conndata\Temp 目录中。Dxamex.dll 处理 Dxamex.txt 文件,并将收件人信息放在连接器配置所指定的导入容器内。

下面列出的内容是 Dxamex.txt 文件的示例:

Load
U
DN:admin
TA:NOTES:admin@Notes
ALIAS:admin
NAME:admin
FULLNAME:admin
FIRSTNAME:
Initials:
LASTNAME:admin
NOTESADDR:admin@Notes
UNID:4a12766d-8684ea55-3e551cde-3bac7ae9
COMPANY:
DEPARTMENT:
TITLE:
OFFICE:
PHONE:
FAX:
MOBILEPHN:
USNCREATED:

EndOfBuffer