Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用Google Apps脚本创建/更改具有给定会议URL的Google日历事件?_Javascript_Url_Events_Google Calendar Api - Fatal编程技术网

Javascript 如何使用Google Apps脚本创建/更改具有给定会议URL的Google日历事件?

Javascript 如何使用Google Apps脚本创建/更改具有给定会议URL的Google日历事件?,javascript,url,events,google-calendar-api,Javascript,Url,Events,Google Calendar Api,我正在尝试使用以前生成的Meet URL创建或更新Google日历事件。 我试过这样的方法: var event = eventCal.createEvent(summary, startTime, endTime, options); var eventId = event.getId().split("@")[0]; var event1 = Calendar.Events.get(calendarId, eventId); event1.s

我正在尝试使用以前生成的Meet URL创建或更新Google日历事件。 我试过这样的方法:

  var event = eventCal.createEvent(summary, startTime, endTime, options);      
  var eventId = event.getId().split("@")[0];

  var event1 = Calendar.Events.get(calendarId, eventId);
  event1.setHangoutLink(room); //OLD Meet URL
  Calendar.Events.update(event1, calendarId, event1.id);
  var room1 = event1.hangoutLink;
一切似乎都很好,从最后一行开始,我获得了room1==room,但事件是用一个新的Meet URL创建的!我得到的补充是:

  var newRoom = Calendar.Events.get(calendarId, eventId).hangoutLink;
在前面的代码之后。 我还尝试了.patch(),得到了相同的结果。有什么提示吗?

不幸的是,这目前是不可能的 事实上,《公约》规定:

hangoutLink
与此事件相关的Google+hangout的绝对链接只读


在谷歌的问题追踪器上,已经有一个用于实现手动设置链接的工具。我建议您“启动”该问题,以提高可见性并接收有关该功能实施的通知。

我明白了,但由于可以使用Google Calendar更改/强制Meet链接,同样的功能不能通过Google日历API访问,这不是有点奇怪吗?到目前为止,并不是所有的UI功能都集成到API中。这就是为什么谷歌提供了提交功能请求的可能性——如果许多用户对某个功能感兴趣,那么它很可能最终会被合并。我理解,但仍有一些不清楚的地方。在这个序列中:
var event=eventCal.createEvent(summary、startTime、endTime、options);var event1=Calendar.Events.get(calendarId,eventId);var room1=event1.hangoutLink;事件1.设置链接(房间);var room2=event1.hangoutLink;Calendar.Events.update(event1,calendarId,event1.id);var newRoom=Calendar.Events.get(calendarId,eventId).hangoutLink我得到了room2==room(event1似乎发生了变化),但最后,newRoom==room1!因此,日历上的事件发生了变化,但不是原来的事件…我不确定我是否了解你。您能否提供有关Javascript方法
setHangoutLink
的文档参考<代码>从日历更改中获取的事件,但不是原始事件
-只有使用
Calendar.Events.update推动更改,原始日历事件才会更改。如果将新的
hangoutLink
分配给变量
event1
,则实际上不是在更新实际的事件资源,而是在本地为对象分配一个值。非常感谢您的评论。在API更新最终启用链接之前,我将停止尝试设置链接。:)