问题标签 [greengrass]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
328 浏览

amazon-web-services - 通过 Greengrass 发送 UID/设备 ID

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

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

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

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

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

0 投票
1 回答
66 浏览

javascript - AWS Javascript SDK:Greengrass createFunctionDefinition

我正在根据此https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Greengrass.html#createFunctionDefinition-property格式化我的参数

但无论出于何种原因,它在“执行”和 DefaultConfig 时给了我一个关键错误

和代码

0 投票
1 回答
179 浏览

amazon-web-services - 通过别名限定符在 Greengrass 上调用本地 Lambda

我在 Greengrass 设备上部署了两个 lambda 函数。为了更好的部署,我们决定使用 ALIAS,所以我在版本 36 中的函数 A 有一个别名:生产和我在版本 37 中的函数 B。

当我将这些 Lambda-Functions 部署到 Greengrass 时 - 我可以在 ggc-deployment 目录中找到它们(但带有版本号)所以这是一个巨大的问题,因为当函数 A 调用函数 BI 时必须设置一个限定符......每次从 Function BI 部署时,都必须检查版本号并在 Function A 中手动设置并部署它......有更好的解决方法吗?

0 投票
1 回答
193 浏览

raspberry-pi3 - 如何将另一个树莓派作为设备连接到 Greengrass 组并相互通信?

我是 AWS-IoT 的新手,我想了解 greengrass 的工作原理,

  1. 我想使用 amazon greengrass 在本地交流 2 个树莓派。那么两个树莓派都需要安装绿草核心吗?

  2. 或者,我们在一个树莓派中安装绿草核心软件并在 AWS greengrass IoT 控制台中添加另一个树莓派作为设备就足够了。

3.如果可能的话,两个树莓派之间的本地通信是如何进行的。

提前致谢。

0 投票
0 回答
44 浏览

python - 如何获取 DeepLens 设备名称

我有 3 个运行相同面部检测模型的 deeplens 设备。他们将输出发送到某个 s3 存储桶,该存储桶启动另一个 lambda。但是,我需要一个 deeplens 将输出发送到单独的 s3 存储桶。为了做到这一点,我相信我需要获取 deeplens 设备名称。

有谁知道我如何从 greengrass lambda 或一些类似的元数据中获取设备名称来区分设备?

0 投票
1 回答
222 浏览

amazon-web-services - RPi AWS Greengrass 拒绝连接

我正在关注这个模块实验室:https ://docs.aws.amazon.com/greengrass/latest/developerguide/module5.html

之前的都运行良好。Greengrass 在我的 RPi 上,与我的 PC 在同一个网络中。RPi 有 192.168.1.101,我可以 ping 通它。我还设置了“手动管理连接信息”,只有 1 个 IP。当我通过以下方式启动 Python 脚本时: python lightController.py --endpoint ....

我总是得到这个错误:

2019-03-10 16:50:20,805 - AWSIoTPythonSDK.core.protocol.mqtt_core - INFO - Keep-alive:+ +600.000000 sec Traceback (most recent call last): File "lightController.py", line 203, in <module> myAWSIoTMQTTShadowClient.connect() ..... ConnectionRefusedError: WinError 10061 No connection could be made because the target machine actively refused it

我在 PC 和 RPi 之间没有防火墙或代理。为什么会出现这个错误?

非常感谢

0 投票
1 回答
309 浏览

python-2.7 - 从云 Lambda 函数调用本地 AWS Lambda 函数

我制作了 2 个 Lambda 函数(LambdaFunction_1 和 LambdaFunction_2)。我已经在我的 AWS-Greengrass 核心上部署了 LambdaFunction_1,它是 RaspberryPi 3,作为本地 lambda 函数。我想从 LambdaFunction_2 调用 LambdaFunction_1。由于我无法理解的奇怪原因,无法调用本地 lambda 函数。

要部署本地 lambda 函数 (LambdaFunction_1),我必须上传一个 zip 文件,其中包含代码的 python 文件和 greengrasssdk。在代码中导入这个 greengrasssdk 会导致它无法被调用!

这是云上的 LAmbdaFunction_2 的代码:

这是部署在 greengrass 核心上的 LambdaFunction_1 的代码:

Function 2 的日志文件中的输出应该是“Hello From Function 1”。但响应是 {"errorMessage": "Unable to import module 'LambdaFunction_1'"}

但是:当我从函数一的代码中删除 (import greengrasssdk) 行时,它工作得很好。这个问题合乎逻辑吗?

0 投票
1 回答
221 浏览

raspberry-pi - 从青草中获取覆盆子的温度

我可以使用 python 命令获取树莓派的温度:

但是,当我在设备上部署的 greengrass 上的 lambda 函数(python 2.7)中运行此命令时,它给了我错误:

VCHI 初始化失败

我相信这是因为在容器中运行的 lambda 函数并不知道它正在运行的树莓派。

如何从在 greengrass 上运行的 lambda 函数获取树莓派的温度?

0 投票
2 回答
907 浏览

aws-iot - AWS IoT Greengrass 与 FreeRTOS

我想知道什么时候会偏爱 Greengrass 而不是 FreeRTOS?任何陷阱或经验提示将不胜感激

谢谢!

0 投票
1 回答
749 浏览

android - 在隔离网络中将 MQTT 客户端连接到 Android 中的 MQTT 服务器时出现问题

我有一个 Greengrass 核心 (Jetson TX2) 广播一个隔离的接入点,因此不同的物联网设备可以相互通信。接入点工作,因为我能够让一个设备通过 OSC 协议与核心通信。

现在我正试图让我的智能手表(运行 WearOS)与 AWS Greengrass MQTT 通信。这需要 SSL 连接以及核心提供的组证书。当核心和智能手表都连接到具有活动互联网连接的网络时,我的实现工作。但是,当我尝试通过隔离接入点与它们通信时,智能手表无法与核心通信

我正在通过paho.mqtt.androidasocketFactory来实现通信以存储我的密钥和证书。我不确定是什么导致我的应用无法与我的核心处理器通信

我试图找出问题所在,智能手表似乎确实连接到了接入点并检索了 IP 地址。但是,该paho.mqtt.android库不使用该 IP 地址来启动 MQTT 连接

这就是我从手表实现客户端的方式

AWSMQTTService.kt

AWSIotSslUtility.kt

我希望这能够连接并打印success到调试日志。但是,我收到了这个错误