【问题标题】:Identify same/related calendar event from different calendars从不同的日历中识别相同/相关的日历事件
【发布时间】:2017-10-02 18:20:12
【问题描述】:

我需要从组织者的日历中检索与会者列表。为此,我需要确定另一个用户日历中的相同事件。

Exchange 正在链接相关事件,但该属性可能不会通过 Microsoft Graph API 公开,并且事件 id 不匹配。

到目前为止,我可以确定 iCalUId 确实匹配。当然,开始日期和结束日期也应该匹配。主题很可能不匹配,因为房间经常改变这个属性。

  1. 谁能确认,iCalUId 对于不同日历中的相关事件总是相同的?

  2. 我可以通过iCalUId 属性过滤Microsoft Graph 事件(或使用此键直接访问它)吗?

更新:

我找到了this article,这在理论上证实了我的第一个问题。如果有人可以根据实际经验确认这一点,我将不胜感激。

【问题讨论】:

    标签: icalendar microsoft-graph-api outlook-restapi


    【解决方案1】:

    iCalUId 属性是静态的,即使跨外部收件人也是如此。 iCalUId 属性反映了 iCalendar 规范 (RFC 5545 § 3.8.4.7) 中定义的 UID 属性作为“日历组件的持久、全局唯一标识符”。

    至于从 Microsoft Graph 中拉取它,您可以使用events 集合的$filter 查询参数来获取给定的iCalUId

    /v1.0/me/events?$filter=iCalUId eq '{UID}'
    

    您可以在 Graph Explorer 中使用 this sample 尝试此操作。

    【讨论】:

    • 你好。谢谢您的回答。谢谢你纠正我的语法。但我不知道你为什么从帖子中删除了我问题的根本原因。如果 Office 365 后面的 Exchange 服务器场会在房间的日历中维护与会者列表,我根本不需要这个。
    • 另一方面,过滤似乎不适用于 CalendarView。虽然两个事件的 iCalUId 相同,但过滤返回空结果。但是,过滤事件集合会返回结果,但仅适用于 SingleEvent 和 SeriesMaster 类型。不返回发生和异常。
    • 没错,你只会从events取回单曲和大师。 CalendarView 完全基于日期范围。
    • 有谁知道他们是否在测试版中更改了归档?似乎他们将 iCalUId 更改为 uid,但不再允许对其进行过滤?这对我们来说是个大问题,因为它是 Outlook Com 对象和 Graph 之间的连接器。
    猜你喜欢
    • 1970-01-01
    • 2022-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多