【问题标题】:How to read unread emails with the Gmail API (node) [closed]如何使用 Gmail API(节点)阅读未读电子邮件 [关闭]
【发布时间】:2020-02-20 04:45:56
【问题描述】:

我正在创建一个机器人,它将接收发送到特定帐户的电子邮件并将它们推送到不和谐服务器。我找到了 Gmail API。我怎样才能找到未读的电子邮件,并在操作后将其标记为已读?

【问题讨论】:

  • 您是要发送电子邮件还是阅读电子邮件?
  • 目前,我要求的是阅读电子邮件。我需要立即接收电子邮件并将其添加到数组中。不过,将来有一个发送功能会很好。
  • 您应该查看 gmail API。
  • 谢谢!我相信这会满足我的需要。

标签: javascript node.js gmail discord gmail-api


【解决方案1】:

Gmail API 不会立即检测是否有新电子邮件到达。但是,您可以触发脚本来检查来自某个发件人的未读电子邮件。

例如:

var newEmails = Gmail.Users.Threads.list("me", {"q":"is:unread from:email"});
//do stuff with them

然后遍历线程并从中删除unread标签,以便在下一次搜索中不再重复:

for (var i = 0; i < newEmails.threads.length; i++){
      var threadId = newEmails.threads[i].id;
      Gmail.Users.Threads.modify({"removeLabelIds":["UNREAD"]}, "me", threadId);
    }

如果您使用的是 Apps 脚本,请在编辑 > 当前项目触发器中创建一个触发器以每隔 x 分钟或几小时运行一次函数。

参考资料:

【讨论】:

  • 你说来自某个发件人。这是否意味着它只能用于特定的电子邮件地址?
  • @ProgrammerPlays 不,实际上你可以做complex searches,就像你可以在Gmail界面搜索栏中做的那样。
猜你喜欢
  • 2018-05-11
  • 2019-06-02
  • 1970-01-01
  • 2015-06-04
  • 2016-03-03
  • 2020-12-19
  • 2023-02-04
  • 2019-04-24
  • 1970-01-01
相关资源
最近更新 更多