日历脚本添加来宾但不发送邀请

时间:2016-03-24 14:05:52

标签: google-apps-script

我有一个原型脚本,旨在将来宾添加到日历事件中。它将它们添加到事件就好了,但它不会触发邀请。有人能指出我正确的方向,找不到什么?

function addToEvent() {

 var guest = "you@gmail.com";
 var calendar = 'pbekisz@keuka.edu';
 var event = "33l5k7p5qocdprt5j2c9nhbhl8";

 var cal = CalendarApp.getCalendarById(calendar);
 var theEvent = cal.getEventSeriesById(event); 
 theEvent.addGuest(guest); 
}

addToEvent();

1 个答案:

答案 0 :(得分:0)

CalendarApp文档表明可以在创建事件时发送邀请。因为addGuest方法不包含关于如何发送邀请的任何指示,所以此功能似乎仅限于创建事件的时间。

作为一种解决方法,您可以继续使用原型,并通过电子邮件向您的新客人发送电子邮件,并邀请他们出现在他们的日历上。或者,您可以使用新访客创建新活动并发送邀请,然后使用原始活动中的状态添加现有访客,然后删除原始活动。

修改 当我进一步研究这个问题时,我遇到了old thread on google-apps-scripts-issues,他们发现可以使用高级Calendar API服务来实现您想要实现的目标:

function sendInvite(calendarId, eventId, email) {
  var event = Calendar.Events.get(calendarId, eventId);
  event.attendees.push({
    email: email
  });
  event = Calendar.Events.patch(event, calendarId, eventId, {
    sendNotifications: true
  });
}