チュートリアル エンドポイントを Amazon SNS トピック - Amazon Simple Notification Service

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

チュートリアル エンドポイントを Amazon SNS トピック

トピックに対して発行されたメッセージを受信するには、エンドポイント (AWS Lambda、Amazon SQS、HTTP/S、E メールアドレスなど) をトピックにサブスクライブする必要があります。エンドポイントをトピックにサブスクライブしてサブスクリプションが確認されると、エンドポイントでは、関連付けられたトピックに発行されたメッセージの受信を開始できます。

次のチュートリアルでは、AWS マネジメントコンソール、AWS SDK for Java、および AWS SDK for .NET を使用してサブスクリプションを作成し、次にエンドポイントをトピックにサブスクライブする方法を示します。

AWS マネジメントコンソール を使用してエンドポイントを Amazon SNS トピックにサブスクライブするには

  1. Amazon SNS コンソールにサインインします。

  2. ナビゲーションパネルで、[サブスクリプション] を選択します。

  3. [サブスクリプション] ページで [サブスクリプションの作成] を選択します。

  4. [サブスクリプションの作成] ページで、次の操作を行います。

    1. 前に作成したトピックの [トピック ARN] を入力します。次に例を示します。

      arn:aws:sns:us-east-2:123456789012:MyTopic
      注記

      現在の AWS アカウントのトピックを一覧表示するには、[トピック ARN] フィールドを選択します。

    2. [プロトコル] で、エンドポイントタイプ ([E メール] など) を選択します。

    3. [エンドポイント] に、通知を受信できる E メールアドレスを入力します。次に例を示します。

      name@example.com
      注記

      サブスクリプションが作成されたら、これを確認する必要があります。HTTP/S エンドポイント、E メールアドレス、および他の AWS アカウントの AWS リソースの確認のみが必要です。同じ AWS アカウント (およびモバイルエンドポイント) の Amazon SQS キューや Lambda 関数の確認は不要です。

    4. [Create subscription (サブスクリプションの作成)] を選択します。

      サブスクリプションが作成され、[サブスクリプション: 1234a567-bc89-012d-3e45-6fg7h890123i] ページが表示されます。

      サブスクリプションの ARNエンドポイントトピックステータス (このステージでは [保留中の確認])、およびプロトコルが [詳細] セクションに表示されます。

  5. E メールクライアントで、指定した E メールアドレスを確認し、Amazon SNS からの E メールで [サブスクリプションを確認] を選択します。

  6. ウェブブラウザに、サブスクリプションの確認がサブスクリプション ID とともに表示されます。

AWS SDK for Java を使用してエンドポイントを Amazon SNS トピックにサブスクライブするには

  1. AWS 認証情報を指定します。詳細については、AWS SDK for Java 2.x 開発者ガイド の「開発用の AWS 認証情報とリージョンのセットアップ」を参照してください。

  2. コードを作成します。詳細については、「SDK for Java 2.x の使用」を参照してください。

    次のコードの抜粋では、E メールエンドポイントのサブスクリプションを作成して SubscribeRequest リクエスト ID を出力します。

    // Subscribe an email endpoint to an Amazon SNS topic. final SubscribeRequest subscribeRequest = new SubscribeRequest(topicArn, "email", "name@example.com"); snsClient.subscribe(subscribeRequest); // Print the request ID for the SubscribeRequest action. System.out.println("SubscribeRequest: " + snsClient.getCachedResponseMetadata(subscribeRequest)); System.out.println("To confirm the subscription, check your email.");
  3. コードをコンパイルして実行します。

    サブスクリプションが作成され、SubscribeRequest リクエスト ID が出力されます。次に例を示します。

    SubscribeRequest: {AWS_REQUEST_ID=1234a567-bc89-012d-3e45-6fg7h890123i} To confirm the subscription, check your email.

AWS SDK for .NET を使用してエンドポイントを Amazon SNS トピックにサブスクライブするには

  1. AWS 認証情報を指定します。詳細については、AWS SDK for .NET 開発者ガイド の「AWS 認証情報の設定」を参照してください。

  2. コードを作成します。詳細については、「AWS SDK for .NET によるプログラミング」を参照してください。

    次のコードの抜粋では、E メールエンドポイントのサブスクリプションを作成して SubscribeRequest リクエスト ID を出力します。

    // Subscribe an email endpoint to an Amazon SNS topic. SubscribeRequest subscribeRequest = new SubscribeRequest(topicArn, "email", "name@example.com"); SubscribeResponse subscribeResponse = snsClient.Subscribe(subscribeRequest); // Print the request ID for the SubscribeRequest action. Console.WriteLine("SubscribeRequest: " + subscribeResponse.ResponseMetadata.RequestId); Console.WriteLine("To confirm the subscription, check your email.");
  3. コードをコンパイルして実行します。

    サブスクリプションが作成され、SubscribeRequest リクエスト ID が出力されます。次に例を示します。

    SubscribeRequest: 1234a567-bc89-012d-3e45-6fg7h890123i To confirm the subscription, check your email.