是否可以在IBM Domino服务器上订阅邮件事件?
我需要一种类似于Microsoft Exchange Event Notification提供的服务,您可以订阅事件并在有变化时收到通知 - 例如。新电子邮件的到来。我需要解决方案是服务器端,因为我不能依赖于客户端运行的用户。
答案 0 :(得分:2)
不幸的是,根据我上面的评论,没有预先打包的等效于EWS支持的推送,拉取和流式订阅服务。 Notes客户端可以通过Notes RPC协议获取通知,并且在IBM的Notes Traveler移动产品中显然也有一些技术,但我不知道它是预先打包的Web服务,甚至是通知API。你必须建立它。你可以通过多种方式解决这个问题。
对于推送或流式订阅,一种方法是使用Extension Manager API插件,在服务器上运行并监控邮箱。您可以在Domino的HTTP堆栈中使用DSAPI插件来管理传入连接并将数据提供给订阅者,但老实说,我不知道Domino的HTTP堆栈是否可以处理订阅模型中隐含的持久连接。或者,Extension Manager插件可以快速将数据发送到您想要的任何其他语言编写的代码,并在任何Web堆栈上运行。当然,您必须通过所有链接在一起的部分来处理安全问题。
对于pull订阅,我猜它实际上更像是一个轮询结构,状态保存在某处,以便只有在上次调用后才会发送更改。你有多种选择。显然,您可以使用Domino的内置HTTP服务器,因此您可以为此编写自己的Domino托管Web服务。您还可以使用Domino数据服务(REST API)来执行此操作 - 将所有必需的状态信息存储在客户端。 (快速浏览一下,我看不到通过Domino Data Service从指定的日期时间开始获取所有新文档的好选择,但它可能是可能的。)
我确实担心任何自定义解决方案的可伸缩性。我的理解是,微软在其服务中有相当多的缓存和优化,以解决规模问题。显然,您可以将自己需要的内容构建到自己的Web服务中,但这可能会增加很多工作量。