0

我正在运行几个 Greengrass 核心,它们将数据发送到 MQTT 流。我在 GGC 上部署了一个 Lambda,读取传入的 SerialPort 并将其推送到 Stream。

但现在我想检查哪个设备正在发送数据 - 我试过这个来检查主机名

import socket
host = socket.gethostname()

但核心发送值“沙盒”,所以我认为 lambda 无权读取主机名。

SDK 没有这方面的文档: https ://github.com/aws/aws-greengrass-core-sdk-python

我想将数据推送到这样的 mqqt 流:

response = client.publish(
    topic='customer/events/{DEVICE-ID or UID or ARN}/',
    payload=jsonData.encode())
4

1 回答 1

4

我在另一个 AWS Python 示例中发现了一些有用的东西 - ThingNames 在 System Env 中注册,因此您可以导入 OS 并像这样获取 ThingName:

import os
device = os.environ['AWS_IOT_THING_NAME']
于 2019-02-01T12:37:07.963 回答