小编KRR*_*KRR的帖子

如何使用 Gmail 中的标签来识别单个邮件而不是已由脚本处理的线程

使用 google 邮件脚本,我尝试使用 API 将带有某些标签的新电子邮件上传到我们的 CRM。我无法检查邮件是否已上传,因此我必须在邮箱中为之前已处理过的邮件应用标签。

不幸的是,谷歌脚本只允许您在线程级别添加或检查标签。由于新消息可以在最后一次上传到 CRM 后进入线程,因此我不知道线程的哪些消息实际上已经被处理。

下面的代码包含了我的想法,函数 getLabels 不适用于 Message,但是它不起作用。

希望有人有一个聪明的解决方案!

谢谢

//execute main sequence
function collecttobesend() {
    var labeladd = GmailApp.getUserLabelByName("add to CRM");
    var labeladded = GmailApp.getUserLabelByName("added to CRM");
    //var threads = label.getThreads();
    var threads = GmailApp.search('label:added-to-crm -label:add-to-crm')

    for (var i = 0; i < threads.length; i++) {
        thread = threads[i];

        // get all messages in a given thread
        var messages = thread.getMessages();

        // iterate over each message
        for (var j = 0; j < messages.length; …
Run Code Online (Sandbox Code Playgroud)

gmail google-apps-script gmail-api

8
推荐指数
1
解决办法
3110
查看次数

Google驱动器重复文件

我有这个代码删除重复的文件,但它没有按照需要工作,它是在电子表格上,你去工具,然后点击脚本管理器,给你三个按钮

StartProcess

标记重复

deleteDuplicates

第一个检索文件,第二个检索重复的文件为浅红色,第三个将删除它们并将它们变为红色,但它正在做的是将它们变成黄色而我无法在哪里找到错误请有人帮助我

function startProcess(){
  PropertiesService.getScriptProperties().deleteAllProperties();
  try{
    ScriptApp.deleteTrigger(ScriptApp.getProjectTriggers()[0]);
  }catch(e){}
  var sh = SpreadsheetApp.getActiveSheet();
  sh.getDataRange().clear();
  sh.getRange(1,1,1,4).setValues([['fileName (logged @'+Utilities.formatDate(new Date(),Session.getScriptTimeZone(),'MMM-dd-yyyy HH:mm')+')','fileSize','parent folders tree','fileID']]);
  var trig = ScriptApp.newTrigger('getDriveFilesList_').timeBased().everyMinutes(5).create();
  Logger.log(trig.getUniqueId()+'  '+trig.getHandlerFunction());
  getDriveFilesList_();
}

function getDriveFilesList_(){
  var content = [];
  var startTime = new Date().getTime();
  var sh = SpreadsheetApp.getActiveSheet();
  if( ! PropertiesService.getScriptProperties().getProperty('numberOfFiles')){
    PropertiesService.getScriptProperties().setProperty('numberOfFiles',0);
  }

  var numberOfFiles = Number(PropertiesService.getScriptProperties().getProperty('numberOfFiles'));
  Logger.log(numberOfFiles);
  var max = numberOfFiles+10000;
  if( ! PropertiesService.getScriptProperties().getProperty('continuationToken')){
    var files = DriveApp.getFiles();
   // var files = DriveApp.getFolderById('0B3qSFd_____MTFZMDQ').getFiles();// use this line and comment the above if …
Run Code Online (Sandbox Code Playgroud)

google-sheets google-apps-script google-drive-api

6
推荐指数
1
解决办法
3880
查看次数

Google Apps脚本 - 迭代段落中的字词

所以基本上我有一个带有下划线文字的段落,但并非所有文字都加下划线.我希望能够遍历所选文本并更改UN加下划线文本的文本大小.

基本上我希望带下划线的文本更加突出.有没有办法迭代段落并检查每个单词是否加下划线?GAS中的文本元素有一个isUnderlined()函数,但这对我没有好处,因为我只知道如何抓取整个元素.

感谢您的帮助!对不起,如果这令人困惑.如果需要,我可以解释更多.

javascript google-docs google-apps-script

5
推荐指数
1
解决办法
2277
查看次数

如何从Drive中的jpeg文件中提取EXIF数据

我正在尝试使用Google脚本从位于我的某个Google云端硬盘文件夹中的几个jpeg文件中提取EXIF数据.

更准确地说,我想提取拍摄照片的日期,以及先前使用Adobe Lightroom创建的相关关键字/图像描述.

我知道有几个允许从文件中提取EXIF数据的脚本存在于互联网上,但我没有设法链接它们,或者将它们与我自己的Google脚本一起使用.

我怎么能这么容易呢?(我是Google Script的初学者,请尽可能准确)

先感谢您

google-apps-script google-drive-api

2
推荐指数
1
解决办法
2512
查看次数

使用 cPanel 将 IP 地址范围列入白名单

我正在尝试通过 JDBC 服务将 Google Docs 扩展连接到 MySQL 数据库。为此,我必须按照https://developers.google.com/apps-script/guides/jdbc#setup_for_other_databases将 IP 地址列入白名单

由于 CPanel 有数百个,我如何才能快速完成此操作?

一件一件地做起来似乎是一件很糟糕的工作......

mysql cpanel google-apps-script

1
推荐指数
1
解决办法
3447
查看次数