2016-03-31 25 views
1

私は電子メール(現在のみ送信していますが、受信にもこれを使用しています)、WebアプリケーションとRDS用のEC2サーバーにSESを使用しています。 Javaで書かれたWebアプリケーション。電子メール送信者と受信者間の仲介者

私は、ユーザー間で送信されたすべてのメールを私が通過させることによって、自分のウェブサイトを介してお互いに電子メールを送信するユーザーの仲介者として行動したいと考えています。

目的は、お互いに電子メールを送信している2人のユーザーの電子メールを隠すことです。

私はこのようなことを考えました: 1)最初の電子メールはウェブサイト上で送信され、データベースに保存された一意のID(送信者と受信者の電子メールアドレスを含む)を受け取ります。

2)2人のユーザー間のその後の電子メールはすべて、一意のIDをラベル(例:bob + [uniqueId] @ domain.com)に追加してWebサイトの電子メールアドレスに送信されます。

3)電子メールは、それに応じて受信者と送信者の間を行き来します(私は電子メールを少し変更します)。

(Airbnbは、サイトのユーザー同士でメッセージが似たようなことをします)。

添付ファイルを電子メールにも含めることができます(したがって、転送する必要があります)。

これはこの機能を実装する正しい方法ですか? 私は違うはずですか? これが正しい方法であれば、どのように始めるべきかについての参考資料はありますか?具体的には、電子メールを送信するために、または自分のRDSを照会するためにラムダ関数を使用する方法がわかりません。

ありがとう

答えて

1

これは私が他のサイトで見たプライベートメールシステムに似て聞こえる。あなたは正しいアイデアを持っていると思います。送信と受信の両方にSESを使用し、受信メールを処理するためにラムダ関数を使用することをお勧めします。

あなたがメールを受信するときには、SESの火災にラムダ関数を持つことができます。http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda-example-functions.html

受信メールの処理をトリガするための他のオプションは、SES> SNS-> Javaアプリケーションのウェブフックになります。または、SES-> SNS-> SQS経由でキューに入れ、JavaアプリケーションをSQSキューに登録させることもできます。

+0

Markありがとうございます。私は両方のオプションを読んでいます。あなたが提示した2つのオプションに関連する長所/短所を知っていますか? (私は両方に精通していないので、追加情報があれば、どのオプションを使用するのか、それ以上調べるべきかを選択するのに役立ちます)。 – theyuv

+0

私は2番目のオプションを使用しました:SES-> SNS(サーバー上のエンドポイントへ) - > Java処理と電子メールの転送 – theyuv

+0

私は自分のサーバー上で電子メールを処理するためにjavamailを使用する予定でした。別の/良い提案がありますか? http://www.oracle.com/technetwork/java/faq-135477.html#javamailserver – theyuv

関連する問題