【问题标题】:How to obtain thing group name from AWS lambda function如何从 AWS lambda 函数获取事物组名称
【发布时间】:2020-06-28 03:24:49
【问题描述】:

我有一些东西正在调用同一个 lambda 函数,当被调用时,我需要知道它们在哪个组中。如何通过 python lambda 函数获取它们在哪个 IoT 事物组中?我尝试检查客户端和上下文对象中是否有任何我可以使用的东西,但找不到任何东西。

【问题讨论】:

  • IAM 组的 IAM 用户?
  • 抱歉,不是 IAM 组,IoT 事物组
  • 你查过contextevent的内容有没有线索?或者,如果它提供了事物 ID,您可以将其回溯到 IoT 组。
  • 在这种情况下,事件只是一个标量值,因为这是我传递给函数的内容,上下文对象有很多关于环境的信息,但我看不到任何可能有帮助的信息.我读了这个docs.aws.amazon.com/lambda/latest/dg/python-context.html 文档

标签: python amazon-web-services aws-lambda aws-iot


【解决方案1】:

有一些规定可以创建可以调用 Lambda 函数并从触发规则的 MQTT 消息中传递数据的规则。在典型架构中,Lambda 函数通过规则调用,而不是直接由 IoT 客户端调用。 AWS IoT 规则引擎(基于基于 SQL 的语言)能够从消息负载中选择数据并将数据发送到其他服务,例如 AWS Lambda 或 S3 等。

规则处理来自它正在侦听的主题的基于 JSON 的消息,默认情况下将结果作为处理程序的事件参数传递给 Lambda 函数,而不添加或删除任何数据。因此,如果消息没有感兴趣的数据,则该数据可能无法用于 Lambda 函数。

一个选项可以将事物组名称嵌入来自事物的消息中。这些数据可以在 Lambda 中解析。如果事物信息在 MQTT 消息中传递或由 Rule 的 SQL 添加到传递给 Lambda 函数的结果中,则事件参数有助于 Lambda 函数获取事物相关信息。

【讨论】:

    猜你喜欢
    • 2017-05-14
    • 2016-10-01
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 2021-05-07
    • 2019-08-29
    • 1970-01-01
    • 2020-08-03
    相关资源
    最近更新 更多