SNS - AWS IoT Core

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

SNS

SNS (sns) 動作會將MQTT訊息中的資料作為 Amazon Simple Notification Service (Amazon SNS) 推送通知傳送。

您可以遵循教學課程,示範如何使用 SNS動作建立和測試規則。如需詳細資訊,請參閱教學課程:傳送 Amazon SNS通知

注意

此SNS動作不支援 Amazon SNSFIFO(先進先出) 主題 。由於規則引擎是全分散式服務,因此在叫用SNS動作時無法保證訊息順序。

要求

此規則動作具有下列需求:

  • AWS IoT 可以擔任執行sns:Publish操作IAM的角色。如需詳細資訊,請參閱授予 AWS IoT 規則所需的存取權

    在 AWS IoT 主控台中,您可以選擇或建立允許 AWS IoT 執行此規則動作的角色。

  • 如果您使用受管 AWS KMS 客戶 AWS KMS key 來加密 Amazon 中的靜態資料SNS,服務必須具有代表來電者使用 AWS KMS key 的許可。如需詳細資訊,請參閱《Amazon Simple Notification Service 開發人員指南》中的金鑰管理

參數

使用此動作建立 AWS IoT 規則時,您必須指定下列資訊:

targetArn

推送通知傳送至SNS的主題或個別裝置。

AWS CLI 僅支援替代範本: API和

messageFormat

(選用) 訊息格式。Amazon SNS使用此設定來判斷是否應剖析承載,以及是否應擷取承載的相關平台特定部分。有效值:JSONRAW。預設為 RAW

支援替代範本:否

roleArn

允許存取 IAM的角色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-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" } } ] } }

另請參閱