发件人和收件人之间的电子邮件中介

Email Intermediary Between Sender and Receiver

我正在使用 SES 发送电子邮件(目前仅发送,但我也愿意使用它进行接收)、用于 Web 应用程序和 RDS 的 EC2 服务器。 用 Java.

编写的 Web 应用程序

我想充当通过我的网站互相发送电子邮件的用户的中介,让用户之间发送的所有电子邮件都经过我。

目的是为了隐藏互相发送电子邮件的两个用户的电子邮件。

我想过这样做: 1) 最初的电子邮件是在网站上发送的,它会收到一个存储在数据库中的唯一 ID(包含发件人和收件人的电子邮件地址)。

2) 两个用户之间的所有后续电子邮件都发送到网站的电子邮件地址,并附加唯一 ID 作为标签(例如:bob+[uniqueId]@domain.com)。

3) 邮件相应地在收件人和发件人之间来回路由(我对邮件进行了微小的修改)。

(Airbnb 在其网站的用户互相发送消息时会做类似的事情)。

一个额外的警告是,我希望附件也能够包含在电子邮件中(因此,它们需要被转发)。

这是实现此功能的正确方法吗? 我应该做不同的事吗? 如果这是正确的方法,是否有关于如何开始的参考资料?具体来说,我不确定如何使用 lambda 函数(如果我会使用它)发送电子邮件或查询我的 RDS。

谢谢

这听起来与我在其他网站上看到的私人电子邮件系统相似。我认为你的想法是正确的。我建议使用 SES 发送和接收,并使用 Lambda 函数处理传入的电子邮件。

您可以让 SES 在收到电子邮件时触发 Lambda 函数:http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda-example-functions.html

触发传入电子邮件处理的另一个选项是 SES->SNS->Java 应用程序 webhook。或者您可以通过 SES->SNS->SQS 将它们排队,并让您的 Java 应用程序订阅 SQS 队列。