はじめに
本記事では、ASTERIA WarpのSNSPublishコンポーネントを用いて、Simple Notification Service(SNS)の指定したエンドポイントにメッセージを送信する手順を解説します。
※今回はAWSコネクションを使用しますが、DynamoDBと連携する回で以前作成したAWSコネクションを使用してメッセージを送る方法を解説します。
メッセージを送るAWSのエンドポイントを事前に1件以上用意しておいてください。
AWS SNSPublishコンポーネントと今回の確認に使用するフローについて
AWSSNSPublishのプロパティ設定
このコンポーネントのプロパティとして設定した項目は以下の通りです。これらを設定することで、メッセージを発行できます。ここで設定していない項目はデフォルトの値を使用します。
- コネクションを使用:はい
- コネクション名:使用するAWSコネクションを入力します。(下図ではDynamoDBと連携する回で作成したものを使用しています。)
- 件名:発信されるメッセージの件名を入力します。(メールの場合は件名になります。)
- トピック ARN:メッセージを発信するトピックをトピックARNで指定します。
※アクセスキー・シークレットーキー・リージョンは使用するコネクションにて事前に設定されています。
今回の確認に使用するフローについて
AWSのSNSでメッセージを発行するために、AWS SNSPublishコンポーネントを使用した下図のフローを作成しました。フローの実行後、エンドポイントを確認するとメッセージが送信されています。

フローの解説
上記のフローでは、マッパーでメッセージ本文を定義し、SNSPublishコンポーネントで指定したトピックにメッセージを送信します。
マッパー
次のAWS SNSPublishコンポーネントで送信されるメッセージの本文となる文章を、constでストリームに渡しています。
AWS SNSPublish
AWS SNSPublishコンポーネントは、プロパティのトピックARNで指定したトピックのエンドポイントにメッセージを送信します。
今回のフローではストリームから本文を受け取って、 AWS SNSPublishコンポーネントのプロパティから件名を設定します。
コネクションを使用することで、接続先AWSリージョンなどの設定が自動的に行われるため、手動での設定は不要です。
実行結果
フロー実行時の表示は下図のようになります。

フローの実行後、プロパティのトピックARNで指定したトピックのエンドポイントにメッセージが送信されていることが確認できます。
件名はAWS SNSPublishのプロパティの件名欄に入力した「AWS_SNSPublishテストメッセージ」、本文はストリームから取得した「AWS_SNSPublishコンポーネントで送信したメッセージ本文。」が設定されています。