关于ruby:使用Rails与Outlook约会进行交互

关于ruby:使用Rails与Outlook约会进行交互

Interacting with Outlook appointments using rails

我有一个在Linux服务器上运行的Rails应用程序。 我想与Rails应用程序中的Outlook / Exchange 2003约会进行交互。 例如,某些操作应触发发送约会,然后最好在Outlook中接受/取消约会应触发应用程序中的事件。

如果失败,是否可以发布不需要Outlook插件即可读取Outlook 2003的日历? 我注意到,例如,没有插件,Outlook 2003不支持ical。 类似地,如果这在Ruby中不容易实现,而是在Linux上运行的另一种语言(例如Perl)中,那么这些建议将受到欢迎。

我们将不胜感激地收到任何有关如何实现这一目标的建议,或从何处开始寻找答案的建议。


Outlook约会只是带有特殊标题信息的电子邮件。本教程中有一些有关必需部分的信息。我从Outlook向我的Gmail帐户发送了一些会议邀请,并查看了其中的原始标题-您可以从中找出大部分协议。

iCalendar规格也可能对您有所帮助。


谢谢大家的帮助。我发现了一些东西,向我展示了如何使用Perl进行此操作,并将其移植到了ruby。我已经为那些寻求解决方案的人写了博客


如果可以升级到Exchange 2007,则可以使用比WebDAV更强大,更方便使用的Exchange Web服务。

在工作中,我继承了一个Rails应用程序,该应用程序允许用户创建单个约会。我被要求编写代码以将应用程序中的这些约会链接到用户的Outlook日历,以便它们始终保持同步。在我看来,这与您要执行的操作非常相似。

我不认为我可以发布我编写的确切代码。无论如何,我会给您一些有关如何解决它的想法。

Exchange Web服务仅以C#提供API(毫不奇怪,它是Microsoft。从技术上讲,您可以使用其他语言,因为它实际上是SOAP。)。我用C#编写了一个中间件,用于在Exchange服务器和Rails应用程序之间进行同步。当用户在应用中进行计划时,更改将发送到中间件,因此更改可以反映到其Outlook日历中。同时,中间件为所有用户注册"推送通知"订阅-每次在Outlook中进行更改时,都会立即通知中间件,这又会忠实地反映应用程序中的那些更改。当然,也支持定期约会。

希望对您有帮助。


看看github上的项目RExchange。


除了ceejayoz的评论,您还可以使用ActionMailer来捕获发送回的回复,并对其进行操作-您将需要某种形式的唯一ID,但该位置将包含在回复中。


要访问约会,只需使用WebDav访问Exchange上的Calendar文件夹即可。有关创建约会的详细信息,请参阅RFC2445。


推荐阅读