Sun Java System Instant Messaging 6 2004Q2 管理指南 |
第 5 章
管理 Instant Messaging 归档本章说明如何管理和配置 Instant Messaging 归档。
本章包含以下部分:
Instant Messaging 归档概述Instant Messaging 归档捕获即时消息并将这些消息归档到“Portal Server 搜索”数据库中。它使最终用户可以使用 Portal Server 桌面的“搜索”页来查询和检索这些归档的消息。
Instant Messaging 归档包含下列组件:
归档和检索组件。“Portal Server 搜索”组件(也称为“归档和检索”组件),用于存储归档的“即时消息”。Instant Messaging 归档数据将编入索引,可以分配给各个类别并存储到“Portal Server 搜索”数据库中。例如,报警消息可以存储到“报警”类别下。
Instant Messaging 归档搜索或显示 Servlet。当最终用户搜索符合特定标准的文档时,“Portal Server 搜索”会获取符合此标准的页面。这些页面可能是远程网页,或者是 Instant Messaging 归档数据,也称为 Instant Messaging 资源说明符。
当最终用户单击 Instant Messaging 资源说明符的 URL 以查看归档数据时,就会调用“Instant Messaging 归档搜索或显示 servlet”。“Instant Messaging 归档搜索 servlet”从“Portal Server 搜索”数据库检索信息,生成包含 Instant Messaging 归档数据的文本或 HTML 回应。
Instant Messaging 归档提供者。只要“即时消息”要归档,Instant Messaging 服务器就会调用此组件。“Instant Messaging 归档提供者”根据 Instant Messaging 服务器提供的数据生成与“资源说明符 (RD)”兼容的“摘要对象交换格式 (SOIF)”。它使用“Portal Server 搜索”API 发送这些“资源说明符”到“Portal Server 搜索”数据库。它还维护一个要提交给“Portal Server 搜索”数据库的记录的缓冲区,以降低性能干扰。
Instant Messenger 归档控制。Instant Messaging 数据可以自动归档,而无需最终用户的任何介入。要控制归档功能,最终用户必须启用“Instant Messenger 归档控制”组件。此组件可让最终用户设置缺省的归档选项(如“归档所有会议”),并根据每项事务更改缺省值。例如,最终用户可以选择不归档会议内容。
图 5-1 说明 Instant Messaging 归档组件。
图 5-1 Instant Messaging 归档组件
归档即时消息为便于归档,所有即时消息都分为以下类别:
聊天。私人会议室中的所有消息。
会议。公共会议室中的所有消息。
报警。此类别包含所有报警消息。
轮询。此类别包含所有轮询消息。
新闻。此类别包含所有发布在新闻频道中的消息。
以下是 Instant Messaging 归档提供者的功能:
启用归档提供者在 Instant Messaging 中启用归档提供者:
- 切换到 config 目录。例如,在 Solaris 上:
cd /etc/opt/SUNWiim/default/config
- 打开 iim.conf 文件。
例如:
vi iim.conf
- 将以下行添加到 iim.conf 文件:
对于缺省的归档提供者,请添加:
iim_server.msg_archive = true
对于定制的归档提供者,请添加:
iim_server.msg_archive.provider = provider_name
要使用基于“Portal Server 搜索”的归档,请将 provider_ name 替换为:
com.iplanet.im.server.IMPSArchive
- 保存文件。
- 刷新 Instant Messaging 服务器配置。要进行刷新,请键入:
imadmin refresh
Instant Messaging 服务器提供可用于编写定制归档提供者的 API 和 SPI。有关 Instant Messaging API 的详细信息,请参阅 Instant Messaging API。
配置归档提供者归档提供者在“Portal Server 搜索”数据库中将归档的消息存储为资源说明符 (RD)。归档提供者使用“Portal Server 搜索”方案的下列字段:
标题。此字段包含“会议”类别中公共会议室的名称、“聊天”类别中聊天会话参与者的名称、报警和新闻类别中“报警”消息的主题和“新闻频道”的名称。标题字段包含轮询类别的“来自发送者的轮询”,其中发送者代表轮询发送者的显示名称。
关键字。对于会议和聊天类别,此字段包含会议室所有参与者的列表。对于公共会议室,它包含会议室的名称。对于“报警”类别,它包含发送者和收件人的显示名称。对于“新闻”类别,它包含频道的名称。对于“轮询”类别,它包含发送者和收件人的列表。对于所有类别,除了上述值以外,此字段还包含类别的唯一 ID。
表 5-1 显示归档提供者中每个类别的唯一 ID 及说明。
ReadACL。对于“会议”和“新闻”类别,此字段的值取自各自会议室和新闻频道的访问控制文件。对于“聊天”类别,此字段包含参与者的 DN。对于“报警”类别,此字段包含发送者的 DN 和收件人的 DN。对于“轮询”类别,归档者将会提供新的访问控制文件。
搜索 RD 会受到 ReadACL 字段中的值控制。如果启用了文档级安全性,最终用户仅在 ReadACL 字段具有最终用户的 DN 时才能访问搜索结果。如果为聊天消息启用了 Instant Messenger 归档控制,则添加到 ReadACL 字段的最终用户 DN 取决于最终用户的选择。
说明。此字段包含未 HTML 格式化的归档消息。
全部文本。此字段包含已经 HTML 格式化的归档消息。
分类。此字段包含归档消息的类别。
归档提供者配置参数
表 5-2 列出并说明可以添加到 iim.conf 文件的归档提供者配置参数:
将归档消息存储在非缺省数据库中
要将 Sun Java System Instant Messaging 归档消息存储在非缺省“Portal Server 搜索”数据库中,请执行以下步骤:
更改 Portal Server 搜索频道,以添加在其他数据库中搜索数据的选项。有关详细信息,请参阅 Sun Java System Portal Server Desktop Customization Guide。
- 修改 IMArchiveDisplay.jsp 文件:
- 切换到下列目录:
/etc/opt/SUNWps/desktop/default/IMProvider/
- 创建 IMArchiveDisplay.jsp 文件的备份。
- 用选择的编辑器编辑 IMArchiveDisplay.jsp 文件。例如,您可以键入:
vi IMArchiveDisplay.jsp
- 搜索 IMArchiveDisplay.jsp 文件,找到下列两行代码:
代码示例 5-1 编辑之前搜索 IMArchiveDisplay.jsp 文件中的代码
<search:setQuery query = "<%= scope %>"/>
<search:setRDMType rdmType = "rd-request"/>
- 在代码示例 5-1 所示的两行代码之间,添加下列代码行:
<search:setDatabase database = "database-name"/>
添加新代码行之后,该代码段应如代码示例 5-2 所示:
代码示例 5-2 编辑之后搜索 IMArchiveDisplay.jsp 文件中的代码
<search:setQuery query = "<%= scope %>"/>
<search:setDatabase database = "database-name"/>
<search:setRDMType rdmType = "rd-request"/>
其中 database-name 是非缺省数据库的名称。
管理 Portal Server Search 搜索数据库中的归档数据
Instant Messaging 数据在“Portal Server 搜索”数据库中以“资源说明符 (RD)”的形式归档。“Portal Server 搜索”数据库中的个别条目称为资源说明符 (RD)。RD 是有关单个资源的特定信息集。各个 RD 的字段取决于“Portal Server 搜索”数据库方案。
要管理归档的数据,您必须管理“Portal Server 搜索”数据库中的“资源说明符 (RD)”。本节说明一些对“Portal Server 搜索”数据库经常执行的维护任务。
有关管理“Portal Server 搜索”数据库中数据的详细信息,请参阅《Portal Server 管理员指南》。
rdmgr 命令
rdmgr 命令是用于处理“搜索”服务的主要命令。它为管理员提供两种子命令:一种用于处理资源说明符 (RD);另一种用于数据库维护。rdmgr 命令通常在具有搜索功能的 Portal Server 实例目录中运行。
调用 rdmgr 命令:
有关 rdmgr 命令的详细信息,请参阅《Portal Server 管理员指南》中的“命令行实用程序”。
搜索资源说明符 (RD)
运行参数值为 -Q 的 rdmgr 命令将会生成调整搜索操作的 RD 列表。
例如:
删除资源说明符
以下是从“Portal Server 搜索”数据库删除资源说明符 (RD) 的示例:
要删除所有包含文本 testing 的资源说明符 (RD),请键入:
run-cs-cli portal-server-install-dir/SUNWps/bin/rdmgr -d -Q testing
要从类别 Archive:Chat:January 删除所有资源说明符 (RD),请键入:
启用 Instant Messenger 归档控制Instant Messenger 归档控制组件可让最终用户控制归档的即时消息。最终用户单击 Instant Messenger 主窗口中的“归档”按钮,即可搜索存储在“Portal Server 搜索”数据库中的归档即时消息。它还可让最终用户设置缺省的归档选项,如 Instant Messenger 的“归档”标签中的“归档所有会议”。Instant Messenger 归档控制功能由两个可选的 Instant Messenger 模块提供。
在 applet 说明符文件中设置 archive_control applet 参数即可启用 Instant Messenger 归档控制组件。
Instant Messaging LDAP 部署中需要更改的 applet 说明符文件如下:
对 JNLP 文件和 jnlpLaunch.jsp 文件所做的更改:
如果使用 Java Web Start 启动 Instant Messenger,请执行下列步骤在 Instant Messenger 中启用 Instant Messenger 归档控制功能。
对 html applet 页和 pluginLaunch.jsp 文件所做的更改:
如果使用 Java Plug-in 启动 Instant Messenger,请执行下列步骤在 Instant Messenger 中启用 Instant Messenger 归档控制功能。
更改归档数据的显示归档的数据使用 IMArchiveDisplay.jsp 文件部署。缺省情况下,IMArchiveDisplay.jsp 文件安装在文件夹 /etc/opt/SUNWps/desktop/default/IMProvider 中。可以修改该文件,以更改归档数据的样式和资源字符串。
例如,要将最终用户加入会议室时显示的缺省系统消息由从“joe has joined the room”替换为“joe has entered the room”,请执行下列步骤:
同样,其他按键的资源字符串和按键信息的显示样式也可以修改。
如果在“Portal Server 搜索”的缺省方案中修改了“标题”和“全部文本”的属性名称,这些更改也应该反映在 IMArchiveDisplay.jsp 文件中。
归档提供者的部署方案样例此部署方案样例说明如何统一归档相关的 Instant Messaging 数据。
统一归档相关的 Instant Messaging 数据:
为每种类型的数据创建单独的类别。例如,在存储了全部归档 Instant Messaging 数据的“归档”类别中,创建子类别“聊天”来存储聊天消息。也可以创建根据时间归档数据的子类别。例如,要归档 2002 年 12 月的聊天数据,则子类别为:
Archive:Chat:2002:12
要根据时间归档所有数据,请执行以下步骤:
要将 2002 年 12 月的数据归档和备份到子类别,请键入:
要从“Portal Server 搜索”数据库中删除归档的 2002 年 12 月聊天数据,请键入:
rdmgr -d "classification=Archive:Chat:2002:12"