Я новичок в 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