Google Calendar ID Полномочия / Конфигурации - PullRequest
1 голос
/ 04 ноября 2019

У меня есть рабочая группа, у которой есть несколько встреч каждую неделю. Я хотел объединить их график в листе Google с помощью формы Google, а затем автоматизировать сохранение запланированных встреч для каждого соответствующего владельца каждого события.

Я написал автоматизированный код, создал и синхронизировал форму и лист по расписанию,но я столкнулся с препятствием на пути: у меня нет полномочий для планирования событий в их календарях через приложение (или, более конкретно, через идентификатор календаря).

Существует ли какая-либо авторизация конфигурации, которая может позволитьмне сделать это?

Или, в качестве дополнительного решения, можно ли в Календаре Google каким-либо способом включить моих партнеров в качестве гостей в мероприятия, запланированные в моем собственном Календаре?

Прямо сейчасЯ использую этот метод:

CalendarApp.getCalendarById(calendarID).createEventFromDescription(description);

1 Ответ

1 голос
/ 04 ноября 2019

Первый вариант

Создание событий в вашем календаре с гостями. Это создаст событие в вашем календаре, добавив электронные письма, которые вы хотите в качестве гостей.

function createEvent() {

  var event = {
  'summary': 'Google I/O 2015',
  'location': '800 Howard St., San Francisco, CA 94103',
  'description': 'A chance to hear more about Google\'s developer products.',
  'start': {
    'dateTime': '2015-05-28T09:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'end': {
    'dateTime': '2015-05-28T17:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'recurrence': [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  'attendees': [
    {'email': 'lpage@example.com'},
    {'email': 'jaumee@google.com'}, 
  ],
  'reminders': {
    'useDefault': "False",
    'overrides': [
      {'method': 'email', 'minutes': 24 * 60},
      {'method': 'popup', 'minutes': 10},
    ],
  }
}


Calendar.Events.insert(event, "your calendar id");

}

Я получил этот пример из документации .

Второй вариант

Получить доступ на запись в календарь пользователя при отправке формы. Это можно сделать с помощью правил Calendar ACL с триггером onSubmit () и присоединением кода к форме:

Предупреждение. Это даст чтение и запись доступ к всем событиям календаря пользователя

function onSubmit(){

  var rule = {
    "role": "writer",
    "scope": {
      "type": "user",
      "value": "your_email"
    }
  }

  Calendar.Acl.insert(rule, "primary"); //"primary" is the id of each user's main calendar

}

Пользователи должны будут принять разрешения, в противном случаевы не получите доступ к их календарю. Затем вам нужно будет создать события, как в первом варианте.

Дополнительная информация о правилах ACL здесь , в случае, если они принадлежат вашему домену или группе

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...