【问题标题】:Create a new filter in Gmail using Google Apps Script使用 Google Apps 脚本在 Gmail 中创建新过滤器
【发布时间】:2014-06-01 04:46:51
【问题描述】:

我想使用 Google Apps 脚本在 Gmail 中创建一个新标签和一个新过滤器,它将所有新电子邮件推送到特定标签中。我已经创建了一个工作正常的标签,但我无法创建过滤器。

我知道在 GMail 的搜索条件中创建新过滤器很容易。但我想自动化完全相同的功能,然后将其发布给我的 100 人团队,这样他们就不必手动完成。

非常感谢您对此的任何帮助。

非常感谢, 普拉奇

【问题讨论】:

  • 有官方样品可以入手。请参阅官方文档并发布您到目前为止所尝试的内容。
  • @Zig Mandel - 感谢您的回复。我编写了以下代码,如果它不存在,它会创建一个新标签 Public。现在我想创建一个过滤器,如果它们来自 abc@xyz.com,它会将所有电子邮件移动到此标签,并且在收到新电子邮件时也会这样做。函数 doGet(e) { var label_text = "公共"; var label = GmailApp.getUserLabelByName(label_text); if (label == null) { var label = GmailApp.createLabel(label_text); } }
  • 抱歉格式化。我做错了。
  • 该代码只创建一个标签
  • @Zig Mandel 在此之后我编写了以下代码。此代码将标签放在邮件前面,但不将邮件移动到标签文件夹。而且我找不到如何创建过滤器,以便当新邮件到达时,如果满足条件,它会转到标签文件夹。似乎我没有仔细阅读文档,但在在这里发布问题之前我做了很多研究。如果在某个地方回答了这个问题,我深表歉意 - 我只是找不到。

标签: google-apps-script gmail


【解决方案1】:

2016 年更新:新的 gmail api 可以创建过滤器。 目前,您无法使用应用程序脚本创建 gmail 过滤器,但可以在没有过滤器的情况下完成。
使用应用程序脚本,添加标签然后存档 (moveToArchive)。这是从收件箱到标签的“移动”。

gmail 过滤器更好,因为它实时执行“应用标签和存档”,而应用程序脚本可以使用时间触发器每分钟最多运行一次。

【讨论】:

  • 谢谢齐格。对此进行一个小的跟进 - 当我每分钟触发一次脚本时,我都会收到服务在一天内调用太多次的失败消息。你能告诉我如何避免这种情况,因为我需要每分钟运行一次这个脚本,并且脚本会检查邮件的条件,如果满足条件,它会使用 moveToArchive 将其移动到标签文件夹。非常感谢。
  • 您需要优化脚本,但这超出了这个问题的范围。
  • 非常感谢。我将研究脚本的优化。你能给我一个很好的链接,我可以从那里开始阅读吗?再次非常感谢您的帮助。
  • apps 脚本文档有一个关于良好实践的部分。看那边。并非一切都可以优化。
  • 如果您遇到困难,请发布一个新问题,其中包含代码和您尝试过的内容
猜你喜欢
  • 2017-04-07
  • 1970-01-01
  • 1970-01-01
  • 2022-12-02
  • 1970-01-01
  • 2014-05-18
  • 1970-01-01
  • 2021-06-20
  • 1970-01-01
相关资源
最近更新 更多