如何以编程方式将访客与会者添加到保存时的 GSuite 日历事件

Posted

技术标签:

【中文标题】如何以编程方式将访客与会者添加到保存时的 GSuite 日历事件【英文标题】:How to programmatically add a guest attendee to GSuite calendar event on Save 【发布时间】:2019-06-15 21:00:23 【问题描述】:

我正在构建一个 GSuite 日历扩展。

我的扩展程序将自定义信息添加到新事件的描述中,并且需要系统地添加来宾电子邮件,例如test@mydomain.com。

该扩展程序具有内容脚本,可在 Google 日历添加事件页面中注入 htmljavascript。此 HTML 在添加事件页面上创建一个按钮,当用户单击此按钮时,javascript 会将自定义信息添加到描述中。

这是添加事件页面中添加按钮的 HTML。

html() 
  return `<div>
            <strong>
              <a href='#add-description' id="add-description-btn" data-toggle="modal" data-backdrop='static' data-keyboard='false'>Add Custom Details</a>
            </strong>
          </div>`;

这是在添加事件页面中注入 HTML 和 javascript 的函数。

inject(eventType) 
  const eventDetails = $('#tabEventDetails');
  eventDetails.find('div:first').after(html(eventType));
  // More javascript

这是在描述中添加自定义详细信息的功能。

addDescription(content) 
  $('[aria-label="Description"]').html(content);

我可以添加到描述中,但是如何在没有任何用户干预的情况下以编程方式添加来宾?

有什么方法可以使用 javascript 添加来宾电子邮件吗?或使用后保存跳跳虎(如果有)?

任何指针?

【问题讨论】:

下面的答案有什么问题? @IslamElshobokshy 不幸的是,下面的答案并没有解决这个问题。它以编程方式创建会议。这就是我想要做的。我想在用户向其日历添加新会议时自动添加该与会者。 尝试在您的问题中添加更多信息,例如代码/示例/链接,以了解如何使用简单的扩展格式,以便我们尝试使用它......等等,如果它是值得打扰 查看更新的问题 @IslamElshobokshy 所以没有想法吧? 【参考方案1】:

添加到数组“参加者”对象,例如 'email': 'lpage@example.com':

var event = 
  'summary': 'Google I/O 2015',
  'location': '800 Howard St., San Francisco, CA 94103',
  'description': 'A chance to hear more about Google\'s developer products.',
  'start': 
    'dateTime': '2015-05-28T09:00:00-07:00',
    'timeZone': 'America/Los_Angeles'
  ,
  'end': 
    'dateTime': '2015-05-28T17:00:00-07:00',
    'timeZone': 'America/Los_Angeles'
  ,
  'recurrence': [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  'attendees': [
    'email': 'lpage@example.com',
    'email': 'sbrin@example.com'
  ],
  'reminders': 
    'useDefault': false,
    'overrides': [
      'method': 'email', 'minutes': 24 * 60,
      'method': 'popup', 'minutes': 10
    ]
  
;

var request = gapi.client.calendar.events.insert(
  'calendarId': 'primary',
  'resource': event
);

request.execute(function(event) 
  appendPre('Event created: ' + event.htmlLink);
);

【讨论】:

以上是关于如何以编程方式将访客与会者添加到保存时的 GSuite 日历事件的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式将 UI 添加到基于 Qtvtkwidget 的小部件?

WPF:如何以编程方式从 TextBox 中移除焦点

如何以编程方式将值保存到 JIRA 中的自定义字段中?

以编程方式将图像添加到Word文档

以编程方式发现“仅限访客”共享/安全模型

如何以编程方式将空间添加到任务控制?