javascript - 如何从 Google 日历获取资源的日程安排?

标签 javascript google-api google-calendar-api

我们使用 Google 日历来安排 session 。我们已将每个 session 室设置为“资源”,以便您可以通过将资源添加到您的 session 来查看可用性并预订房间。

我想做的是在每个房间的每个房间中显示今天的日程安排。

我没有找到简单地使用谷歌日历来做到这一点的方法,所以我尝试通过谷歌的 API 使用 javascript 以编程方式做到这一点。我可以获取当前用户的日程安排(请参阅下面的代码),但是不能获取资源的日程安排。

有谁知道是否有办法以可视方式或以编程方式获取单个资源的日程安排,以便我可以创建一天的日程安排?

  function listUpcomingEvents() {
    var request = gapi.client.calendar.events.list({
      'calendarId': 'primary',
      'timeMin': (new Date()).toISOString(),
      'showDeleted': false,
      'singleEvents': true,
      'maxResults': 10,
      'orderBy': 'startTime'
    });

    request.execute(function(resp) {
      var events = resp.items;
      appendPre('Upcoming events:');

      if (events.length > 0) {
        for (i = 0; i < events.length; i++) {
          var event = events[i];
          var when = event.start.dateTime;
          if (!when) {
            when = event.start.date;
          }
          appendPre(event.summary + ' (' + when + ')');
          var attendees = event.attendees;
          if (attendees.length > 0) {
            for (i=0; i<attendees.length; i++) {
              var attendee = attendees[i];
              if (attendee.resource) {
                appendPre('   RESOURCE: ' + attendee.displayName + ' (' + attendee.json + ')');
              } else {
                appendPre('   ' + attendee.displayName);
              }
            }
          }
        }
      } else {
        appendPre('No upcoming events found.');
      }

    });
  }

最佳答案

您需要找出您的资源的 ID(它是一个电子邮件地址 - resourcesEmail - 例如您可以通过资源 API https://developers.google.com/admin-sdk/calendar-resource/ 查看)。完成此操作后,如果登录帐户具有对该资源日历的读取权限,您只需将查询中的 calendarId 替换为资源电子邮件即可。

关于javascript - 如何从 Google 日历获取资源的日程安排?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30923202/

相关文章:

javascript - 谷歌日历API观看JavaScript

javascript - 日历 iframe 不显示所有最新创建的事件(尤其是共享日历事件)

javascript - 如何使用javascript按属性获取表格单元格值

javascript - 有没有办法改变整个网页客户端的色调?

javascript - 回调函数要求和资源

oauth - 使用 OAuth 2.0 客户端 ID 为不同的项目创建一个或多个凭据?

android - GCM 服务器端 PHP - 未经授权的 401 错误

oauth - 有没有办法从外部应用程序修改在 Google 日历中创建的事件?

google-calendar-api - 服务帐号认证

javascript - 如何访问 JSON 同级 "keys"?