AWS IoTを使った環境構築(2)
[3]Ruleの作成
次にRuleを作成します。Ruleとは、どのデータに対してどういう条件のときにアクションを実行するかを決める情報です。
(1)[Create a rule]ボタンをクリックします。ルールの(2)名前と説明を入力します。ここでは、どちらも「raspiRule」と入力します。
続いて、Ruleの条件を設定します。ここでは、(2)「topic/sns」というデータの(1)すべてのデータ「*」を受信したときにアクションを実行します。
次に、データを受け取った時のアクションを設定します。Raspberry Piからデータを受け取ったら、Eメールを送信するため[Choose an action]で、[Send message as a push notification (SNS)]を選びます。
送信したいEメールの送信先等を設定するため、[Create a new resource]をクリックします。
[4]SNSの設定
Raspberry Piからデータを受け付けたときに送信するメールを設定するため、AWS SNSを設定します。SNSの設定画面に遷移するので、[Create new topic]ボタンをクリックします。
Topicとは、メッセージを送信し、通知を受信する通信チャネルのことです。新しいTopicを作成するダイアログが表示されますので、(1)Topicの名前に「iot-sns」、(2)表示名に「RaspberryPi」を入力し、(3)[Create topic]ボタンをクリックします。
ここで、通知先であるEメールの送信先を指定するため、[Create Subscription]ボタンをクリックします。
ここで、(1)プロトコルを[Email]、(2)エンドポイントに任意のメールアドレスを設定し、(3)[Create Subsctiption]をクリックします。
ここで、指定したEメールアドレスにメールが届きますので、メール内の[Confirm Subsctiption]リンクをクリックし、メールを登録します。メールの確認が完了したら、次のようにサブスクリプションが登録されます。
ここで、AWS IoTの画面に戻り、(1)SNSターゲットに先ほど設定した「iot-sns」を選択します。そして、(2)[Create a new role]をクリックします。
[5]ロールの作成
ここで、権限を付与するためIAMロールを作成します。IAMロールとは、AWSのサービス使うためのアクセス権限を定義したものです。(1)IAMロールで「新しいIAMロールの作成」を選択し、(2)ロール名を「aws_iot_sns」とし、(3)[許可]ボタンをクリックします。
AWS IoTのコンソール画面に戻り、[Create]ボタンをクリックします。これにより、「Raspberry Piからtopic/snsデータが送信されたら、AWS SNSを起動し、指定したメールアドレスにメールを送信する」というルールが出来上がりました。
