AWS IoT
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

创建 DynamoDB 规则

借助 DynamoDB 规则,您可以从传入的 MQTT 消息中获取信息并将其写入 DynamoDB 表。

要创建 DynamoDB 规则,请执行以下操作:

  1. AWS IoT 控制台的左侧导航窗格中,选择行动

  2. Rules 页面,选择 Create

  3. Create a rule 页面上,在 Name 字段中键入规则名称。在 Description 字段键入规则的说明。

  4. 向下滚动至消息源。从 Using SQL version 下拉列表中选择最新版本。在 Attribute 字段键入 *。这将指定您要发送触发了规则的完整 MQTT 消息。

  5. 规则引擎使用主题筛选条件来确定收到 MQTT 消息时将触发哪些规则。在主题筛选条件字段,键入 iotbutton/your-button-DSN。如果您当前未使用 AWS IoT 按钮,请键入 my/topic 或规则中使用的主题。

    注意

    您可以在按钮底部找到 DSN。

    Condition 留空。

  6. Set one or more actions 中,选择 Add action

  7. Select an action 页面,选择 Insert a message into a DynamoDB table,然后选择 Configure action

  8. Configure action 页面,选择 Create a new resource

  9. Amazon DynamoDB 页面,选择 Create table

  10. Create DynamoDB table 页面,在 Table name 字段键入名称。在分区键中,键入 SerialNumber。选中添加排序键复选框,然后在排序键字段键入 ClickType。为分区键和排序键选择 String

  11. 选择 Create。创建 DynamoDB 表会需要几秒钟时间。关闭打开 Amazon DynamoDB 控制台的浏览器标签页。如果您不关闭该标签页,则您的 DynamoDB 表不会显示在 AWS IoT 配置操作页面的表名称下拉列表中。

  12. Configure action 页面,从 Table name 下拉列表中选择新表。在哈希键值中,键入 ${serialNumber}。执行这一操作后,规则将从 MQTT 消息中获取 serialNumber 属性的值,并将其写入 DynamoDB 表中的 SerialNumber 列。在范围键值中,键入 ${clickType}。此操作会将 clickType 属性的值写入 ClickType 列。将 Write message data to this column 留空。默认情况下,整条消息都将写入表中名为“Payload”的列。选择 Create a new role

  13. IAM role name 中键入唯一的名称,然后再次选择 Create a new role 按钮。选择您刚刚创建的角色,选择 Update role,然后选择 Add action

  14. 选择 Create rule 来创建规则。

  15. 确认消息将显示规则已创建。选择左箭头返回 Rules 页面。

  16. 测试规则,方法是按一下配置的 AWS IoT 按钮,或者使用 MQTT 客户端向与规则主题筛选条件匹配的主题发布消息。最后,返回 DynamoDB 控制台并选择您创建的表来查看按钮按压或消息条目。