如何将其他用户添加到日历中

时间:2016-09-04 17:15:38

标签: google-apps-script google-calendar-api

我尝试通过Google Apps脚本以编程方式将用户添加到某些Google日历中。基本上,当新教师开始时,我想将它们添加到我们的5个日历中,而不必手动操作(注意,这些是个人帐户)。

我想要类似于subscribeToCalendar方法,但要添加一个不是活动用户的用户,即我。该脚本已经收集了他们的电子邮件地址,我有日历ID。我查看了Google日历文档,但无法找到任何方法。

我也在Google Calendar API文档中找到了这个,该文档讨论了将角色更新为例如" reader",这是我想要的,但我不知道这是如何通过Google实现的Apps脚本,页面上的示例是Java等。 https://developers.google.com/google-apps/calendar/v3/reference/acl/update#examples

我发现这个问题我认为是朝着正确的方向但是对于仅将用户添加到日历中似乎非常复杂: Create a POST body using Google Apps Script

有人可以帮忙吗? 提前致谢。 巴兹

1 个答案:

答案 0 :(得分:1)

您正朝着正确的方向前进,您需要使用Advanced Calendar Service(必须是enabled before use。在脚本编辑器中选择资源>高级Google服务...然后启用它在Google Developers Console中。)

启用后,您可share the calendar使用ACL: insert,这是一个示例:

function myFunction() {

  var calendarIds = ['CAL_ID_1','CAL_ID_2','CAL_ID_3','CAL_ID_4','CAL_ID_5'];
  var userEmail = 'USER_EMAIL';
  var resource = {
      'scope': {
        'type': 'user',
        'value': userEmail
      },
      'role': 'reader'
    };

  for (var i = 0; i < calendarIds.length; i++) {
    Calendar.Acl.insert(resource, calendarIds[i]);
  }
}