表示一系列事件(周期性活动)。
方法
详细文档
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);
参数
名称 | 类型 | 说明 |
---|---|---|
minutesBefore | Integer | 事件发生前的分钟数 |
返回
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); } }
参数
名称 | 类型 | 说明 |
---|---|---|
email | String | 访客的电子邮件地址。 |
返回
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);
参数
名称 | 类型 | 说明 |
---|---|---|
minutesBefore | Integer | 事件发生前的分钟数 |
返回
CalendarEventSeries
- 用于链式调用的 this CalendarEventSeries
授权
使用此方法的脚本需要具有以下一个或多个作用域或相关 REST API 中的适当作用域的授权:
-
https://www.googleapis.com/auth/calendar
-
https://www.google.com/calendar/feeds
addSmsReminder(minutesBefore)
为活动添加新的短信提醒。提醒时间必须在事件发生前至少 5 分钟,最多 4 周(40320 分钟)。
参数
名称 | 类型 | 说明 |
---|---|---|
minutesBefore | Integer | 事件发生前的分钟数 |
返回
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)
从事件中删除键值对代码。
参数
名称 | 类型 | 说明 |
---|---|---|
key | String | 标记键 |
返回
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()); }
参数
名称 | 类型 | 说明 |
---|---|---|
email | String | 访客的地址 |
返回
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()); }
参数
名称 | 类型 | 说明 |
---|---|---|
includeOwner | Boolean | 是否将所有者添加为访客 |
返回
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 API 和Google 日历高级服务使用的 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)
获取事件的代码值。
参数
名称 | 类型 | 说明 |
---|---|---|
key | String | 密钥 |
返回
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
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); } }
参数
名称 | 类型 | 说明 |
---|---|---|
email | String | 访客的电子邮件地址 |
返回
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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
anyoneCanAddSelf | Boolean | 是否允许任何人邀请自己 |
返回
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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
color | String | 整数颜色索引(作为字符串),或 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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
description | String | 新的广告内容描述 |
返回
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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
guestsCanInviteOthers | Boolean | 来宾是否可邀请他人 |
返回
CalendarEventSeries
- 用于链式调用的 this CalendarEventSeries
授权
使用此方法的脚本需要具有以下一个或多个作用域或相关 REST API 中的适当作用域的授权:
-
https://www.googleapis.com/auth/calendar
-
https://www.google.com/calendar/feeds
setGuestsCanModify(guestsCanModify)
设置邀请对象是否可以修改活动。
参数
名称 | 类型 | 说明 |
---|---|---|
guestsCanModify | Boolean | 邀请对象是否可以修改活动 |
返回
CalendarEventSeries
- 用于链式调用的 this CalendarEventSeries
授权
使用此方法的脚本需要具有以下一个或多个作用域或相关 REST API 中的适当作用域的授权:
-
https://www.googleapis.com/auth/calendar
-
https://www.google.com/calendar/feeds
setGuestsCanSeeGuests(guestsCanSeeGuests)
设置来宾是否可以看到其他来宾。
参数
名称 | 类型 | 说明 |
---|---|---|
guestsCanSeeGuests | Boolean | 来宾是否可以看到其他人 |
返回
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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
location | String | 新位置 |
返回
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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
status | GuestStatus | 新状态 |
返回
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);
参数
名称 | 类型 | 说明 |
---|---|---|
recurrence | EventRecurrence | 要使用的重复规则 |
startDate | Date | 系列中第一个事件的日期(仅使用日期,时间会被忽略) |
返回
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);
参数
名称 | 类型 | 说明 |
---|---|---|
recurrence | EventRecurrence | 要使用的重复规则 |
startTime | Date | 系列活动中第一个活动的开始日期和时间 |
endTime | Date | 系列中第一个事件的结束日期和时间 |
返回
CalendarEventSeries
- 用于串联的此 CalendarEventSeries
授权
使用此方法的脚本需要具有以下一个或多个作用域或相关 REST API 中的适当作用域的授权:
-
https://www.googleapis.com/auth/calendar
-
https://www.google.com/calendar/feeds
setTag(key, value)
在事件上设置键值对标记,以存储自定义元数据。
参数
名称 | 类型 | 说明 |
---|---|---|
key | String | 标记键 |
value | String | 标记值 |
返回
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'); }
参数
名称 | 类型 | 说明 |
---|---|---|
title | String | 新标题 |
返回
CalendarEventSeries
- 用于链式调用的 this CalendarEventSeries
授权
使用此方法的脚本需要具有以下一个或多个作用域或相关 REST API 中的适当作用域的授权:
-
https://www.googleapis.com/auth/calendar
-
https://www.google.com/calendar/feeds
setVisibility(visibility)
设置事件的公开范围。
参数
名称 | 类型 | 说明 |
---|---|---|
visibility | Visibility |
返回
CalendarEventSeries
- 用于链式调用的 this CalendarEventSeries
授权
使用此方法的脚本需要具有以下一个或多个作用域或相关 REST API 中的适当作用域的授权:
-
https://www.googleapis.com/auth/calendar
-
https://www.google.com/calendar/feeds