Sun Java System Instant Messaging 7.2 管理指南

第 16 章 使用日历弹出提示

Instant Messaging 与 Sun JavaTM System Calendar Server 集成在一起,为 Instant Messenger 用户提供日历事件和任务的自动弹出提示。

本部分包括以下主题:

弹出提示概述

本节中的以下主题包含关于“日历”弹出提示的信息:

弹出提示操作

对于用户日历中即将发生的事件和任务,用户可收到相应的 Instant Messenger 弹出提示。要启用这些弹出提示,必须具备以下条件:

启用弹出后,当事件或任务来临时,“事件通知系统”中设置的报警会导致“日历服务器”发送一封电子邮件通知,并让 Instant Messaging 显示一个弹出提示。

弹出提示体系结构流程

如果已配置,Instant Messaging 弹出提示会遵循以下体系结构流程:

  1. Instant Messaging JMS 订户在“事件通知服务”(ENS) 中订阅“日历”服务器事件和通知。

  2. “日历”服务器向 ENS 发布 text/xmltext/calendar 格式的事件或任务通知。

  3. Instant Messaging JMS 订户收到日历事件或任务通知,然后生成 text/calendar 格式的消息。

  4. 如果最终用户处于联机状态,则 Instant Messaging 服务器将向日历所有者发送此消息。

  5. 如果有可用的收件人,则 Instant Messenger 会基于此消息在最终用户的桌面上生成一个 HTML 弹出提示。

    如果没有收件人,则 Instant Messaging 服务器会丢弃此消息。

iim.conf 日历弹出配置参数

当您安装 Instant Messaging 时,“日历”代理使用的几个配置参数会默认添加到 iim.conf 中。您还可以在运行 configure 实用程序时启用“日历”代理并提供相关的配置信息。不过,您可能想要手动配置弹出,例如,当您自定义了 Instant Messenger 的资源文件时。如果您重新运行 configure,则您将需要重新部署资源文件。如果您选择手动配置“日历”弹出的 Instant Messaging 服务器而不是运行 configure 实用程序,则需要提供这些参数的值。有关 configure 实用程序的信息,参见第 1 章,安装后配置 Instant Messaging

表 16–1 列出配置 Instant Messaging 服务器和“日历”代理以便使用“日历”弹出时将会用到的配置参数。

表 16–1 配置日历弹出的 iim.conf 参数

iim.conf 中的参数或部分

说明和相应的值 

JMS 用户部分

jms.consumers

报警名称。 

将此值设置为: 

cal_reminder

jms.consumer.cal_reminder.destination

报警的目的地。 

它必须与 ics.conf 文件中 caldb.serveralarms.url 配置参数的值相同。例如,

enp:///ics/customalarm

jms.consumer.cal_reminder.provider

提供者名称。 

设置为 ens

它必须与“JMS 提供者”部分中的 jms.providers 参数中的名称相同。

jms.consumer.cal_reminder.type

要设置的报警类型。将此值设置为: 

topic

jms.consumer.cal_reminder.param

报警参数。按以下形式设置此值,包括引号: 

"eventtype=calendar.alarm"

jms.consumer.cal_reminder.factory

针对新的日历提示消息而自行注册的侦听器。 

将此值设置为: 

com.iplanet.im.server.JMSCalendarMessageListener

在一行中输入该值。 

JMS 提供者部分

jms.providers

提供者名称。 

将值设置为 ens

它必须与“JMS 用户部分”列出的 jms.consumer.cal_reminder.provider 参数的值相同。

jms.provider.ens.broker

ENS 的主机名和 ENS 侦听收到的请求所使用的端口号。 

设置为 ics.conf 文件中的参数 service.ens.port 指定的端口。默认值为 57997。

例如: 

jms.provider.ens.broker=cal.example.com:57997

jms.provider.ens.factory

用于创建主题连接对象的工厂类。 

将此值设置为: 

com.iplanet.ens.jms.EnsTopicConnFactory

Instant Messaging 一般参数

iim_agent.enable

启用 Instant Messaging 的代理。默认情况下,此参数设置为 False

按以下形式设置此值,包括引号: 

iim_agent.enable="true"

iim_agent.agent-calendar.enable

加载可启用“日历”代理的组件。 

按以下形式设置此值,包括引号: 

iim_agent.agent-calendar.enable="true"

agent-calendar.jid

“日历”代理的 JID。

按以下形式设置此值: 

agent-calendar.jid=calimbot.server.domain

agent-calendar.password

将此参数设置为您想要“日历”代理用于连接到 Instant Messaging 服务器的密码。 

按以下形式设置此值: 

agent-calendar.password=password

iim_server.components

按以下形式设置此值: 

iim_server.components=agent-calendar

配置 Instant Messaging 弹出

本节包括以下配置说明:

Procedure使用 configure 实用程序配置日历弹出的 Instant Messaging 服务器

  1. 运行 configure

    有关 configure 实用程序的更多信息,参见完成配置核对表

  2. 在“日历代理配置”屏幕上,选择“启用日历代理”复选框。

  3. 输入“通知服务器”主机名和端口号。

    使用与“日历服务器”上 ics.conf 文件中的 service.ens.port 参数指定的端口号相同的端口号。

    您提供的值将被合并,并存储为 iim.conf 中的 jms.provider.ens.broker 参数的值。例如,如果您输入主机名 localhost 和端口号 57997,则 jms.provider.ens.broker 参数将设置如下:


    jms.provider.ens.broker=localhost:57997
  4. 输入“日历警告 URL”。

    此 URL 是报警的目的地。例如:


    enp:///ics/customalarm

    使用与“日历服务器”上 ics.conf 文件中的 caldb.serveralarms.url 参数指定的 URL 相同的 URL。

    您提供的值存储为 iim.confjms.consumer.cal_reminder.destination 参数的值。

  5. 单击“下一步”继续配置。

    有关 configure 实用程序的更多信息,参见第 1 章,安装后配置 Instant Messaging

Procedure手动配置日历弹出的 Instant Messaging 服务器

开始之前

收集表 16–1 中的信息。

  1. 表 16–1 中所示,编辑 iim.conf 文件中的一个或多个参数。

    有关查找和修改 iim.conf 的说明,参见iim.conf 文件语法

    所显示的参数值假定您需要事件和任务的弹出提示。如果 iim.conf 中没有这些参数,则添加它们。

  2. 使用 imadmin 启动“日历”代理。


    imadmin start agent-calendar
    

    imadmin 命令行实用程序位于以下目录:

    im-svr-base/sbin

    其中,im-svr-base 是 Instant Messaging 的安装目录。

Procedure配置弹出的日历服务器

  1. 以有权更改此配置的管理员身份登录到“日历”服务器主机。

  2. 转至 cal-svr-base/SUNWics5/cal/config 目录。

    其中,cal-svr-base 是“日历服务器”的安装目录。

  3. 通过复制和重命名旧的 ics.conf 文件将其保存。

  4. 确认下表中所示的参数拥有所示的值。如果没有,则您需要修改它们。

    参数 

    说明和默认值 

    caldb.serveralarms

    使日历报警排成队列。默认值为 "1"(启用)。

    caldb.serveralarms.contenttype

    报警内容的输出格式。默认值为 "text/xml"

    caldb.serveralarms.dispatch

    使日历报警得以分发。默认值为 "yes"

    caldb.serveralarms.dispatchtype

    要分发的服务器报警类型。默认值为 "ens"

    caldb.serveralarms.url

    这是检索报警内容的报警 URL。默认值为 "enp:///ics/customalarm"

  5. 保存 ics.conf 文件。

  6. 重新启动“日历”服务器。

    cal-svr-base /SUNWics5/cal/sbin/start-cal

    其中,cal-svr-base 是 Sun Java System Calendar Server 的安装目录。

Procedure配置日历弹出的 Instant Messenger

  1. 在 Instant Messenger 主窗口中,选择“工具”->“设置”。

  2. 在“设置”窗口中,单击“警报”选项卡。

  3. 选中“显示日历提醒”选项。

  4. 单击“确定”。

    现在,用户可以在其联机时通过 Instant Messenger 接收“日历”弹出。

在服务器池中配置日历弹出

要在服务器池部署中将“日历”弹出配置为起作用,您只需在该池中配置一个服务器的“日历”代理即可。弹出将发送到该池中每个配置过的“日历”代理。

管理日历代理

“日历”代理是一个 Instant Messaging 组件,它为“日历”和 Instant Messaging 用户提供弹出功能。此外,使用 Instant Messaging 提供的工具,可启动、停止、重新启动“日历”代理或检查其状态,并可通过日志文件监视其活动。有关管理“日历”代理组件的信息,参见停止、启动、刷新和检查 Instant Messaging 组件。另请参见第 13 章,管理 Instant Messaging 的日志记录以获得关于“日历”代理日志的信息。本节说明启用和禁用 Instant Messaging 代理。

Procedure启用和禁用 Instant Messaging 代理

  1. 打开 iim.conf

    有关查找和修改 iim.conf 的说明,参见iim.conf 文件语法

  2. iim_agent.enable 参数设为 true

    iim_agent.enable="true"

  3. 保存并关闭 iim.conf

  4. 刷新服务器。


    imadmin refresh server