Asteria WarpフローデザイナーとAWSのSimple Notification Service(SNS)の連携:AWS SNSPublishコンポーネントを使用してSNSのメッセージを送る

はじめに

本記事では、ASTERIA WarpのSNSPublishコンポーネントを用いて、Simple Notification Service(SNS)の指定したエンドポイントにメッセージを送信する手順を解説します。
※今回はAWSコネクションを使用しますが、DynamoDBと連携する回で以前作成したAWSコネクションを使用してメッセージを送る方法を解説します。

メッセージを送るAWSのエンドポイントを事前に1件以上用意しておいてください。

AWS SNSPublishコンポーネントと今回の確認に使用するフローについて

AWSSNSPublishのプロパティ設定

このコンポーネントのプロパティとして設定した項目は以下の通りです。これらを設定することで、メッセージを発行できます。ここで設定していない項目はデフォルトの値を使用します。

  • コネクションを使用:はい
  • コネクション名:使用するAWSコネクションを入力します。(下図ではDynamoDBと連携する回で作成したものを使用しています。)
  • 件名:発信されるメッセージの件名を入力します。(メールの場合は件名になります。)
  • トピック ARN:メッセージを発信するトピックをトピックARNで指定します。

※アクセスキー・シークレットーキー・リージョンは使用するコネクションにて事前に設定されています。

今回の確認に使用するフローについて

AWSのSNSでメッセージを発行するために、AWS SNSPublishコンポーネントを使用した下図のフローを作成しました。フローの実行後、エンドポイントを確認するとメッセージが送信されています。

AWS SNSPublishコンポーネントの動作確認フロー

フローの解説

上記のフローでは、マッパーでメッセージ本文を定義し、SNSPublishコンポーネントで指定したトピックにメッセージを送信します。

マッパー

次のAWS SNSPublishコンポーネントで送信されるメッセージの本文となる文章を、constでストリームに渡しています。

 AWS SNSPublish

 AWS SNSPublishコンポーネントは、プロパティのトピックARNで指定したトピックのエンドポイントにメッセージを送信します。
今回のフローではストリームから本文を受け取って、 AWS SNSPublishコンポーネントのプロパティから件名を設定します。
コネクションを使用することで、接続先AWSリージョンなどの設定が自動的に行われるため、手動での設定は不要です。

実行結果

フロー実行時の表示は下図のようになります。

実行時の画面

フローの実行後、プロパティのトピックARNで指定したトピックのエンドポイントにメッセージが送信されていることが確認できます。

件名はAWS SNSPublishのプロパティの件名欄に入力した「AWS_SNSPublishテストメッセージ」、本文はストリームから取得した「AWS_SNSPublishコンポーネントで送信したメッセージ本文。」が設定されています。