AWS IoT
开发人员指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

创建 DynamoDB 规则

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

创建 DynamoDB 规则:

  1. AWS IoT 控制台的左侧导航窗格中选择 Act (操作)。

  2. Rules 页面,选择 Create

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

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

  5. 规则引擎使用主题筛选条件来确定收到 MQTT 消息时将触发哪些规则。在 Topic filter 字段键入 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 字段键入名称。在 Partition key 中键入 SerialNumber。选中 Add sort key 复选框,然后在 Sort key 字段键入 ClickType。为分区键和排序键选择 String

  11. 选择 Create。创建 DynamoDB 表需要几秒钟时间。关闭打开 Amazon DynamoDB 控制台的浏览器标签。如果您未关闭该标签页,您的 DynamoDB 表将不会显示在 AWS IoT Configure action 页面的 Table name 下拉列表中。

  12. Configure action 页面,从 Table name 下拉列表中选择新表。In Hash Key Value 中,键入 ${serialNumber}。此操作将指示规则从 MQTT 消息中获取 serialNumber 属性的值,并将其写入 DynamoDB 表中的 SerialNumber 列。In Range Key Value 中,键入 ${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 控制台并选择您创建的表来查看按钮按压或消息条目。