【问题标题】:Exchange Web Services: Access proposed date and time through AppointmentExchange Web 服务:通过约会访问建议的日期和时间
【发布时间】:2014-01-24 04:01:00
【问题描述】:

当会议受邀者提议新的会议时间时,可以在 Outlook 的“日程安排助手”(outlook 2007)中找到此信息:

有没有办法通过 EWS API 以编程方式访问这些信息? Appointment 的 RequiredAttendees 和 OptionalAttendees 集合让我可以了解与会者是否以及何时做出了回应,但如何才能访问实际建议的新时间?

【问题讨论】:

    标签: exchangewebservices


    【解决方案1】:

    我以前没有尝试过,但我认为您将通过以下方式获取此信息。 EWS 服务和 EWS 托管 API 没有将此实现为一流的功能。更准确地说,propose new time functionality 目前作为 Exchange Online 的一流功能提供。对于 Exchange Online,您需要检查会议响应消息 XML 中的 ProposedStartTime 和 ProposedEndTime 元素。因此,如果您使用的是 Exchange 2007、2010 和当前 2013,则需要按照我在下一段中的说明进行操作。您应该能够使用扩展属性访问此信息。

    提议新会议时间的与会者始终会导致组织者收到会议消息。当组织者对与会者发送的会议消息执行 GetItem 请求时,该请求应请求 PR_RECIPIENT_PROPOSED 属性。值为 true 表示接收者提议了一个新时间。这应该会触发获取 PR_RECIPIENT_PROPOSEDENDTIME 和 PR_RECIPIENT_PROPOSEDSTARTTIME 属性值的请求。

    这里是 an example of getting this type of property,带有 EWS 托管 API;

    这是一个快速的属性定义:

    ExtendedPropertyDefinition PidTagRecipientProposed = new ExtendedPropertyDefinition(0x5FE1, MapiPropertyType.Boolean);

    【讨论】:

    • 感谢您的帮助。通过我已经尝试过的会议响应获取此信息,这很有效。但是,我特别需要通过约会本身访问建议的时间,因为会议响应已被删除。
    • 关于扩展属性的建议总是好的,但您无法通过 EWS 检索该属性。它隐藏在 PR_MESSAGE_RECIPIENTS 表的 RecipientRow 中,EWS 无法检索它。这同样适用于附件的扩展属性。无法使用 EWS 检索对象/表结构服务器端中的任何内容,除非该信息已被烘焙到 API 中。
    • @Michael Mainer:由于我们使用 FindItem 访问的会议消息是针对 Outlook 会议请求生成的,我们如何从会议消息本身中获取交换会议 ID?
    【解决方案2】:

    恐怕您无法使用约会中的 EWS 获取此信息。它是 PR_MESSAGE_RECIPIENTS 属性的一部分,该属性是一个 MAPI 表(或对象,如果您愿意的话),并且 EWS 不支持检索它。从技术上讲,如果您想构建 ExportItem 功能(未内置在 EWS 托管 API 中的受支持功能服务器端)并通过大量二进制流来查找信息,您可能会得到它,但这几乎不可行。我自己没试过。另一种选择是使用 EWS 以外的东西来访问数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      • 2011-04-07
      相关资源
      最近更新 更多