Class CalendarEvent

CalendarEvent

表示单个日历活动。

方法

方法返回类型简介
addEmailReminder(minutesBefore)CalendarEvent为活动添加新的电子邮件提醒。
addGuest(email)CalendarEvent向活动添加邀请对象。
addPopupReminder(minutesBefore)CalendarEvent向事件添加新的弹出式通知。
addSmsReminder(minutesBefore)CalendarEvent为活动添加新的短信提醒。
anyoneCanAddSelf()Boolean决定用户是否可以将自己添加为日历活动的邀请对象。
deleteEvent()void删除日历活动。
deleteTag(key)CalendarEvent从事件中删除键值对代码。
getAllDayEndDate()Date获取此全天日历活动的结束日期。
getAllDayStartDate()Date获取此全天日历活动的开始日期。
getAllTagKeys()String[]获取已为事件设置的代码的所有键。
getColor()String返回日历活动的颜色。
getCreators()String[]获取活动创建者。
getDateCreated()Date获取事件的创建日期。
getDescription()String获取事件说明。
getEmailReminders()Integer[]获取活动的所有电子邮件提醒的分钟值。
getEndTime()Date获取此日历活动结束的日期和时间。
getEventSeries()CalendarEventSeries获取该事件所属的一系列周期性活动。
getGuestByEmail(email)EventGuest按电子邮件地址获取邀请对象。
getGuestList()EventGuest[]获取活动的邀请对象,不包括活动所有者。
getGuestList(includeOwner)EventGuest[]获取活动的邀请对象,可能包括活动所有者。
getId()String获取事件的唯一 iCalUID。
getLastUpdated()Date获取事件的最后更新时间。
getLocation()String获取活动地点。
getMyStatus()GuestStatus获取有效用户的活动状态(例如是否参加或已邀请)。
getOriginalCalendarId()String获取最初创建此活动的日历的 ID。
getPopupReminders()Integer[]获取事件的所有弹出式提醒的分钟值。
getSmsReminders()Integer[]获取活动的所有短信提醒的分钟值。
getStartTime()Date获取此日历活动开始的日期和时间。
getTag(key)String获取事件的标记值。
getTitle()String获取活动的标题。
getVisibility()Visibility获取活动的公开范围。
guestsCanInviteOthers()Boolean决定邀请对象是否可以邀请其他邀请对象。
guestsCanModify()Boolean决定邀请对象是否可以修改活动。
guestsCanSeeGuests()Boolean决定访客能否看到其他邀请对象。
isAllDayEvent()Boolean确定此活动是否为全天活动。
isOwnedByMe()Boolean确定您是否是活动的所有者。
isRecurringEvent()Boolean确定相应活动是否属于某个活动系列。
removeAllReminders()CalendarEvent从活动中移除所有提醒。
removeGuest(email)CalendarEvent从活动中移除邀请对象。
resetRemindersToDefault()CalendarEvent使用日历的默认设置重置提醒。
setAllDayDate(date)CalendarEvent设置事件的日期。
setAllDayDates(startDate, endDate)CalendarEvent设置事件的日期。
setAnyoneCanAddSelf(anyoneCanAddSelf)CalendarEvent设置非邀请对象能否将自己添加到活动中。
setColor(color)CalendarEvent设置日历活动的颜色。
setDescription(description)CalendarEvent设置事件说明。
setGuestsCanInviteOthers(guestsCanInviteOthers)CalendarEvent设置邀请对象是否可以邀请其他邀请对象。
setGuestsCanModify(guestsCanModify)CalendarEvent设置邀请对象是否可以修改活动。
setGuestsCanSeeGuests(guestsCanSeeGuests)CalendarEvent设置是否允许邀请对象看到其他邀请对象。
setLocation(location)CalendarEvent设置事件的地点。
setMyStatus(status)CalendarEvent设置有效用户的活动状态(例如是否参加或已邀请)。
setTag(key, value)CalendarEvent在事件上设置键值对标记,用于存储自定义元数据。
setTime(startTime, endTime)CalendarEvent设置事件的开始和结束日期和时间。
setTitle(title)CalendarEvent设置事件的标题。
setVisibility(visibility)CalendarEvent设置事件的公开范围。

详细文档

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活动开始前的分钟数

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

抛出

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
  let attendeeEmail = 'user@example.com'; // Email address of the person you need to add
  let calendarId = 'calendar_123@group.calendar.google.com'; // ID of calendar containing event
  let eventId = '123abc'; // ID of event instance

  let calendar = CalendarApp.getCalendarById(calendarId);
  if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
    }
  let 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
  let attendeeEmail = 'user@example.com'; // Email address of the person you need to add
  let calendarId = 'calendar_123@group.calendar.google.com'; // ID of calendar with the events
  let startDate = new Date("YYYY-MM-DD"); // The first date to add the guest to the events
  let endDate = new Date("YYYY-MM-DD"); // The last date to add the guest to the events

  let calendar = CalendarApp.getCalendarById(calendarId);
    if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
  }
  // Get the events within the specified timeframe
  let 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 (var i = 0; i < calEvents.length; i++) {
  let event = calEvents[i];
  event.addGuest(attendeeEmail);
  }
}

参数

名称类型说明
emailString邀请对象的电子邮件地址。

弃踢回攻

CalendarEvent - 用于链接的 CalendarEvent

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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活动开始前的分钟数

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

addSmsReminder(minutesBefore)

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

参数

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

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

抛出

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

deleteEvent()

删除日历活动。

// Gets an event by its ID.
// TODO(developer): Replace the string with the ID of the event that you want to delete.
const event = CalendarApp.getEventById('abc123456');

// Deletes the event.
event.deleteEvent();

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

deleteTag(key)

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

参数

名称类型说明
keyString标记键

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

getAllDayEndDate()

获取此全天日历活动的结束日期。(如果这不是全天事件,此方法会抛出异常。)返回的 Date 表示事件结束后一天的零点(以脚本所在的时区为准)。如需改用日历的时区,请调用 getEndTime()

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Creates an event named 'My all-day event' for May 16, 2023.
const event = calendar.createAllDayEvent('My all-day event', new Date('May 16, 2023'));

// Gets the event's end date and logs it.
const endDate = event.getAllDayEndDate();
console.log(endDate);

弃踢回攻

Date - 此全天日历活动的结束日期

抛出

Error - 如果此活动不是全天活动

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

getAllDayStartDate()

获取此全天日历活动的开始日期。(如果这不是全天事件,此方法会抛出异常。)返回的 Date 表示事件开始当天的午夜(以脚本所在的时区)。如需改用日历的时区,请调用 getStartTime()

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Creates an event named 'My all-day event' for May 16, 2023.
const event = calendar.createAllDayEvent('My all-day event', new Date('May 16, 2023'));

// Gets the event's start date and logs it.
const startDate = event.getAllDayStartDate();
console.log(startDate);

弃踢回攻

Date - 此全天日历活动的开始日期

抛出

Error - 如果此活动不是全天活动

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • 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

getEndTime()

获取此日历活动结束的日期和时间。您必须拥有日历的访问权限。 对于非全天活动,这是定义活动结束时间的时间点。对于仅存储结束日期(而非日期和时间)的全天活动,此时段是日历时区活动结束后当天的零点。这样一来,您就可以对各类活动的结束时间进行有意义的比较;不过,也没必要保留原始日期而不进行修改。

对于全天活动,系统几乎总是应优先调用 getAllDayEndDate(),而不是调用此方法。

// 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 1st, 2023 that takes place
// between 4:00 PM and 5:00 PM.
const event =
  calendar.getEvents(new Date('Feb 01, 2023 16:00:00'), new Date('Feb 01, 2023 17:00:00'))[0];

if (event) {
 // If an event exists within the given time frame, gets the date and time at which the
 // event ends and logs it.
 console.log(event.getEndTime());
} else {
 // If no event exists within the given time frame, logs that info 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

getEventSeries()

获取该事件所属的一系列周期性活动。您必须有权访问该日历。即使此事件不属于系列,系统也会返回 CalendarEventSeries 对象,以便您可以添加新的重复设置。

// 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 18th, 2023 that takes place between
// 1:00 PM and 2:00 PM.
const event =
  calendar.getEvents(new Date('Feb 18, 2023 13:00:00'), new Date('Feb 18, 2023 14:00:00'))[0];

if (event) {
 // If an event exists within the given time frame, gets the event series for the event
 // and sets the color to pale green.
 event.getEventSeries().setColor(CalendarApp.EventColor.PALE_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');
}

弃踢回攻

CalendarEventSeries - 此活动所属的活动系列,如果尚无活动,则为新的活动系列

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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。请注意,Calendar v3 API日历高级服务使用的 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

getStartTime()

获取此日历活动开始的日期和时间。对于非全天活动,这是指定活动开始的时间点。对于仅存储开始日期(而非日期和时间)的全天活动,这是日历所在时区活动开始当天的零点。这样,您就可以对所有类型的事件的开始时间进行有意义的比较;但是,不一定会使原来一年中的某一天不做修改。

对于全天活动,系统几乎应始终优先调用 getAllDayStartDate(),而不是调用此方法。

// 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.
const event =
  calendar.getEvents(new Date('Feb 01, 2023 16:10:00'), new Date('Feb 01, 2023 16:25:00'))[0];

// Gets the date and time at which this calendar event begins and logs it.
const startTime = event.getStartTime();
console.log(startTime);

弃踢回攻

Date - 此日历活动的开始时间

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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

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

isAllDayEvent()

确定此活动是否为全天活动。

// 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.
const event =
  calendar.getEvents(new Date('Jan 31, 2023 09:05:00'), new Date('Jan 31, 2023 09:15:00'))[0];

// Determines whether this event is an all-day event and logs it.
console.log(event.isAllDayEvent());

弃踢回攻

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

isRecurringEvent()

确定相应活动是否属于某个活动系列。

// 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 Januart 31st, 2023 that takes place
// between 9:00 AM and 10:00 AM.
const event =
  calendar.getEvents(new Date('Jan 31, 2023 09:00:00'), new Date('Jan 31, 2023 10:00:00'))[0];

if (event) {
 // If an event exists within the given time frame, determines whether the event is part of an
 // event series and logs it.
 console.log(event.isRecurringEvent());
} 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');
}

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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
  let attendeeEmail = 'user@example.com'; // Email address of the person you need to remove
  let calendarId = 'calendar_123@group.calendar.google.com'; // ID of calendar containing event
  let eventId = '123abc'; // ID of event instance

  let calendar = CalendarApp.getCalendarById(calendarId);
  if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
    }
  let 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
  let attendeeEmail = 'user@example.com'; // Email address of the person you need to remove
  let calendarId = 'calendar_123@group.calendar.google.com'; // ID of calendar with the events
  let startDate = new Date("YYYY-MM-DD"); // The first date to remove the guest from the events
  let endDate = new Date("YYYY-MM-DD"); // The last date to remove the attendee from the events

  let calendar = CalendarApp.getCalendarById(calendarId);
    if (calendar === null) {
    // Calendar not found
    console.log('Calendar not found', calendarId);
    return;
  }
  // Get the events within the specified timeframe
  let 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 (var i = 0; i < calEvents.length; i++) {
  let event = calEvents[i];
  event.removeGuest(attendeeEmail);
  }
}

参数

名称类型说明
emailString邀请对象的电子邮件地址

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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');
}

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setAllDayDate(date)

设置事件的日期。应用此方法可将常规活动更改为全天活动。

// 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 17th, 2023 that takes place
// between 4:00 PM and 5:00 PM.
const event =
  calendar.getEvents(new Date('Feb 17, 2023 16:00:00'), new Date('Feb 17, 2023 17:00:00'))[0];

if (event) {
 // If an event exists within the given time frame, sets the date of the event and updates
 // it to an all-day event.
 event.setAllDayDate(new Date('Feb 17, 2023'));
} 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');
}

参数

名称类型说明
dateDate事件的日期(系统会忽略时间)

弃踢回攻

CalendarEvent - 此 CalendarEvent(用于链接)

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setAllDayDates(startDate, endDate)

设置事件的日期。应用此方法可将常规活动更改为全天活动。

// 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 18th, 2023 that takes place
// between 4:00 PM and 5:00 PM.
const event =
  calendar.getEvents(new Date('Feb 18, 2023 16:00:00'), new Date('Feb 18, 2023 17:00:00'))[0];

if (event) {
 // If an event exists within the given time frame, sets the event to be an all-day event from
 // Feb 18th, 2023 until Feb 25th, 2023. Applying this method changes a regular event into an
 // all-day event.
 event.setAllDayDates(new Date('Feb 18, 2023'), new Date('Feb 25, 2023'));
} 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');
}

参数

名称类型说明
startDateDate活动的开始日期(系统会忽略该时间)
endDateDate活动的结束日期(系统会忽略该时间)

弃踢回攻

CalendarEvent - 此 CalendarEvent(用于链接)

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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看看谁能邀请自己

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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 中的值。

弃踢回攻

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

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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新广告内容描述

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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邀请对象能否邀请其他人

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setGuestsCanModify(guestsCanModify)

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

参数

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

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setGuestsCanSeeGuests(guestsCanSeeGuests)

设置是否允许邀请对象看到其他邀请对象。

参数

名称类型说明
guestsCanSeeGuestsBoolean访客是否能看到其他人

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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新位置

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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新状态

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setTag(key, value)

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

参数

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

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setTime(startTime, endTime)

设置事件的开始和结束日期和时间。应用此方法可将全天活动更改为常规活动。

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

// Declares a start time of 11:00 AM on February 20th, 2023 and an end time of 12:00 PM on
// February 20th, 2023.
const startTime = new Date('Feb 20,2023 11:00:00');
const endTime = new Date('Feb 20, 2023  12:00:00');

// Creates an all-day event on February 20th, 2023.
const event = calendar.createAllDayEvent('Meeting', new Date('Feb 20,2023'));

// Updates the all-day event to a regular event by setting a start and end time for the event.
event.setTime(startTime, endTime);

参数

名称类型说明
startTimeDate活动的新开始
endTimeDate活动的新结尾

弃踢回攻

CalendarEvent - 此 CalendarEvent(用于链接)

授权

使用此方法的脚本需要获得以下一个或多个范围相关 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新标题

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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

setVisibility(visibility)

设置事件的公开范围。

参数

名称类型说明
visibilityVisibility

弃踢回攻

CalendarEvent - 此 CalendarEvent 用于串联

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

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