如何在类似日历的 Web 应用程序和桌面日历应用程序(如 Outlook)之间提供最大程度的集成

发布于 2024-09-05 11:55:37 字数 1572 浏览 3 评论 0原文

我被分配升级/重写我公司用来安排电话会议的网络应用程序。升级的目标之一是改进应用程序与用户的 Outlook 日历(最好还有其他日历程序)之间的集成。

目前,当用户在 Web 应用程序上查看预定电话会议的详细信息时,他们可以单击“添加到 Outlook 日历”链接,该链接会将他们指向动态生成的 .ical 文件。在我们的大多数用户系统上,Outlook 默认打开该文件,打开“创建日历约会”窗口,其中预先填充了会议信息。此链接仅创建 1 次约会,并且每次发生呼叫时都必须单击该链接。因此,如果 6 月的每个星期一都接到电话,您就必须单击 4 个链接才能将所有约会添加到您的日历中。这是我们当前集成水平的全部范围。

理想情况下,我们将能够升级系统,以便用户可以“订阅”通话,这意味着不仅是当前通话,而且重复发生的所有通话都将出现在用户的日历中,只需单击一下即可。如果一系列呼叫中的一个呼叫被取消或重新安排,则该呼叫的约会将在用户的日历中发生变化,而用户无需执行任何操作,并且不会打乱该系列的其余约会。此外,对呼叫信息的任何更改(例如,电话号码已更改)都会自动更新到任何订阅者的 Outlook 日历中,而无需返回网络应用程序来仔细检查其信息是否是最新的。

理想情况下,这也适用于其他流行的日历程序,以及 Google 日历。

我不知道我们是否能够达到这种集成水平,但我希望尽可能接近这一水平。

其他细节和挑战:

  • 我们没有在公共服务器上运行 Exchange,我不太可能能够改变这一点
  • 假设我们的用户基本上是“一般互联网公众”。我们的用户不是我们办公室网络的成员,也不可能是。我们无法为他们设置网络登录或 Exchange 帐户。我们的一些用户不使用 Outlook,而是使用其他一些日历程序。在使用 Outlook 的用户中,并非所有用户都使用相同的版本。我们在 50 多个国家/地区拥有使用此网络应用程序的用户。
  • 同步将是单向的。没有人可以在自己的日历中进行更改并期望服务器将它们反映/复制给其他用户
  • 当前的电话会议应用程序是用 ColdFusion 编写的。 Rewrite 可能会在 ASP.NET 中进行,但我还没有确认。与其中一种或两种技术一起使用的解决方案受到赞赏。

我知道 .ical 文件理论上可以包含多个事件,但在我自己的实验中,我没有成功获取 Outlook(我的计算机上有 Outlook 2003,但我愿意升级,并且只在必要时支持较新的版本)使用 .ical 文件方法一次添加多个事件。也许有人知道如何设置 Outlook 接受的多事件 .ical 文件?可以“订阅”此类 .ical 文件的链接吗?有日历 RSS 提要之类的东西吗?我可以模拟运行交换服务器吗?还有其他想法吗?谢谢大家!

于2010-06-16编辑并提供更多信息:

  • 如果可能的话,我希望用户不必下载插件或进行任何困难的配置,因为他们中的许多人不具备技术倾向,我可能会失去他们在这个过程中。
  • 如果有必要下载一些东西来让它工作,那么我也愿意考虑编写我自己的插件,某种我公司品牌的“通话日历工具栏”之类的东西。这可能会很顺利。那行得通吗?
  • 我提到 Outlook 2003 是因为我的办公室计算机上就是这个版本。但如果您的答案是“我知道一种方法,但它仅适用于 Outlook 2007 或 2010”,那也没关系。我想我可以只支持较新的软件。

I've been assigned to upgrade/rewrite a webapp that my company uses to schedule conference calls. One of the goals of the upgrade is to improve integration between the application and our user's Outlook calendars (and ideally other calendar programs as well).

At present, when a user is viewing the details of a scheduled conference call on the webapp, they can click an "Add to Outlook calendar" link, which points them to a dynamically generated .ical file. On most of our users' systems, Outlook opens the file by default, bringing up the "create calendar appointment" window with the concall information pre-populated. This link creates a 1-time appointment only, and has to be clicked on for each occurrence of the call. So if a call happened every Monday in June, you would have to click 4 links to add all the appointments to your calendar. This is the full extent of our current level of integration.

Ideally, we will be able to upgrade the system so that users can "subscribe" to a con call, which would mean not just the current call, but all calls in a reoccurring series would appear in the user's calendar with a single click. If one call in a series was cancelled, or rescheduled, that call's appointment would change in the users' calendar, without the user having to do anything, and without upsetting the rest of the series' appointments. Also, any changes to the call's info (say, the phone number was changed) would automatically be updated in the Outlook calendars of anyone who subscribed, without them having to come back to the webapp to double-check that their information is up to date.

Ideally this would also work with other popular calendar programs, as well as Google Calendar.

I don't know if we'll be able to achieve that level of integration, but I'd like to get as close to that as we can.

Additional details and challenges:

  • We aren't running Exchange on a public server, and I'm not likely to be able to get that changed
  • Assume that our users are basically "the general internet public". Our users are not members of our office's network, nor can they be. We can't set up network logins or Exchange accounts for them. Some of our users are not using Outlook, but some other calendar program. Of the ones that are using Outlook, not all are using the same version. We have users in more than 50 countries that are using this webapp.
  • Synchronization would be one-directional. Nobody can make changes in their own calendars and expect the server to reflect them/replicate them to other users
  • Current conference calling application is written in ColdFusion. Rewrite will probably be in ASP.NET, but I haven't confirmed that yet. Solutions that work with either or both technologies are appreciated.

I know that .ical files can theoretically contain more than one event, but in my own experiments I haven't had success in getting Outlook (Outlook 2003 on my computer, but I'm willing to upgrade and only support newer versions if necessary) to add more than one event at a time using the .ical file method. Maybe someone knows how to set up a multi-event .ical file that Outlook will accept? Could a link to such an .ical file be "subscribed" to? Is there such thing as a calendar RSS feed? Could I simulate running an exchange server? Any other ideas? Thanks everyone!

Edit on 2010-06-16 with more info:

  • If possible, I would prefer that users not have to download a plugin or do any difficult configuration, as many of them are not technically inclined and I might lose them in the process.
  • If it is necessary to download something to get this to work, then I'm willing to also consider writing my own plugin, some kind of my-company-branded "con call calendar toolbar" or something. That might go over well. Would that work?
  • I mentioned Outlook 2003 because that's the version I have on my office computer. But if your answer is "I know a way to do this but it only works for Outlook 2007 or 2010", that's fine. I think I can get away with only supporting newer software.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

一袭水袖舞倾城 2024-09-12 11:55:37

Outlook 2003 并不真正支持 iCal。您是否查看过 remoteCalendars
它是 Outlook 2003 的一个小型开源插件,可以与 ical 很好地配合。
另一方面,Outlook 2007 及更高版本根据此支持 iCal MS 网站上的页面

希望有帮助。

iCal is not really supported on outlook 2003. Have you had a look at remoteCalendars ?
It's a little open source plugin for outlook 2003 that makes it play nice with ical.
On the other hand, Outlook 2007 and above support iCal according to this page on MS website

Hope it helps.

孤千羽 2024-09-12 11:55:37

您可以使用 CalDAV 创建用户可以订阅的日历“流”。这些将由客户不时更新。您可以将调用推送到用户流上。您还可以通过 Google 的 API 与 GoogleCal 集成。

You could use CalDAV to create calander 'streams' that a user can subscribe to. These will be updated by the client every now and then. You can the just push calls onto the user stream. You could also intergrate with GoogleCal with google's API's.

帅哥哥的热头脑 2024-09-12 11:55:37

我会看看 CalDAV (也许在 DavMail 网关)。

I would look at CalDAV (and maybe at the DavMail gateway).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文