翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
SNS
SNS (sns
) アクションは、Amazon Simple Notification Service (Amazon SNS) プッシュ通知として MQTT メッセージからデータを送信します。
SNS アクションを使用してルールを作成およびテストする方法を示すチュートリアルに従うことができます。詳細については、「チュートリアル: Amazon SNS 通知の送信」を参照してください。
注記
SNS アクションは、Amazon SNS FIFO (First-In-First-Out) トピックをサポートしていません。ルールエンジンは完全に分散されたサービスであるため、SNS アクションが呼び出されたときのメッセージ順序の保証はありません。
要件
このルールアクションには、以下の要件があります。
-
sns:Publish
オペレーションを実行するために が引き受け AWS IoT ることができる IAM ロール。詳細については、「必要なアクセスを AWS IoT ルールに付与する」を参照してください。AWS IoT コンソールでは、 がこのルールアクションを実行 AWS IoT することを許可するロールを選択または作成できます。
-
AWS KMS カスタマー管理の AWS KMS key を使用して Amazon SNS に保管中のデータを暗号化する場合、サービスには AWS KMS key 発信者に代わって を使用するアクセス許可が必要です。詳細については、[Amazon Simple Notification Service Developer Guide](Amazon 簡易通知サービスデベロッパーガイド)の[Key management](キー管理)を参照してください。
パラメータ
このアクションで AWS IoT ルールを作成するときは、次の情報を指定する必要があります。
targetArn
-
プッシュ通知の送信先として指定する SNS トピックまたは個々のデバイス。
代替テンプレートをサポート: API および AWS CLI のみ
messageFormat
-
(オプション) メッセージ形式。Amazon SNS ではこの設定を使用して、ペイロードを解析して関連するプラットフォーム固有の部分をペイロードから抽出するかどうかを判断します。有効な値:
JSON
、RAW
。デフォルトはRAW
です。置換テンプレートをサポート: いいえ
roleArn
-
SNS へのアクセスを許可する IAM ロール。詳細については、「要件」を参照してください。
置換テンプレートをサポート: いいえ
例
次の JSON 例では、 AWS IoT ルールで SNS アクションを定義します。
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "sns": { "targetArn": "arn:aws:sns:us-east-2:123456789012:my_sns_topic", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_sns" } } ] } }
次の JSON 例では、 AWS IoT ルールで置換テンプレートを使用して SNS アクションを定義します。
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "sns": { "targetArn": "arn:aws:sns:us-east-1:123456789012:${topic()}", "messageFormat": "JSON", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_sns" } } ] } }
以下も参照してください。
-
Amazon Simple Notification Service デベロッパーガイドの Amazon Simple Notification Service とは