我写了一个脚本,当作为一个web应用程序发布,将计算邮件的数量在我的收件箱,最早的已发送消息的日期一起,并输出为.csv:Google脚本如何从共享邮箱收集信息?
function doGet() {
// get all threads in inbox
var threads = GmailApp.getInboxThreads();
var dataLength = threads.length
var earliestMessage = new Date();
for (var y = 0; y < dataLength; y++) {
var message = threads[y]
//sets last message date in thread y
var msgDate = message.getLastMessageDate();
//checks last message date to current value of earliestMessage, updates if necessary
if(msgDate.valueOf() < earliestMessage.valueOf()) {
earliestMessage = msgDate
}
}
//save to external files
return ContentService.createTextOutput(dataLength + '\n' + Utilities.formatDate(earliestMessage, 'GMT', 'dd/MM/yyyy')).downloadAsFile('emailData.csv');
}
这工作正常,但我现在希望此脚本从我有权访问的共享邮箱中返回相同的信息。由于这是共享邮箱,因此我无法选择只访问其Google云端硬盘并在其中保存脚本(请让我知道是否我错了!),因此脚本只会返回有关我自己的帐户的信息。
我试图寻找类似的问题,但我已经找到了最接近的有以下几种,既不其中似乎有明确的解决方案:
- How do I process emails in a shared mailbox using Google Scripts
- 谷歌帮助论坛 - How do I run a Google Script in a shared mailbox
脚本是否需要重写(如果有,如何?),还是有办法将GmailApp类指向共享邮箱而不是我自己的?