使用其他 Amazon 服务 - Amazon IoT Events
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用其他 Amazon 服务

Amazon IoT Events 支持以下允许您使用 Amazon 服务的操作:

  • iotTopicPublish 发布有关 MATT 主题的消息。

  • iotEvents 将数据以输入值的形式发送至 Amazon IoT Events 。

  • iotSiteWise 将数据发送至 Amazon IoT SiteWise 中的资产属性。

  • dynamoDB 向 Amazon DynamoDB 表发送数据。

  • dynamoDBv2 向 Amazon DynamoDB 表发送数据。

  • firehose将数据发送到 Amazon Data Firehose 流。

  • lambda 调用 Amazon Lambda 函数。

  • sns 将数据作为推送通知发送。

  • sqs 将数据发布至 Amazon SQS 队列。

重要
  • 您必须为两者 Amazon IoT Events 以及要使用的 Amazon 服务选择相同的 Amazon 区域。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 Amazon IoT Events 端点和配额

  • 在为 Amazon IoT Events 操作创建其他 Amazon 资源时,必须使用相同的 Amazon 区域。如果您切换 Amazon 区域,则访问 Amazon 资源可能会遇到问题。

默认情况下, Amazon IoT Events 会为任何操作生成 JSON 格式的标准负载。此操作有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。要配置操作负载,您可使用内容表达式。有关更多信息,请参阅表达式Amazon IoT Events API 参考中的有效负载数据。

Amazon IoT Core

IoT topic publish action

该 Amazon IoT Core 操作允许您通过消息代理发布 MQTT Amazon IoT 消息。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 Amazon IoT Core 端点和配额

Amazon IoT 消息代理通过从发布 Amazon IoT 客户端向订阅客户端发送消息来连接客户端。有关更多信息,请参见Amazon IoT 开发者指南中的Amazon IoT消息代理

More information (2)

发布 MQTT 消息时,您必须指定以下参数。

mqttTopic

接收该消息的 MQTT 主题。

您可以使用在探测器模型中创建的变量或输入,在运行时系统动态地定义 MQTT 主题名称。

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该iot:Publish权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅《Amazon IoT Events API 参考》中的 IotTopicPublishAction

Amazon IoT Events

IoT Events action

该 Amazon IoT Events 操作允许您将数据 Amazon IoT Events 作为输入发送到。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 Amazon IoT Events 端点和配额

Amazon IoT Events 允许您监控设备或设备群是否出现故障或运行变化,并在此类事件发生时触发操作。有关更多信息,请参阅什么是 Amazon IoT Events? 在《Amazon IoT Events 开发人员指南》中。

More information (2)

向发送数据时 Amazon IoT Events,必须指定以下参数。

inputName

接收数据的 Amazon IoT Events 输入名称。

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该iotevents:BatchPutMessage权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅《Amazon IoT Events API 参考》中的 IotEventsAction

Amazon IoT SiteWise

IoT SiteWise action

该 Amazon IoT SiteWise 操作允许您将数据发送到中的资产属性 Amazon IoT SiteWise。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 Amazon IoT SiteWise 端点和配额

Amazon IoT SiteWise 是一项托管服务,可让您大规模收集、组织和分析来自工业设备的数据。有关更多信息,请参阅Amazon IoT SiteWise 《用户指南》中的什么是 Amazon IoT SiteWise?

More information (11)

向中的资产属性发送数据时 Amazon IoT SiteWise,必须指定以下参数。

重要

要接收数据,您必须使用 Amazon IoT SiteWise中的现有资产属性。

  • 如果您使用 Amazon IoT Events 控制台,则必须指定propertyAlias以标识目标资产属性。

  • 如果使用 Amazon CLI,则必须指定其中一个propertyAlias或两个propertyIdassetId然后才能标识目标资产属性。

有关更多信息,请参阅Amazon IoT SiteWise 《用户指南》中的将工业数据流映射到资产属性

propertyAlias

(可选)资产属性的别名。您也可以指定表达式。

assetId

(可选)包含指定属性的资产的 ID。您也可以指定表达式。

propertyId

(可选)资产的属性 ID。您也可以指定表达式。

entryId

(可选)此条目的唯一标识符。您可以使用条目 ID,跟踪在出现故障时哪些数据条目导致了错误。默认值为新的唯一标识符。您也可以指定表达式。

propertyValue

包含有关属性值详细信息的结构。

quality

(可选)资产属性值的质量。值必须为 GOODBADUNCERTAIN。您也可以指定表达式。

timestamp

(可选)包含时间戳信息的结构。如果您未指定此值 ,则默认为事件时间。

timeInSeconds

采用 Unix 纪元时间格式的时间戳(以秒为单位)。有效范围在 1-31556889864403199 之间。您也可以指定表达式。

offsetInNanos

(可选)从timeInSeconds转换的纳秒偏移量。有效范围在 0-999999999 之间。您也可以指定表达式。

value

一个包含资产属性值的结构。

重要

您必须指定以下值类型之一,具体取决于指定的资产属性的 dataType。有关更多信息,请参阅《Amazon IoT SiteWise API 参考》中的 AssetProperty

booleanValue

(可选)资产属性值是一个布尔值,该值必须为 TRUEFALSE。您也可以指定表达式。如果使用表达式,则计算结果应为布尔值。

doubleValue

(可选)资产属性值为双精度值。您也可以指定表达式。如果使用表达式,则计算结果应为双精度值。

integerValue

(可选)资产属性值为整数值。您也可以指定表达式。如果使用表达式,则计算结果应为整数值。

stringValue

(可选)资产属性值为字符串。您也可以指定表达式。如果使用表达式,则计算结果应为字符串值。

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该iotsitewise:BatchPutAssetPropertyValue权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅《Amazon IoT Events API 参考》中的 IotSiteWiseAction

Amazon DynamoDB

DynamoDB action

Amazon DynamoDB 操作可以让您将数据发送至 DynamoDB 表。DynamoDB 表中有一个列用于接收指定操作有效负载中的所有属性/值对。有关支持的区域列表,请参见Amazon Web Services 一般参考中的 Amazon DynamoDB 端点和配额

Amazon DynamoDB是一种全托管 NoSQL 数据库服务,提供快速而可预测的性能,能够实现无缝扩展。有关更多信息,请参阅《Amazon DynamoDB 开发者指南》中的什么是 DynamoDB?

More information (10)

在向 DynamoDB 表的一列发送数据时,您必须指定以下参数。

tableName

接收数据的 DynamoDB 表名称。tableName 值必须与 DynamoDB 表的表格名称匹配。您也可以指定表达式。

hashKeyField

哈希键(也称为分区键)的名称。hashKeyField 值必须与 DynamoDB 表的分区键匹配。您也可以指定表达式。

hashKeyType

(可选)哈希键的数据类型。哈希键类型的值必须为 STRINGNUMBER。默认值为 STRING。您也可以指定表达式。

hashKeyValue

哈希键的值。hashKeyValue使用替换模板。这些模板在运行时提供数据。您也可以指定表达式。

rangeKeyField

(可选)范围键(也称为排序键)的名称。rangeKeyField 值必须与 DynamoDB 表的排序键匹配。您也可以指定表达式。

rangeKeyType

(可选)范围键的数据类型。哈希键类型的值必须为 STRINGNUMBER。默认值为 STRING。您也可以指定表达式。

rangeKeyValue

(可选)范围键的值。rangeKeyValue使用替换模板。这些模板在运行时提供数据。您也可以指定表达式。

operation

(可选)要执行的操作类型。您也可以指定表达式。操作值必须是以下值之一:

  • INSERT - 将数据作为新项插入到 DynamoDB 表中。这是默认值。

  • UPDATE - 使用新数据更新 DynamoDB 表的现有项。

  • DELETE - 删除 DynamoDB 表中的现有项。

payloadField

(可选)接收操作有效负载的 DynamoDB 列的名称。默认名称为 payload。您也可以指定表达式。

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

如果指定的有效负载类型为字符串,则 DynamoDBAction 会将非 JSON 数据以二进制形式写入 DynamoDB 表。DynamoDB 控制台以 Base64 编码文本格式显示数据。payloadField 值为 payload-field_raw。您也可以指定表达式。

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该dynamodb:PutItem权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅Amazon IoT Events API 参考中的DynamoDBAction

Amazon DynamoDB(v2)

DynamoDBv2 action

The Amazon DynamoDB(v2) 操作可以让您将数据写入 DynamoDB 表。DynamoDB 表中有一个单独的列用于接收指定操作有效负载中的属性/值对。有关支持的区域列表,请参见Amazon Web Services 一般参考中的 Amazon DynamoDB 端点和配额

Amazon DynamoDB是一种全托管 NoSQL 数据库服务,提供快速而可预测的性能,能够实现无缝扩展。有关更多信息,请参阅《Amazon DynamoDB 开发者指南》中的什么是 DynamoDB?

More information (2)

在将数据发送至 DynamoDB 表的多个列时,您必须指定以下参数。

tableName

接收数据的 DynamoDB 表名称。您也可以指定表达式。

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

重要

有效负载类型必须是 JSON。您也可以指定表达式。

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该dynamodb:PutItem权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅Amazon IoT Events API 参考中的DynamoDBv2Action

亚马逊 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

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该firehose:PutRecord权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅《Amazon IoT Events API 参考》中的 FirehoseAction

Amazon Lambda

Lambda action

该 Amazon Lambda 操作允许您调用 Lambda 函数。有关支持的区域列表,请参见 Amazon Web Services 一般参考 中的 Amazon Lambda 端点和配额

Amazon Lambda 是一项计算服务,允许您在不预置或管理服务器的情况下运行代码。有关更多信息,请参阅什么是 Amazon Lambda? 在《Amazon Lambda 开发人员指南》中。

More information (2)

调用 Lambda 函数时,您必须指定以下参数。

functionArn

要调用的 Lambda 函数的 ARN。

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该lambda:InvokeFunction权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅《Amazon IoT Events API 参考》中的 LambdaAction

Amazon Simple Notification Service

SNS action

Amazon SNS 主题发布操作可以让您发布 Amazon SNS 消息。有关支持的区域列表,请参阅Amazon Web Services 一般参考中的 Amazon Simple Notification Service 端点和配额

Amazon Simple Notification Service (Amazon Simple Notification Service) 是一项 Web 服务,用于协调和管理向订阅端点或客户端的消息交付或发送。有关更多信息,请参阅《Amazon Simple Notification Service 开发者指南》中的什么是 Amazon SNS?

注意

Amazon SNS 主题发布操作不支持Amazon SNS FIFO(先进先出)主题。由于规则引擎是一项完全分布式服务,因此可能无法按 Amazon SNS 操作发起时的指定顺序显示消息。

More information (2)

发布 Amazon SNS 消息时,您必须指定以下参数。

targetArn

接收消息的 Amazon SNS 目标的 ARN。

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该sns:Publish权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅 Amazon IoT Events API 参考TopicPublishAction中的 SNS

Amazon Simple Queue Service

SQS action

Amazon SQS 操作可以您将数据发送至 Amazon SQS 队列。有关支持的区域列表,请参阅Amazon Web Services 一般参考中的 Amazon Simple Queue Service 端点和配额

Amazon Simple Queue Service (Amazon SQS) 提供了一个安全、持久且可用的托管队列,以允许您集成和分离分布式软件系统与组件。有关更多信息,请参阅《Amazon Simple Notification Service 开发者指南》 中的什么是 Amazon Simple Queue Service>

注意

Amazon SNS 操作不支持 Amazon SNS FIFO(先进先出)主题。由于规则引擎是一项完全分布式服务,因此可能无法按 Amazon SQ S 操作发起时的指定顺序显示消息。

More information (3)

将数据发送至 Amazon SQS 队列时,您必须指定以下参数。

queueUrl

接收数据的 Amazon SQS 队列的 URL。

useBase64

(可选)如果您指定,则将数据 Amazon IoT Events 编码为 Base64 文本。TRUE默认值为 FALSE

payload

(可选)默认有效负载包含有关探测器模型实例和触发操作的事件的信息的所有属性/值对。此外,您还可以自定义负载。有关更多信息,请参阅Amazon IoT Events 《API 参考》中的有效负载

注意

确保附加到您的 Amazon IoT Events 服务角色的策略授予了该sqs:SendMessage权限。有关更多信息,请参阅适用于 Amazon IoT Events 的身份和访问管理

有关更多信息,请参阅 Amazon IoT Events API 参考TopicPublishAction中的 SNS

您也可以使用 Amazon SNS 和 Amazon IoT Core 规则引擎来触发函数。 Amazon Lambda 这使得可以使用其他服务(例如 Amazon Connect,甚至是公司的企业资源规划 (ERP) 应用程序)来采取操作。

注意

要实时收集和处理大量数据记录,您可以使用其他 Amazon 服务,例如 Amazon Kinesis。然后,您可以完成初步分析,然后将结果 Amazon IoT Events 作为输入发送到探测器。