Class CalendarEventSeries

日历活动系列

表示一系列事件(周期性活动)。

方法

方法返回类型简介
addEmailReminder(minutesBefore)CalendarEventSeries为事件添加新的电子邮件提醒。
addGuest(email)CalendarEventSeries向活动添加邀请对象。
addPopupReminder(minutesBefore)CalendarEventSeries向事件添加了新的弹出式通知。
addSmsReminder(minutesBefore)CalendarEventSeries为活动添加新的短信提醒。
anyoneCanAddSelf()Boolean确定用户能否将自己添加为日历活动的邀请对象。
deleteEventSeries()void删除活动系列。
deleteTag(key)CalendarEventSeries从事件中删除键值对代码。
getAllTagKeys()String[]获取已在事件上设置的代码的所有键。
getColor()String返回日历活动的颜色。
getCreators()String[]获取活动的创建者。
getDateCreated()Date获取事件的创建日期。
getDescription()String获取事件的说明。
getEmailReminders()Integer[]获取活动的所有电子邮件提醒的分钟值。
getEventType()EventType获取此事件的 EventType
getGuestByEmail(email)EventGuest根据电子邮件地址获取访客。
getGuestList()EventGuest[]获取活动的邀请对象(不包括活动所有者)。
getGuestList(includeOwner)EventGuest[]获取活动的邀请对象,可能包括活动所有者。
getId()String获取事件的唯一 iCalUID。
getLastUpdated()Date获取事件的上次更新日期。
getLocation()String获取活动的地点。
getMyStatus()GuestStatus获取有效用户的活动状态(例如“参加”或“受邀”)。
getOriginalCalendarId()String获取此活动最初创建时所用的日历的 ID。
getPopupReminders()Integer[]获取活动的所有弹出式提醒的分钟值。
getSmsReminders()Integer[]获取活动的所有短信提醒的分钟值。
getTag(key)String获取事件的代码值。
getTitle()String获取活动的标题。
getTransparency()EventTransparency获取事件的透明度。
getVisibility()Visibility获取事件的公开范围。
guestsCanInviteOthers()Boolean确定邀请对象能否邀请其他邀请对象。
guestsCanModify()Boolean确定邀请对象是否可以修改活动。
guestsCanSeeGuests()Boolean确定来宾是否可以看到其他来宾。
isOwnedByMe()Boolean确定您是否为活动的所有者。
removeAllReminders()CalendarEventSeries从活动中移除所有提醒。
removeGuest(email)CalendarEventSeries从活动中移除邀请对象。
resetRemindersToDefault()CalendarEventSeries使用日历的默认设置重置提醒。
setAnyoneCanAddSelf(anyoneCanAddSelf)CalendarEventSeries设置非邀请对象是否可以将自己添加到活动。
setColor(color)CalendarEventSeries设置日历活动的颜色。
setDescription(description)CalendarEventSeries设置事件的说明。
setGuestsCanInviteOthers(guestsCanInviteOthers)CalendarEventSeries设置邀请对象能否邀请其他邀请对象。
setGuestsCanModify(guestsCanModify)CalendarEventSeries设置邀请对象是否可以修改活动。
setGuestsCanSeeGuests(guestsCanSeeGuests)CalendarEventSeries设置访客能否看到其他访客。
setLocation(location)CalendarEventSeries设置活动的地点。
setMyStatus(status)CalendarEventSeries设置有效用户的活动状态(例如“参加”或“受邀”)。
setRecurrence(recurrence, startDate)CalendarEventSeries为全天活动系列设置重复规则。
setRecurrence(recurrence, startTime, endTime)CalendarEventSeries为此活动系列设置重复规则。
setTag(key, value)CalendarEventSeries在事件上设置键值对标记,以存储自定义元数据。
setTitle(title)CalendarEventSeries设置活动的标题。
setTransparency(transparency)CalendarEventSeries设置事件的透明度。
setVisibility(visibility)CalendarEventSeries设置事件的公开范围。

详细文档

addEmailReminder(minutesBefore)

为活动添加新的电子邮件提醒。提醒时间必须在事件发生前至少 5 分钟,最多 4 周(40320 分钟)。

// Gets an event by its ID. For an event series, use getEventSeriesById(iCalId)
// instead.
// TODO(developer): Replace the string with the event ID that you want to get.
const event = CalendarApp.getEventById('abc123456');

// Adds an email notification for 15 minutes before the event.
event.addEmailReminder(15);

参数

名称类型说明
minutesBeforeInteger活动开始前的分钟数

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

抛出

Error - 如果活动有超过 5 条提醒或时间不在法定范围内

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addGuest(email)

向活动添加邀请对象。

// Example 1: Add a guest to one event
function addAttendeeToEvent() {
  // Replace the below values with your own
  const attendeeEmail =
      'user@example.com';  // Email address of the person you need to add
  const calendarId =
      'calendar_123@group.calendar.google.com';  // ID of calendar containing
  // event
  const eventId = '123abc';  // ID of event instance

  const calendar = CalendarApp.getCalendarById(calendarId);
  if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
  }
  const event = calendar.getEventById(eventId);
  if (event === null) {
    // Event not found
    console.log('Event not found', eventId);
    return;
  }
  event.addGuest(attendeeEmail);
}

// Example 2: Add a guest to all events on a calendar within a specified
// timeframe
function addAttendeeToAllEvents() {
  // Replace the following values with your own
  const attendeeEmail =
      'user@example.com';  // Email address of the person you need to add
  const calendarId =
      'calendar_123@group.calendar.google.com';  // ID of calendar with the
  // events
  const startDate =
      new Date('YYYY-MM-DD');  // The first date to add the guest to the events
  const endDate =
      new Date('YYYY-MM-DD');  // The last date to add the guest to the events

  const calendar = CalendarApp.getCalendarById(calendarId);
  if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
  }
  // Get the events within the specified timeframe
  const calEvents = calendar.getEvents(startDate, endDate);
  console.log(calEvents.length);  // Checks how many events are found
  // Loop through all events and add the attendee to each of them
  for (let i = 0; i < calEvents.length; i++) {
    const event = calEvents[i];
    event.addGuest(attendeeEmail);
  }
}

参数

名称类型说明
emailString访客的电子邮件地址。

返回

CalendarEventSeries - 此 CalendarEventSeries 用于链式调用。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addPopupReminder(minutesBefore)

向事件添加了新的弹出式通知。通知必须在事件发生前至少 5 分钟,最多 4 周(40320 分钟)发出。

// Gets an event by its ID. For an event series, use getEventSeriesById(iCalId)
// instead.
// TODO(developer): Replace the string with the event ID that you want to get.
const event = CalendarApp.getEventById('abc123456');

// Adds a pop-up notification for 15 minutes before the event.
event.addPopupReminder(15);

参数

名称类型说明
minutesBeforeInteger活动开始前的分钟数

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addSmsReminder(minutesBefore)

为活动添加新的短信提醒。提醒时间必须在事件发生前至少 5 分钟,最多 4 周(40320 分钟)。

参数

名称类型说明
minutesBeforeInteger活动开始前的分钟数

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

抛出

Error - 如果活动有超过 5 条提醒或时间不在法定范围内

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

anyoneCanAddSelf()

确定用户能否将自己添加为日历活动的邀请对象。

// Gets an event by its ID. For an event series, use getEventSeriesById(iCalId)
// instead.
// TODO(developer): Replace the string with the event ID that you want to get.
const event = CalendarApp.getEventById('abc123456');

// Determines whether people can add themselves as guests to the event and logs
// it.
console.log(event.anyoneCanAddSelf());

返回

Boolean - 如果非邀请对象可以将自己添加到活动,则为 true;否则为 false

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

deleteEventSeries()

删除活动系列。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

deleteTag(key)

从事件中删除键值对代码。

参数

名称类型说明
keyString标记键

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

getAllTagKeys()

获取已在事件上设置的代码的所有键。

返回

String[] - 字符串键数组

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getColor()

返回日历活动的颜色。

// Gets an event by its ID. For an event series, use getEventSeriesById(iCalId)
// instead.
// TODO(developer): Replace the string with the event ID that you want to get.
const event = CalendarApp.getEventById('abc123456');

// Gets the color of the calendar event and logs it.
const eventColor = event.getColor();
console.log(eventColor);

返回

String - 事件颜色的字符串表示形式,表示 CalendarApp.EventColor 中值的索引 (1-11)。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getCreators()

获取活动的创建者。

// Gets an event by its ID. For an event series, use getEventSeriesById(iCalId)
// instead.
// TODO(developer): Replace the string with the event ID that you want to get.
const event = CalendarApp.getEventById('abc123456');

// Gets a list of the creators of the event and logs it.
console.log(event.getCreators());

返回

String[] - 活动创建者的电子邮件地址

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getDateCreated()

获取事件的创建日期。您必须有权访问该日历。

// Opens the calendar by using its ID.
// To get the user's default calendar use CalendarApp.getDefault() instead.
// TODO(developer): Replace the calendar ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 8:10 AM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 08:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, gets the date that the
  // event was created and logs it.
  const eventCreated = event.getDateCreated();
  console.log(eventCreated);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Date - 创建日期

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getDescription()

获取事件的说明。您必须拥有对该日历的编辑权限。

// Opens the calendar by its ID.
// To get the user's default calendar use CalendarApp.getDefault() instead.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 4th, 2023 that takes
// place between 4:00 PM and 5:00 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 04, 2023 16:00:00'),
    new Date('Feb 04, 2023 17:00:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the description of the
  // event.
  event.setDescription('Important meeting');

  // Gets the description of the event and logs it.
  const description = event.getDescription();
  console.log(description);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

String - 说明

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEmailReminders()

获取活动的所有电子邮件提醒的分钟值。您必须拥有对该日历的编辑权限。

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 4th, 2023 that takes
// place between 5:00 PM and 6:00 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 04, 2023 15:00:00'),
    new Date('Feb 04, 2023 18:00:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, adds email reminders for
  // the user to be sent at 4 and 7 minutes before the event.
  event.addEmailReminder(4);
  event.addEmailReminder(7);

  // Gets the minute values for all email reminders that are set up for the user
  // for this event and logs it.
  const emailReminder = event.getEmailReminders();
  console.log(emailReminder);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Integer[] - 一个数组,其中每个值都对应于提醒触发的事件之前的分钟数

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEventType()

获取此事件的 EventType

// Opens the default calendar and logs all out-of-office events for the current day.
const calendar = CalendarApp.getDefaultCalendar();
const events = calendar.getEventsForDay(new Date());
console.log(events.filter(e => e.getEventType() === CalendarApp.EventType.OUT_OF_OFFICE));

返回

EventType - 事件类型。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getGuestByEmail(email)

根据电子邮件地址获取访客。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 25th, 2023 that takes
// place between 5:00 PM and 5:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 25,2023 17:00:00'),
    new Date('Feb 25,2023 17:25:00'),
    )[0];

// Gets a guest by email address.
const guestEmailId = event.getGuestByEmail('alex@example.com');

// If the email address corresponds to an event guest, logs the email address.
if (guestEmailId) {
  console.log(guestEmailId.getEmail());
}

参数

名称类型说明
emailString访客的地址

返回

EventGuest - 访客,如果电子邮件地址与访客不符,则为 null

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

getGuestList()

获取活动的邀请对象(不包括活动所有者)。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 25th, 2023 that takes
// place between 5:00 PM and 5:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 25,2023 17:00:00'),
    new Date('Feb 25,2023 17:25:00'),
    )[0];

// Adds two guests to the event by using their email addresses.
event.addGuest('alex@example.com');
event.addGuest('cruz@example.com');

// Gets the guests list for the event.
const guestList = event.getGuestList();

// Loops through the list to get all the guests and logs their email addresses.
for (const guest of guestList) {
  console.log(guest.getEmail());
}

返回

EventGuest[] - 房客的数组

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getGuestList(includeOwner)

获取活动的邀请对象,可能包括活动所有者。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 25th, 2023 that takes
// place between 5:00 PM and 5:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 25,2023 17:00:00'),
    new Date('Feb 25,2023 17:25:00'),
    )[0];

// Gets the guests list for the event, including the owner of the event.
const guestList = event.getGuestList(true);

// Loops through the list to get all the guests and logs it.
for (const guest of guestList) {
  console.log(guest.getEmail());
}

参数

名称类型说明
includeOwnerBoolean是否将所有者添加为访客

返回

EventGuest[] - 房客的数组

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getId()

获取事件的唯一 iCalUID。请注意,Google 日历 v3 APIGoogle 日历高级服务使用的 iCalUID 和事件 id 不相同,不能互换使用。它们在语义上的一项差异是,在周期性事件中,同一事件的所有出现都具有不同的 ids,但它们都具有相同的 iCalUID。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for January 5th, 2023 that takes place
// between 9:00 AM and 9:25 AM.
// For an event series, use calendar.getEventSeriesById('abc123456@google.com');
// and replace the series ID with your own.
const event = calendar.getEvents(
    new Date('Jan 05, 2023 09:00:00'),
    new Date('Jan 05, 2023 09:25:00'),
    )[0];

// Gets the ID of the event and logs it.
console.log(event.getId());

返回

String - 活动的 iCalUID

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getLastUpdated()

获取事件的上次更新日期。

// Opens the calendar by its ID. You must have view access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:00 PM and 5:00 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:00:00'),
    new Date('Feb 01, 2023 17:00:00'),
    )[0];

// Gets the date the event was last updated and logs it.
const eventUpdatedDate = event.getLastUpdated();
console.log(eventUpdatedDate);

返回

Date - 上次更新日期

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getLocation()

获取活动的地点。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the location of the
  // event to Mumbai.
  event.setLocation('Mumbai');

  // Gets the location of the event and logs it.
  const eventLocation = event.getLocation();
  console.log(eventLocation);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

String - 活动地点

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getMyStatus()

获取有效用户的活动状态(例如“参加”或“受邀”)。如果有效用户是事件的所有者,则始终返回 GuestStatus.OWNER

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, gets the event status of
  // the effective user and logs it.
  const myStatus = event.getMyStatus();
  console.log(myStatus.toString());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

GuestStatus - 状态

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getOriginalCalendarId()

获取此活动最初创建时所用的日历的 ID。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 25th, 2023 that takes
// place between 4:00 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 25,2023 16:00:00'),
    new Date('Feb 25,2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, gets the ID of the calendar
  // where the event was originally created and logs it.
  const calendarId = event.getOriginalCalendarId();
  console.log(calendarId);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

String - 原始日历的 ID

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getPopupReminders()

获取活动的所有弹出式提醒的分钟值。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 4th, 2023 that takes
// place between 5:05 PM and 5:35 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 04, 2023 17:05:00'),
    new Date('Feb 04, 2023 17:35:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, adds two pop-up reminders
  // to the event. The first reminder pops up 5 minutes before the event starts
  // and the second reminder pops up 3 minutes before the event starts.
  event.addPopupReminder(3);
  event.addPopupReminder(5);

  // Gets the minute values for all pop-up reminders for the event and logs it.
  const popUpReminder = event.getPopupReminders();
  console.log(popUpReminder);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Integer[] - 一个数组,其中每个值都对应于提醒触发的事件之前的分钟数

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getSmsReminders()

获取活动的所有短信提醒的分钟值。

返回

Integer[] - 一个数组,其中每个值都对应于提醒触发的事件之前的分钟数

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getTag(key)

获取事件的代码值。

参数

名称类型说明
keyString密钥

返回

String - 标记值

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getTitle()

获取活动的标题。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for January 31st, 2023 that takes
// place between 9:05 AM and 9:15 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Jan 31, 2023 09:05:00'),
    new Date('Jan 31, 2023 09:15:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, logs the title of the
  // event.
  console.log(event.getTitle());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

String - 标题

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getTransparency()

获取事件的透明度。您可以使用此方法确定活动是 TRANSPARENT(表示日历在此时间段显示为“空闲”)还是 OPAQUE(表示日历在此时间段显示为“忙碌”)。

// Gets the first event from the default calendar for today.
const today = new Date();
const event = CalendarApp.getDefaultCalendar().getEventsForDay(today)[0];
// Gets the event's transparency and logs it.
const transparency = event.getTransparency();
Logger.log(transparency);

返回

EventTransparency - 透明度值。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getVisibility()

获取事件的公开范围。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, gets the visibility of the
  // event and logs it.
  const eventVisibility = event.getVisibility();
  console.log(eventVisibility.toString());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Visibility - 可见度值

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

guestsCanInviteOthers()

确定来宾是否可以邀请其他来宾。

// Opens the calendar by its ID. You must have view access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 9:35 AM and 9:40 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 09:35:00'),
    new Date('Feb 01, 2023 09:40:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, determines whether guests
  // can invite other guests and logs it.
  console.log(event.guestsCanInviteOthers());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Boolean - 如果邀请对象可以邀请其他人,则为 true;否则为 false

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

guestsCanModify()

确定邀请对象是否可以修改活动。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 9:35 AM and 9:40 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 09:35:00'),
    new Date('Feb 01, 2023 09:40:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the event so that
  // guests can't modify it.
  event.setGuestsCanModify(false);

  // Determines whether guests can modify the event and logs it.
  console.log(event.guestsCanModify());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Boolean - 如果邀请对象可以修改活动,则为 true;否则为 false

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

guestsCanSeeGuests()

确定来宾是否可以看到其他来宾。

// Opens the calendar by its ID. You must have view access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 9:35 AM and 9:40 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 09:35:00'),
    new Date('Feb 01, 2023 09:40:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, determines whether guests
  // can see other guests and logs it.
  console.log(event.guestsCanSeeGuests());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Boolean - 如果邀请对象可以看到其他邀请对象,则为 true;否则为 false

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

isOwnedByMe()

确定您是否为活动的所有者。

// Opens the calendar by its ID. You must have view access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for January 31st, 2023 that takes
// place between 9:05 AM and 9:15 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Jan 31, 2023 09:05:00'),
    new Date('Jan 31, 2023 09:15:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, determines whether you're
  // the owner of the event and logs it.
  console.log(event.isOwnedByMe());
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

Boolean - 如果事件归有效用户所有,则为 true;否则为 false

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

removeAllReminders()

从活动中移除所有提醒。

// Opens the calendar by its ID. You must have edit access to the calendar
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 1,2023 16:10:00'),
    new Date('Feb 1,2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, removes all reminders from
  // the event.
  event.removeAllReminders();
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

removeGuest(email)

从活动中移除邀请对象。

// Example 1: Remove a guest from one event
function removeGuestFromEvent() {
  // Replace the below values with your own
  const attendeeEmail =
      'user@example.com';  // Email address of the person you need to remove
  const calendarId =
      'calendar_123@group.calendar.google.com';  // ID of calendar containing
  // event
  const eventId = '123abc';  // ID of event instance

  const calendar = CalendarApp.getCalendarById(calendarId);
  if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
  }
  const event = calendar.getEventById(eventId);
  if (event === null) {
    // Event not found
    console.log('Event not found', eventId);
    return;
  }
  event.removeGuest(attendeeEmail);
}

// Example 2: Remove a guest from all events on a calendar within a specified
// timeframe
function removeGuestFromAllEvents() {
  // Replace the following values with your own
  const attendeeEmail =
      'user@example.com';  // Email address of the person you need to remove
  const calendarId =
      'calendar_123@group.calendar.google.com';  // ID of calendar with the
  // events
  const startDate = new Date(
      'YYYY-MM-DD');  // The first date to remove the guest from the events
  const endDate = new Date(
      'YYYY-MM-DD');  // The last date to remove the attendee from the events

  const calendar = CalendarApp.getCalendarById(calendarId);
  if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
  }
  // Get the events within the specified timeframe
  const calEvents = calendar.getEvents(startDate, endDate);
  console.log(calEvents.length);  // Checks how many events are found
  // Loop through all events and remove the attendee from each of them
  for (let i = 0; i < calEvents.length; i++) {
    const event = calEvents[i];
    event.removeGuest(attendeeEmail);
  }
}

参数

名称类型说明
emailString访客的电子邮件地址

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

resetRemindersToDefault()

使用日历的默认设置重置提醒。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 1, 2023 16:10:00'),
    new Date('Feb 1, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, resets the reminders using
  // the calendar's default settings.
  event.resetRemindersToDefault();
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setAnyoneCanAddSelf(anyoneCanAddSelf)

设置非邀请对象是否可以将自己添加到活动。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 15th, 2023 that takes
// place between 3:30 PM and 4:30 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 15, 2023 15:30:00'),
    new Date('Feb 15, 2023 16:30:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the event so that
  // non-guests can't add themselves to the event.
  event.setAnyoneCanAddSelf(false);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
anyoneCanAddSelfBoolean是否允许任何人邀请自己

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setColor(color)

设置日历活动的颜色。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the color of the
  // calendar event to green.
  event.setColor(CalendarApp.EventColor.GREEN);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
colorString整数颜色索引(作为字符串),或 CalendarApp.EventColor 中的值。

返回

CalendarEventSeries - 此日历活动,用于串联。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setDescription(description)

设置事件说明。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 4th, 2023 that takes
// place between 5:05 PM and 5:35 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 04, 2023 17:05:00'),
    new Date('Feb 04, 2023 17:35:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the description of the
  // event to 'Meeting.'
  event.setDescription('Meeting');
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
descriptionString新的广告内容描述

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setGuestsCanInviteOthers(guestsCanInviteOthers)

设置邀请对象能否邀请其他邀请对象。

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own. You must have edit access to
// the calendar.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 9:35 AM and 9:40 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 09:35:00'),
    new Date('Feb 01, 2023 09:40:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the event so that
  // guests can invite other guests.
  event.setGuestsCanInviteOthers(true);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
guestsCanInviteOthersBoolean来宾是否可邀请他人

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setGuestsCanModify(guestsCanModify)

设置邀请对象是否可以修改活动。

参数

名称类型说明
guestsCanModifyBoolean邀请对象是否可以修改活动

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setGuestsCanSeeGuests(guestsCanSeeGuests)

设置访客能否看到其他访客。

参数

名称类型说明
guestsCanSeeGuestsBoolean来宾是否可以看到其他人

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setLocation(location)

设置活动的地点。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the location of the
  // event to Noida.
  event.setLocation('Noida');
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
locationString新位置

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setMyStatus(status)

设置有效用户的活动状态(例如“参加”或“受邀”)。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for February 1st, 2023 that takes
// place between 4:10 PM and 4:25 PM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Feb 01, 2023 16:10:00'),
    new Date('Feb 01, 2023 16:25:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, sets the event status for
  // the current user to maybe.
  event.setMyStatus(CalendarApp.GuestStatus.MAYBE);
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
statusGuestStatus新状态

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

setRecurrence(recurrence, startDate)

为全天活动系列设置重复规则。应用此方法可将常规活动系列更改为全天活动系列。

// Sets the events in a series to take place every Wednesday in 2013.
const eventSeries = CalendarApp.getDefaultCalendar().getEventSeriesById(
    '123456789@google.com',
);
const startDate = new Date('January 2, 2013 03:00:00 PM EST');
const recurrence = CalendarApp.newRecurrence()
                       .addWeeklyRule()
                       .onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY)
                       .until(new Date('January 1, 2014'));
eventSeries.setRecurrence(recurrence, startDate);

参数

名称类型说明
recurrenceEventRecurrence要使用的重复规则
startDateDate系列中第一个事件的日期(仅使用日期,时间会被忽略)

返回

CalendarEventSeries - 用于串联的此 CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setRecurrence(recurrence, startTime, endTime)

为此系列活动设置重复发生规则。应用此方法会将全天活动系列更改为常规活动系列。

// Sets the events in a series to take place from 3pm to 4pm every Tuesday and
// Thursday in 2013.
const eventSeries = CalendarApp.getDefaultCalendar().getEventSeriesById(
    '123456789@google.com',
);
const startTime = new Date('January 1, 2013 03:00:00 PM EST');
const endTime = new Date('January 1, 2013 04:00:00 PM EST');
const recurrence =
    CalendarApp.newRecurrence()
        .addWeeklyRule()
        .onlyOnWeekdays(
            [CalendarApp.Weekday.TUESDAY, CalendarApp.Weekday.THURSDAY])
        .until(new Date('January 1, 2014'));
eventSeries.setRecurrence(recurrence, startTime, endTime);

参数

名称类型说明
recurrenceEventRecurrence要使用的重复规则
startTimeDate系列活动中第一个活动的开始日期和时间
endTimeDate系列中第一个事件的结束日期和时间

返回

CalendarEventSeries - 用于串联的此 CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setTag(key, value)

在事件上设置键值对标记,以存储自定义元数据。

参数

名称类型说明
keyString标记键
valueString标记值

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setTitle(title)

设置活动的标题。

// Opens the calendar by its ID. You must have edit access to the calendar.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById(
    'abc123456@group.calendar.google.com',
);

// Gets the first event from the calendar for January 31st, 2023 that takes
// place between 9:05 AM and 9:15 AM. For an event series, use
// calendar.getEventSeriesById('abc123456@google.com'); and replace the series
// ID with your own.
const event = calendar.getEvents(
    new Date('Jan 31, 2023 09:05:00'),
    new Date('Jan 31, 2023 09:15:00'),
    )[0];

if (event) {
  // If an event exists within the given time frame, changes its title to
  // Event1.
  event.setTitle('Event1');
} else {
  // If no event exists within the given time frame, logs that information to
  // the console.
  console.log('No events exist for the specified range');
}

参数

名称类型说明
titleString新标题

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setTransparency(transparency)

设置事件的透明度。您可以使用此方法设置活动是 TRANSPARENT(表示日历在此时间段显示为“空闲”)还是 OPAQUE(表示日历在此时间段显示为“忙碌”)。

// Gets an event by its ID. For an event series, use getEventSeriesById(iCalId)
// instead.
// TODO(developer): Replace the string with the event ID that you want to get.
const event = CalendarApp.getEventById('abc123456');
// Sets the event's transparency to TRANSPARENT.
event.setTransparency(CalendarApp.EventTransparency.TRANSPARENT);

参数

名称类型说明
transparencyEventTransparency透明度值。

返回

CalendarEventSeries - 此 CalendarEventSeries 用于链式调用。

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setVisibility(visibility)

设置事件的公开范围。

参数

名称类型说明
visibilityVisibility

返回

CalendarEventSeries - 用于链式调用的 this CalendarEventSeries

授权

使用此方法的脚本需要具有以下一项或多项范围相关 REST API 中的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds