初心者でもわかるGoogle Apps Script活用のススメ

【コピペで使える】GASでカレンダーのゲスト一覧を取得してみる

Eメールアドレスを指定してゲストを取得— getGuestList()

今回のメソッドは、プログラムを使って予定のすべてのゲストを取得するメソッドを紹介します。

こちらのページでは、Eメールアドレスを指定してゲストを取得するメソッドを紹介しましたが、今回は予定のすべてのゲストを取得するgetGuestListメソッドの使い方をを紹介します。Guestオブジェクトで使用できるメソッドはこちらの一覧ページに記載されているものが利用可能です。

getGuestListは基本的にはオーナーを含まずにゲストのみを配列で取得しますが、真偽値でtrueを引数として指定した状態で実行するとオーナーを含むすべてのゲストを配列で取得することができます。引数に何も指定しない状態で実行すると真偽値でfalseを指定した状態で実行されます。

    1. getGuestList()
    2. getGuestList(includeOwner)

『 引数に入れる値 』

getGuestList()

サンプルコード1
//予定のゲストを取得するコード(オーナーを除く)
function sampleCode1() {
  var calendar = CalendarApp.getDefaultCalendar();
  var date = new Date(); 
  var events = calendar.getEventsForDay(date);
  for (var i in events) {
    var event = events[i];
    /*イベントIDで指定するときには下記のコード
      var eventId = events[i].getId();
      var event = calendar.getEventById(eventId);
    */
    var guests = event.getGuestList();
    for (var j in guests) {
      console.log(guests[j].getEmail());
    }
  }
}

『 変数の説明 』

calendar = デフォルトカレンダーを取得
date = プログラム実行日を代入
events = プログラム実行日に作成済みのイベントを取得
guests = オーナーを除くゲストを配列で取得

getGuestList(includeOwner)

サンプルコード2
//予定のゲストを取得するコード(オーナーを含む)
function sampleCode2() {
  var calendar = CalendarApp.getDefaultCalendar();
  var date = new Date(); 
  var events = calendar.getEventsForDay(date);
  var includeOwner = true;
  for (var i in events) {
    var event = events[i];
    /*イベントIDで指定するときには下記のコード
      var eventId = events[i].getId();
      var event = calendar.getEventById(eventId);
    */
    var guests = event.getGuestList(includeOwner);
    for (var j in guests) {
      console.log(guests[j].getEmail());
    }
  }
}

『 変数の説明 』

calendar = デフォルトカレンダーを取得
date = プログラム実行日を代入
events = プログラム実行日に作成済みのイベントを取
includeOwner = 真偽値のtrueを指定
guests = オーナーを除くゲストを配列で取得

スクリプトができたら▶ボタンでプログラムを実行してみましょう。今回は、プログラム実行日の予定それぞれに登録されているすべてのゲストを取得したあとにそれぞれのゲストのEメールアドレスをログに表示するコードを書いてみました。実行できたらログを確認してみましょう。ゲストが登録されていれば配列にGuestオブジェクトが取得されます。ゲストが登録されていなければ空っぽの配列が変数guestsに代入されます。

まとめ

今回は予定に登録されているすべてのゲストを取得するコードをご紹介しました。Guestオブジェクトからはアドレスやゲストの名前、ゲストのステータス(出席、欠席など)を取得できますので、組み合わせることでより複雑な処理を実行できるようになります。いろいろ組み合わせて素晴らしいアプリを作ってみましょう。

Exit mobile version