在此发行版中,有两种用于发送事件通知和警报的通知服务:Sun Java System Message Queue (JMQ) 和 Event Notification System (ENS)。在将来的发行版中,Communications Service 产品只使用 JMQ,ENS 将被删除。但是在此发行版中,Communications Services 产品(Messaging Server、Calendar Server 和 Instant Messaging)对 ENS 仍具有内部相关性,您可以继续使用 ENS 来发送通知和警报。
要使用 JMQ(而不是 ENS),必须安装并配置 Sun Java System Message Queue。除此之外,您必须编写自己的通知,因为 Calendar Server 6.3 不提供通知。
使用 Sun Java Enterprise System 安装程序安装该产品。有关配置 Message Queue 的信息,请参见 Message Queue 文档。
要为 JMQ 配置 Calendar Server,必须将以下行添加到 ics.conf 文件中:
local.server.csmfagent.enable = "yes"
caldb.serveralarms.jmqlib = "/opt/SUNWics5/cal/lib/libmqcrt.so"(适用于 Solaris)
或者,
caldb.serveralarms.jmqlib = "/opt/sun/calendar/lib/libmqcrt.so"(适用于 Linux)
caldb.serveralarms.dispatchtype = "jmq"
caldb.serveralarms.jmqhost = "localhost"
caldb.serveralarms.jmqport = "7676"
caldb.serveralarms.jmqUser = "guest"
caldb.serveralarms.jmqPWD = "guest"
caldb.serveralarms.jmqTopic = "JES-CS"
每个通知都必须具有以下属性:MQ_MESSAGE_TYPE_HEADER_PROPERTY。此属性标识通知的类型。
此外,通知还可以具有其他属性,如下表所示:
字符串属性,表明此通知所产生的操作类型。此属性可以具有以下值:"EMAIL"、"AUDIO"、"DISPLAY"、"PROCEDURE" 和 "FLASHING"。
包含警报 ID 的字符串属性。
包含日历 ID 的字符串属性。
表明组件类型的字符串属性。该值为 "event" 或 "todo"。
包含周期 ID 的整型属性。
包含组件 ID 的字符串属性,组件 ID 为事件 ID 或待办事项 ID(任务 ID)。
通知分为两种类型:事件和待办事项的警报通知和更新通知。
对于警报通知,MQ_MESSAGE_TYPE_HEADER_PROPERTY 的值只会是 "alarm"。
对于更新通知,MQ_MESSAGE_TYPE_HEADER_PROPERTY 的值取决于触发此通知的操作类型。表 2–2 列出了此属性的触发操作和相应值。
表 2–2 更新通知值
触发 |
更新通知值 |
---|---|
删除日历 |
DELETECAL |
修改事件 |
MODIFYEVENT |
修改待办事项(任务) |
MODIFYTODO |
创建事件 |
CREATEEVENT |
创建待办事项(任务) |
CREATETODO |
刷新事件 |
REFRESHEVENT |
刷新待办事项(任务) |
REFRESHTODO |
回复事件 |
REPLYEVENT |
回复待办事项 |
REPLYTODO |