本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS IoT Events 使用其他 AWS 服务
AWS IoT Events 支持以下允许您使用 AWS 服务的操作:
-
iotTopicPublish发布有关某个MQTT主题的消息。
-
iotEvents 将数据以输入值的形式发送至 AWS IoT Events 。
-
iotSiteWise 将数据发送至 AWS IoT SiteWise中的资产属性。
-
dynamoDB 向 Amazon DynamoDB 表发送数据。
-
dynamoDBv2 向 Amazon DynamoDB 表发送数据。
-
firehose将数据发送到 Amazon Data Firehose 流。
-
lambda 调用 AWS Lambda 函数。
-
sns 将数据作为推送通知发送。
-
sqs将数据发送到 Amazon SQS 队列。
重要
-
您必须为两者 AWS IoT Events 以及要使用的 AWS 服务选择相同的 AWS 区域。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 AWS IoT Events 端点和配额。
-
在为 AWS IoT Events 操作创建其他 AWS 资源时,必须使用相同的 AWS 区域。如果您切换 AWS 区域,则访问 AWS 资源可能会遇到问题。
默认情况下, AWS IoT Events 会JSON为任何操作生成标准有效负载。此操作有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。要配置操作负载,您可使用内容表达式。有关更多信息,请参阅用于筛选、转换和处理事件数据的表达式AWS IoT Events API参考资料中的 P ayload 数据类型。
AWS IoT Core
- IoT topic publish action
-
该 AWS IoT Core 操作允许您通过MQTT消息代理发布 AWS IoT 消息。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 AWS IoT Core 端点和配额。
AWS IoT 消息代理通过从发布 AWS IoT 客户端向订阅客户端发送消息来连接客户端。有关更多信息,请参阅《AWS IoT 开发人员指南》中的设备通信协议。
- More information (2)
-
发布MQTT消息时,必须指定以下参数。
mqttTopic
-
接收消息MQTT的主题。
您可以使用在检测器模型中创建的变量或输入值在运行时动态定义MQTT主题名称。
payload
-
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
iot:Publish
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” IotTopicPublishAction中的。
AWS IoT Events
- IoT Events action
-
该 AWS IoT Events 操作允许您将数据 AWS IoT Events 作为输入发送到。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 AWS IoT Events 端点和配额。
AWS IoT Events 允许您监控设备或设备群是否出现故障或运行变化,并在此类事件发生时触发操作。有关更多信息,请参阅什么是 AWS IoT Events? 在《AWS IoT Events 开发人员指南》中。
- More information (2)
-
向发送数据时 AWS IoT Events,必须指定以下参数。
inputName
-
接收数据的 AWS IoT Events 输入名称。
payload
-
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
iotevents:BatchPutMessage
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” IotEventsAction中的。
AWS IoT SiteWise
- IoT SiteWise action
-
该 AWS IoT SiteWise 操作允许您将数据发送到中的资产属性 AWS IoT SiteWise。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 AWS IoT SiteWise 端点和配额。
AWS IoT SiteWise 是一项托管服务,可让您大规模收集、组织和分析来自工业设备的数据。有关更多信息,请参阅AWS IoT SiteWise 《用户指南》中的什么是 AWS IoT SiteWise?。
- More information (11)
-
向中的资产属性发送数据时 AWS IoT SiteWise,必须指定以下参数。
重要
要接收数据,您必须使用 AWS IoT SiteWise中的现有资产属性。
-
如果您使用 AWS IoT Events 控制台,则必须指定
propertyAlias
以标识目标资产属性。 -
如果使用 AWS CLI,则必须指定其中一个
propertyAlias
或两个propertyId
,assetId
然后才能标识目标资产属性。
有关更多信息,请参阅AWS IoT SiteWise 《用户指南》中的将工业数据流映射到资产属性。
propertyAlias
-
(可选)资产属性的别名。您也可以指定表达式。
assetId
-
(可选)包含指定属性的资产的 ID。您也可以指定表达式。
propertyId
-
(可选)资产的属性 ID。您也可以指定表达式。
entryId
-
(可选)此条目的唯一标识符。您可以使用条目 ID,跟踪在出现故障时哪些数据条目导致了错误。默认值为新的唯一标识符。您也可以指定表达式。
propertyValue
-
包含有关属性值详细信息的结构。
quality
-
(可选)资产属性值的质量。值必须为
GOOD
、BAD
或UNCERTAIN
。您也可以指定表达式。 timestamp
-
(可选)包含时间戳信息的结构。如果您未指定此值 ,则默认为事件时间。
timeInSeconds
-
采用 Unix 纪元时间格式的时间戳(以秒为单位)。有效范围在 1-31556889864403199 之间。您也可以指定表达式。
offsetInNanos
-
(可选)从
timeInSeconds
转换的纳秒偏移量。有效范围在 0-999999999 之间。您也可以指定表达式。
value
-
一个包含资产属性值的结构。
重要
您必须指定以下值类型之一,具体取决于指定的资产属性的
dataType
。有关更多信息,请参阅 “AWS IoT SiteWise API参考” AssetProperty中的。booleanValue
-
(可选)资产属性值是一个布尔值,该值必须为
TRUE
或FALSE
。您也可以指定表达式。如果使用表达式,则计算结果应为布尔值。 doubleValue
-
(可选)资产属性值为双精度值。您也可以指定表达式。如果使用表达式,则计算结果应为双精度值。
integerValue
-
(可选)资产属性值为整数值。您也可以指定表达式。如果使用表达式,则计算结果应为整数值。
stringValue
-
(可选)资产属性值为字符串。您也可以指定表达式。如果使用表达式,则计算结果应为字符串值。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
iotsitewise:BatchPutAssetPropertyValue
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” IotSiteWiseAction中的。
-
Amazon DynamoDB
- DynamoDB action
-
Amazon DynamoDB 操作可以让您将数据发送至 DynamoDB 表。DynamoDB 表中有一个列用于接收指定操作有效负载中的所有属性/值对。有关支持的区域列表,请参见Amazon Web Services 一般参考中的 Amazon DynamoDB 端点和配额。
Amazon DynamoDB 是一项完全托管的SQL无数据库服务,可提供快速、可预测的性能和无缝扩展。有关更多信息,请参阅《Amazon DynamoDB 开发者指南》中的什么是 DynamoDB?。
- More information (10)
-
在向 DynamoDB 表的一列发送数据时,您必须指定以下参数。
tableName
-
接收数据的 DynamoDB 表名称。
tableName
值必须与 DynamoDB 表的表格名称匹配。您也可以指定表达式。 hashKeyField
-
哈希键(也称为分区键)的名称。
hashKeyField
值必须与 DynamoDB 表的分区键匹配。您也可以指定表达式。 hashKeyType
-
(可选)哈希键的数据类型。哈希键类型的值必须为
STRING
或NUMBER
。默认为STRING
。您也可以指定表达式。 hashKeyValue
-
哈希键的值。
hashKeyValue
使用替换模板。这些模板在运行时提供数据。您也可以指定表达式。 rangeKeyField
-
(可选)范围键(也称为排序键)的名称。
rangeKeyField
值必须与 DynamoDB 表的排序键匹配。您也可以指定表达式。 rangeKeyType
-
(可选)范围键的数据类型。哈希键类型的值必须为
STRING
或NUMBER
。默认为STRING
。您也可以指定表达式。 rangeKeyValue
-
(可选)范围键的值。
rangeKeyValue
使用替换模板。这些模板在运行时提供数据。您也可以指定表达式。 - operation
-
(可选)要执行的操作类型。您也可以指定表达式。操作值必须是以下值之一:
-
INSERT
- 将数据作为新项插入到 DynamoDB 表中。这是默认值。 -
UPDATE
- 使用新数据更新 DynamoDB 表的现有项。 -
DELETE
- 删除 DynamoDB 表中的现有项。
-
payloadField
-
(可选)接收操作有效负载的 DynamoDB 列的名称。默认名称为
payload
。您也可以指定表达式。 payload
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
如果指定的负载类型为字符串,则
DynamoDBAction
将非数据作为二进制JSON数据发送到 DynamoDB 表。DynamoDB 控制台以 Base64 编码文本格式显示数据。payloadField
值为
。您也可以指定表达式。payload-field
_raw
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
dynamodb:PutItem
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅《AWS IoT Events API参考资料》ynamoDBAction中的 D。
Amazon DynamoDB(v2)
- DynamoDBv2 action
-
The Amazon DynamoDB(v2) 操作可以让您将数据写入 DynamoDB 表。DynamoDB 表中有一个单独的列用于接收指定操作有效负载中的属性/值对。有关支持的区域列表,请参见Amazon Web Services 一般参考中的 Amazon DynamoDB 端点和配额。
Amazon DynamoDB 是一项完全托管的SQL无数据库服务,可提供快速、可预测的性能和无缝扩展。有关更多信息,请参阅《Amazon DynamoDB 开发者指南》中的什么是 DynamoDB?。
- More information (2)
-
在将数据发送至 DynamoDB 表的多个列时,您必须指定以下参数。
tableName
-
接收数据的 DynamoDB 表名称。您也可以指定表达式。
payload
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
重要
有效载荷类型必须是JSON。您也可以指定表达式。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
dynamodb:PutItem
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅《AWS IoT Events API参考资料ynamoDBv》中的 D 2Action。
Amazon Data Firehose
- Firehose action
-
Amazon Data Firehose 操作允许您将数据发送到 Firehose 传输流。有关支持的区域列表,请参阅中的 Amazon Data Firehose 终端节点和配额。Amazon Web Services 一般参考
Amazon Data Firehose 是一项完全托管的服务,用于向亚马逊简单存储服务(亚马逊简单存储服务)、亚马逊Redshift、亚马逊服务(OpenSearch 服务)和 Splunk 等目的地提供实时流数据。 OpenSearch 有关更多信息,请参阅什么是 Amazon Data Firehose? 在《亚马逊数据 Firehose 开发者指南》中。
- More information (3)
-
向 Firehose 传输流发送数据时,必须指定以下参数。
deliveryStreamName
-
接收数据的 Firehose 传输流的名称。
separator
-
(可选)您可以使用字符分隔符来分隔发送到 Firehose 传输流的连续数据。分隔符值必须是
'\n'
(换行符)、'\t'
(制表符)、'\r\n'
(Windows 新行)或','
(逗号)。 payload
-
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
firehose:PutRecord
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” FirehoseAction中的。
AWS Lambda
- Lambda action
-
该 AWS Lambda 操作允许您调用 Lambda 函数。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 AWS Lambda 端点和配额。
AWS Lambda 是一项计算服务,允许您在不预置或管理服务器的情况下运行代码。有关更多信息,请参阅什么是 AWS Lambda? 在《AWS Lambda 开发人员指南》中。
- More information (2)
-
调用 Lambda 函数时,您必须指定以下参数。
functionArn
-
要调ARN用的 Lambda 函数中的一个。
payload
-
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
lambda:InvokeFunction
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” LambdaAction中的。
Amazon Simple Notification Service
- SNS action
-
亚马逊SNS主题发布操作允许您发布亚马逊SNS消息。有关支持的区域列表,请参阅Amazon Web Services 一般参考中的 Amazon Simple Notification Service 端点和配额。
Amazon Simple Notification Service (Amazon Simple Notification Service) 是一项 Web 服务,用于协调和管理向订阅端点或客户端的消息交付或发送。有关更多信息,请参阅什么是亚马逊SNS? 在《Amazon 简单通知服务开发者指南》中。
注意
亚马逊SNS主题发布操作不支持亚马逊 SNSFIFO(先入先出)主题。由于规则引擎是一项完全分布式的服务,因此启动 Amazon SNS 操作时,消息可能不会按指定顺序显示。
- More information (2)
-
在发布 Amazon SNS 消息时,必须指定以下参数。
targetArn
-
接收消息ARN的 Amazon SNS 目标的。
payload
-
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
sns:Publish
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” SNSTopicPublishAction中的。
Amazon Simple Queue Service
- SQS action
-
Amazon SQS 操作允许您将数据发送到亚马逊SQS队列。有关支持的区域列表,请参阅Amazon Web Services 一般参考中的 Amazon Simple Queue Service 端点和配额。
Amazon Simple Queue Service (AmazonSQS) 提供安全、耐用且可用的托管队列,可让您集成和分离分布式软件系统和组件。有关更多信息,请参阅《Amazon Simple Notification Service 开发者指南》 中的什么是 Amazon Simple Queue Service>。
注意
亚马逊SQS操作不支持 >Amazon SQSFIFO(先入先出)话题。由于规则引擎是一项完全分布式的服务,因此启动 Amazon SQS 操作时,消息可能不会按指定顺序显示。
- More information (3)
-
当您向 Amazon SQS 队列发送数据时,必须指定以下参数。
queueUrl
-
接收数据URL的 Amazon SQS 队列的。
useBase64
-
(可选)如果您指定,则将数据 AWS IoT Events 编码为 Base64 文本。
TRUE
默认为FALSE
。 payload
-
(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅AWS IoT Events API参考中的负载。
注意
确保附加到您的 AWS IoT Events 服务角色的策略授予了该
sqs:SendMessage
权限。有关更多信息,请参阅 的身份和访问管理 AWS IoT Events。有关更多信息,请参阅 “AWS IoT Events API参考” SNSTopicPublishAction中的。
您也可以使用 Amazon SNS 和 AWS IoT Core 规则引擎来触发 AWS Lambda 函数。这使得使用其他服务采取行动成为可能,例如 Amazon Connect,甚至是公司的企业资源规划 (ERP) 应用程序。
注意
要实时收集和处理大量数据记录,您可以使用其他 AWS 服务,例如 Amazon Kinesis。然后,您可以完成初步分析,然后将结果 AWS IoT Events 作为输入发送到探测器。