Скрипт для доступа и изменения пользовательских календарей с дополнительными функциями.
The advanced Calendar service lets you use the public Google Calendar API in Google Apps Script. Much like Apps Script's built-in Calendar service , this API allows scripts to access and modify the user's Google Calendar, including additional calendars that the user is subscribed to. In most cases, the built-in service is easier to use, but this advanced service provides a few extra features, including setting the background color for individual events.
Это расширенная услуга, которую необходимо активировать перед использованием .
Ссылка
Подробную информацию об этой службе см. в справочной документации по общедоступному API календаря. Как и все расширенные службы в Apps Script, расширенная служба календаря использует те же объекты, методы и параметры, что и общедоступный API. Дополнительную информацию см. в разделе «Как определяются сигнатуры методов» .
Чтобы сообщить о проблемах и получить другую поддержку, см. руководство по поддержке календаря .
Заголовки HTTP-запроса
Расширенная служба календаря может принимать заголовки HTTP-запроса If-Match и If-None-Match . Подробности см. в справочной документации .
Пример кода
В приведенном ниже примере кода используется версия 3 API.
Создание событий
В следующем примере показано, как создать событие в календаре пользователя по умолчанию.
Календари объявлений
В следующем примере показано, как получить подробную информацию о календарях, отображаемых в списке календарей пользователя.
Список событий
В следующем примере показано, как отобразить список из 10 предстоящих событий в календаре пользователя по умолчанию.
Условное изменение события
В следующем примере показано, как условно обновлять событие календаря с помощью заголовка If-Match . Скрипт создает новое событие, ждет 30 секунд, а затем обновляет событие только в том случае, если с момента его создания никакие данные события не изменились.
Условное извлечение события
В следующем примере показано, как условно получать событие календаря, используя заголовок If-None-Match . Скрипт создает новое событие, а затем в течение 30 секунд отслеживает его изменения. При каждом изменении события загружается новая версия.
Синхронизация событий
В следующем примере показано, как получать события с помощью токенов синхронизации. При включении токена синхронизации в запрос расширенной службы календаря, полученный ответ будет содержать только те элементы, которые изменились с момента генерации этого токена, что обеспечивает более эффективную обработку. Дополнительные сведения о процессе синхронизации см. в разделе «Эффективная синхронизация ресурсов» .
В следующем примере используется тот же метод getRelativeDate(daysOffset, hour) что и в предыдущих примерах.