Google Apps Scriptでゲストをカレンダーに取得・追加する方法を詳説!
受賞作はもう書けない
GASでカレンダーのゲストを取得する
まずは、既に作成されているカレンダーイベントからゲストを取得する方法だ。
カレンダーイベントを取得する
イベントを操作するために、まずはGoogle カレンダーのイベントを取得する必要がある。
スクリプトはこんな感じだ。
function getEventGuests() {
const calendar = CalendarApp.getCalendarById('YOUR_CALENDAR_ID');
const events = calendar.getEvents(new Date('2023-10-01'), new Date('2023-10-31'));
const event = events[0];
const guests = event.getGuestList();
guests.forEach(guest => {
Logger.log(guest.getEmail());
});
}
✅ CalendarApp.getCalendarById()で特定のカレンダーを取得し、getEvents()でイベントをリストとして取得する。
ゲストの取得はイベントから行う。このリストは、各ゲストの情報を含んでいる。
✅ event.getGuestList()でイベントに関連する全てのゲストを配列で取得できる。
GASでカレンダーにゲストを追加する
次に、新しいゲストをカレンダーイベントに追加する方法を見てみよう。
カレンダーイベントにゲストを追加
イベントに新しいゲストを追加するには、以下のスクリプトを使う。
function addGuestToEvent() {
const calendar = CalendarApp.getCalendarById('YOUR_CALENDAR_ID');
const events = calendar.getEvents(new Date('2023-10-01'), new Date('2023-10-31'));
const event = events[0];
const email = "new.guest@example.com";
event.addGuest(email);
Logger.log(email + " has been added!");
}
✅ event.addGuest()を使って、ゲストのメールアドレスを指定してイベントに追加できる。
練習問題:GASでカレンダー操作を試してみよう!
次の条件でGASを使ってカレンダーイベント内のゲストを管理してみよう。
- カレンダーIDを指定して、特定のイベントを取得しよう。
- イベントに「test.guest@example.com」というゲストを追加しよう。
- 追加された結果をLoggerで表示しよう。
解答と解説
function manageEventGuests() {
const calendar = CalendarApp.getCalendarById('YOUR_CALENDAR_ID');
const events = calendar.getEvents(new Date('2023-10-01'), new Date('2023-10-31'));
const event = events[0];
const email = "test.guest@example.com";
event.addGuest(email);
Logger.log(email + " has been successfully added to the event!");
}
✅ manageEventGuests()関数を使って、指定のカレンダーのイベントにゲストを追加し、その結果を確認することができる。
CalendarApp.getCalendarById()は特定のカレンダーを取得するのに用いられる。getEvents()は指定された日付範囲内のイベントをリストして、第一のイベントにゲストを追加する。
受賞作はもう書けない