0

这是关于访问日历事件信息的谷歌脚本

我正在寻找一种获取日历事件全局状态的方法?喜欢参加状态为的日历活动:10 位客人 ==> 4 位是,3 位可能,1 位否,2 位正在等待

我已经搜索过,但我只找到了按客人获取状态的方法,然后实现一个代码来单独计算全局状态。

有没有办法直接获取全局状态?

提前致谢。

4

1 回答 1

1

我碰巧写了一个函数来做到这一点。这是一个使用示例:

var summary = guestSummary(event.getGuestList());
Logger.log(summary);
...

[13-06-26 22:39:58:253 EDT] {respondedMaybe=0.0, awaiting=0.0, additional=0.0, respondedNo=0.0, respondedYes=1.0, invited=1.0}

我选择使用来宾列表作为参数,以便同时支持 CalendarEvent 和 CalendarEventSeries。

/**
 * Return an object enumerating guest list summary information.
 *
 * @param {EventGuest[]} guestlist Array of EventGuests.
 *
 * @returns {object} guest list summary
 */
function guestSummary( guestlist ) {
  var invited = guestlist.length;
  var respondedYes = 0;
  var respondedMaybe = 0;
  var respondedNo = 0;
  var awaiting = 0;
  var additional = 0;
  guestlist.forEach( function (guest) {
    switch (guest.getGuestStatus()) {
      case CalendarApp.GuestStatus.INVITED:
        awaiting++;
        break;
      case CalendarApp.GuestStatus.YES:
        respondedYes++;
        break;
      case CalendarApp.GuestStatus.NO:
        respondedNo++;
        break;
      case CalendarApp.GuestStatus.MAYBE:
        respondedMaybe++;
        break;
      default:
        break;
    }
    additional += guest.getAdditionalGuests();
  });
  return {
    invited : invited,
    respondedYes : respondedYes,
    respondedMaybe : respondedMaybe,
    respondedNo : respondedNo,
    awaiting : awaiting,
    additional : additional
  };
}
于 2013-06-27T02:41:05.080 回答