javascript – 如何使用Apps脚本获取Google日历事件附件
作者:互联网
我编写了一个Google Apps脚本,可以成功将Google表格文档附加到新创建的日历活动中.以下代码显示了如何实现:
var eventObj = {
summary: eventName,
start: {dateTime: startDate.toISOString()},
end: {dateTime: endDate.toISOString()},
attachments: [{
'fileUrl': 'https://drive.google.com/open?id=' + fileID,
'title' : 'Booking Sheet'
}]
};
Calendar.Events.insert(eventObj, inStorePartiesCalendarID, {'supportsAttachments': true});
一切都很完美.我现在正在编写一个脚本来迭代特定时间段内的所有事件,并获取那些附加的文件ID.
我能够成功获取我之后发生的事件,但无法访问所附Google表格的ID.
Calendar API Documentation似乎告诉我这是可能的.这取自文档:
[attachments[ ].fileId, string] : ID of the attached file. Read-only.
For Google Drive files, this is the ID of the corresponding Files resource entry in the Drive API.
如果有人可以帮我把所有这些放在一起,并告诉我一个方法来获取附加的Google表格的ID,我将不胜感激!
谢谢 :)
瑞安
解决方法:
您想要从事件中检索文件ID.如果我的理解是正确的,那么这个示例脚本怎么样?
示例脚本:
var inStorePartiesCalendarID = "### calendar ID ###";
var eventId = "### Event ID ###";
var res = Calendar.Events.get(inStorePartiesCalendarID, eventId, {fields: "attachments/fileId"});
var fileIds = res.attachments.map(function(e){return e.fileId});
Logger.log(fileIds)
注意 :
>此示例脚本假设您已经知道事件ID.如果需要检索事件ID的方法.请告诉我.
>如果要检索附件文件的文件ID和文件名,请使用附件(fileId,title)作为字段.
参考文献:
如果我误解你的问题,我很抱歉.
标签:javascript,google-apps-script,google-calendar-api 来源: https://codeday.me/bug/20191002/1842455.html