CalendarApp.CalendarEvent 中的发件人信息

贾里德

我有点不知所措!我的许多客户向我发送了 GCal 邀请,但创建者以我的身份出现。我想从 CalendarEvent 中提取实际的发件人地址。以屏幕截图为例。Kathryn 是发件人,但我被列为发件人。

显示不同发件人与创建者的示例屏幕截图

兰布里丘斯

问题:

UI 中显示的主要名称是指事件的组织者,不一定与事件创建者相同(例如,事件创建者可能调用Events: move将事件移动到另一个日历,更改活动的组织者 - 见组织者)。

解决方法:

如果您使用Calendar API,您可以检索事件组织者(我认为 Apps Script Calendar service不可能实现,因为GuestStatus似乎不会OWNER在所有适当的情况下都返回,至少从我的经验来看)。

在 Apps Script 中使用 API 的一种简单方法是使用高级日历服务(为了使用它,您必须先启用高级服务)。

然后,使用 API,您可以:

  1. 使用Events.list根据时间范围列出所需日历中的事件,就像您已经使用CalendarApp.
  2. 检索您想要的事件。
  3. 访问活动的现场组织者,其中包含组织者的电子邮件地址以及有关此用户的其他信息。

代码示例:

function getOrganizer() {
  const calendarId = "YOUR_CALENDAR_ID";
  const optionalArgs = {
    "timeMin": "2021-05-17T00:00:00-02:00", // Change accordingly, min end time to filter
    "timeMax": "2021-05-19T00:00:00-02:00" // Change accordingly, max start time to filter
  };
  const events = Calendar.Events.list(calendarId, optionalArgs)["items"];
  const event = events[0];
  const organizer = event["organizer"];
  console.log(organizer);
  const organizerEmailAddress = organizer["email"];
  console.log(organizerEmailAddress);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章