2017-07-29 14 views
0

私はいくつかの条件に基づいて電子メールとSMSをユーザーに送信する必要があります。ユーザー作成時に時間とメッセージを使ってAWS(任意のサービス)にメッセージを公開したい場合は、私の予定された時間に基づいてメッセージと一緒にラムダ関数を呼び出す方法?AWSラムダ機能将来のスケジュール

+0

あなたの説明は混乱しています。アプリケーション内でユーザーが作成されたときに、ラムダ関数が実行されるべき将来の時間を定義し、そのユーザーに関する情報がラムダ関数に渡されると言っていますか?これが正確でない場合は、質問を編集して要件を明確にしてください。 –

+0

どのサービスにメッセージを送信したらどういう意味でしょうか?また、ユーザーを作成する場所は? – Ashan

答えて

1

メッセージを保存してどこかに送信する時間があり、その時にSMSやSES経由でそのメッセージを送信することが正しいと思いますか?

これを達成するには多くの方法がありますが、選択したデータベース(おそらくdynamodb)にメッセージを格納し、周期的に呼び出されるラムダ関数を使用します送信準備の整ったメッセージを探します。

このシナリオでは、クラウドウォッチイベントを使用して、決定した間隔でラムダ関数を呼び出すことができます(ただし、1分に1回以上は発生しません)。

lambda関数が実際にsms/sesの送信を処理せず、送信準備が整っているメッセージを見つけてSNSに投稿することができます(特に大きなイベントがある場合)それらのメッセージの実際の処理(送信)を担当する異なるラムダ関数を持っています。

+0

E.J. Brennan、あなたのリプレイをありがとう、現在私はこれのためにダイナモのDBを使用して私の仕事を続けていますが、私の究極の目的はDBを避けることですので、私は時間が来るまで私のメッセージを保持するためにキューを探しています。 –

0

これにCloudWatchのスケジュールされたイベントを使用できます。 cronの式を指定することができます。イベントそのものがあなたのラムダを誘発し、あなたが持っている可能性のある前提条件をチェックして、SNSなどの方法で通知を送信することができます。

関連する問題