Amazon web services 如何为AWS IoT按钮创建Lambda函数

Amazon web services 如何为AWS IoT按钮创建Lambda函数,amazon-web-services,lambda,aws-iot,Amazon Web Services,Lambda,Aws Iot,我已经阅读了一些教程,并观看了一些关于这个主题的视频,但我无法重现其中显示的步骤 我的AWS IoT按钮配置正确,工作正常。然后我转到Lambda管理控制台,从其中一个模板创建一个新的Lambda函数。现在显示的屏幕与所有教程和视频不同。无论如何,我必须选择一个触发器,然后选择IoT按钮。然后GUI告诉我配置该触发器。然后我输入按钮的序列号,不要触摸证书选项,因为我的物联网按钮上已经有了密钥和证书。在我确定“启用触发器”被选中后,点击“添加”按钮。现在我在触发器配置屏幕中看到一个红色框,上面写着

我已经阅读了一些教程,并观看了一些关于这个主题的视频,但我无法重现其中显示的步骤

我的AWS IoT按钮配置正确,工作正常。然后我转到Lambda管理控制台,从其中一个模板创建一个新的Lambda函数。现在显示的屏幕与所有教程和视频不同。无论如何,我必须选择一个触发器,然后选择IoT按钮。然后GUI告诉我配置该触发器。然后我输入按钮的序列号,不要触摸证书选项,因为我的物联网按钮上已经有了密钥和证书。在我确定“启用触发器”被选中后,点击“添加”按钮。现在我在触发器配置屏幕中看到一个红色框,上面写着:

“不允许操作列表为空。至少需要定义一个操作。(服务:AWSIot;状态代码:400;错误代码:InvalidRequestException;请求ID:41c78c96-00fe-11e8-a48a-61538c57d315)”


我被困在这一点上,因为我永远无法为我的函数分配任何触发器。

这花了一些时间,但我想我已经找到了解决这个问题的方法

这个错误很奇怪,因为您当然试图创建一个操作。好像是个虫子

幸运的是,您可以通过另一种方式创建它:

  • 访问AWS物联网控制台
  • 转到侧边栏菜单中的Act选项
  • 单击“创建”以创建新规则
  • 给出一个名字和描述
  • 对于SQL规则,构建一个类似于从“iotbutton/+'中选择*的规则(即为属性输入
    *
    ,等等)
  • 添加您的操作-您的Lambda函数:)
  • 如果愿意,也可以添加一个错误操作
  • 单击创建规则
按下按钮并确认Lambda功能已运行


如果您有多个按钮,我假设您可以将按钮的DSN替换select语句中的
+

在这里得到相同的错误。已尝试不选中该框以启用触发器。几天前,有人在AWS论坛上发布了同样的消息,目前还没有答案:可能也值得一试。