Локальная AWS лямбда-функция (greengrass) не выполняется - PullRequest
0 голосов
/ 06 марта 2020

Я новичок в AWS, и я использую AWS IoT greengrass. У меня есть некоторые проблемы, чтобы вызвать функцию Lambda из устройства greengrass.

Я пытаюсь сделать это: https://docs.aws.amazon.com/greengrass/latest/developerguide/lambda-functions.html

с небольшой модификацией. В примере AWS мы видим некоторые подозрения

Источник _ Цель _ _______ Топи c Фильтр

Облако IoT _ Эта функция _ test / input_message

Эта функция _ Облако IoT _ test / topic_results

Таким образом, сообщение сначала отправляется из облака IoT в локальную лямбда-функцию, а затем возвращается в другую топи c. Вместо этого я посылаю синусоидальный сигнал (JSON) на устройство greengrass под названием «myDevice» с симулятора. В подписке я разрешил myDevice -> iot Cloud на topi c "iotgateway", и я вижу, что данные передаются на topi c. Теперь я хотел бы развернуть лямбда-функцию на моем greengrass, которая публикует sh json на topi c (test / topic_results)

Таким образом, данные будут go на устройстве greengrass и непосредственно в лямбда-функции, без прохождения через облако IoT.

Поэтому я добавил следующие подписки:

Source _ Target _ _______ Topi c filter

myDevice _ myLambdaFunction _ iotgateway

myLambdaFunction _ IoT Cloud _ test / topic_results

но ничего не добавляется ... когда я добавьте подписку iot Cloud __ myLambdaFunction __iotgateway, затем она заработает, и я смогу увидеть данные в topi c, но это означает, что данные отправляются из myDevice, затем в облако и, наконец, в функцию lambda. Я не понимаю, почему это не работает, когда я пытаюсь отправить JSON непосредственно на лямбда-функцию, чтобы остаться на краю ..

У вас есть какие-либо идеи о том, что будет не хватать ?

Спасибо за вашу помощь J

...