メニュー
Amazon Simple Notification Service
開発者ガイド (API Version 2010-03-31)

Amazon SNS 通知を使用した Lambda 関数の呼び出し

Amazon SNS と AWS Lambda は統合されているため、Amazon SNS 通知を使用して Lambda 関数を呼び出すことができます。Lambda 関数がサブスクライブしている SNS トピックにメッセージが発行されると、発行されたメッセージのペイロードで Lambda 関数が呼び出されます。Lambda 関数は、メッセージペイロードを入力パラメータとして受け取り、メッセージの情報の操作、他の SNS トピックへのメッセージの発行、または他の AWS サービスへのメッセージの送信を行うことができます。

さらに、Amazon SNS は、Lambda エンドポイントに送信されたメッセージ通知のメッセージ配信ステータス属性もサポートします。詳細については、「メッセージの配信ステータスの Amazon SNS トピック属性を使用する」を参照してください。

前提条件

Amazon SNS 通知を使用して Lambda 関数を呼び出すには、以下が必要になります。

  • Lambda 関数

  • Amazon SNS トピック

Lambda 関数の作成の詳細については、「AWS Lambda の使用開始」を参照してください。Amazon SNS トピックの作成については、「トピックの作成」を参照してください。

AWS マネジメントコンソール を使用した Amazon SNS と Lambda エンドポイントの設定

  1. AWS マネジメントコンソールにサインインした後、Amazon SNS コンソール (https://console.aws.amazon.com/sns/v2/home) を開きます。

  2. 左の [Navigation] ペインで、[Topics] をクリックし、Lambda エンドポイントがサブスクライブするトピックをクリックします。

  3. [Actions] をクリックし、[Subscribe to topic] をクリックします。

  4. [Protocol] ドロップダウンボックスで [AWS Lambda] を選択します。

  5. [Endpoint] ドロップダウンボックスで、Lambda 関数の ARN を選択します。

  6. [Version or Alias] ドロップダウンボックスで、使用可能なバージョンまたはエイリアスの中から使用するものを選択します。[$LATEST] を選択すると、最新バージョンの Lambda 関数を指定できます。 バージョンまたはエイリアスを指定しない場合、[default] を選択することもできます。これは、機能的には [$LATEST] と同じです。詳細については、「AWS Lambda 関数のバージョニングとエイリアス」を参照してください。

  7. [Create subscription] をクリックします。

Lambda 関数がサブスクライブしている SNS トピックにメッセージが発行されると、発行されたメッセージのペイロードで Lambda 関数が呼び出されます。SNS、Lambda、および Amazon DynamoDB を使用してサンプルメッセージ履歴ストアを作成する方法については、AWS モバイル開発ブログ「Amazon SNS 経由で AWS Lambda 関数を呼び出す」を参照してください。