Следует ли настраивать лямбда-выражение как устройство (вещь) для связи от AWS IoT greengrass lambda к механизму правил AWS IoT Core?

Чтобы отправлять данные из лямбда-выражения Greengrass в механизм правил AWS IoT Core, нам необходимо создать подписку с источником в качестве Lambda и целью в качестве IoT Core.

Должна ли лямбда идентифицировать себя как IoT-устройство (вещь с учетными данными) для ядра IoT через SDK устройства? Или это необязательно, и лямбда может в качестве альтернативы отправлять данные в IoT Core напрямую с помощью greengrass sdk?


person variable    schedule 21.10.2020    source источник


Ответы (1)


Неа. Лямбда не должна быть сконфигурирована как вещь, если она является частью группы Greengrass и выполняется в ядре Greengrass.

Ознакомьтесь с официальной документацией AWS на подписках, и это поможет вам понимать дальше

Greengrass позволяет подписки на 4 различных варианта и обратно

введите описание изображения здесь

Устройства / Лямбда-выражения / Коннекторы / Сервисы для других устройств / Лямбда-выражения / Коннекторы / Сервисы

Публикация данных в AWS IoT Core входит в параметр «Службы» как IoT Cloud

person Dr Things    schedule 22.10.2020
comment
Да, конечно! Если мы настроим лямбда в группе GG как вещь, код в лямбда может подписаться на темы без необходимости настраивать подписку в группе GG. - person Dr Things; 22.10.2020
comment
Предполагая, что у нас есть настройка greengrass, вы говорите, что подписка на greengrass требуется только для связи между устройством и лямбдой и наоборот? А подписка greengrass не требуется для связи между устройствами? - person variable; 22.10.2020
comment
Нет, мы можем использовать подписку greengrass для обмена сообщениями между устройствами или между лямбдами ... Я обновил ответ, это может помочь! - person Dr Things; 22.10.2020
comment
В вашем комментарии выше вы сказали If we configure the Lambda within a GG group as a thing, the code in lambda can subscribe to topics without having to configure the subscription in GG group - я смущен этим, потому что вы правильно сказали, что код в лямбда (вещь) может подписываться на темы - но без подписки в группе GG, как сообщение достигнет лямбда (вещь)? - person variable; 22.10.2020
comment
Что ж, если лямбда настроена так, чтобы не истекло время ожидания (или до тех пор, пока не истечет время ожидания) и после запуска / вызова она будет продолжать прослушивать тему из IoT Core точно так же, как код python на вашем ПК может прослушивать эту тему. Хотя мы теряем цель иметь это в группе GG, это все же возможно. - person Dr Things; 22.10.2020
comment
В приведенном выше примере, предполагая, что лямбда - это вещь (устройство), принадлежащая группе greengrass (а не ядру IoT), тогда, чтобы иметь возможность получать сообщения, потребуется ли подписка на другие вещи в группе greengrass в дополнение к коду python .subscribe(topic..)? Меня беспокоит то, что - подписка традиционно означала подписку на тему, но в контексте greengrass я думаю, что подписка означает подписку на устройство (или lamda, службу, коннектор) и тему. - person variable; 22.10.2020
comment
Подписка в Greengrass также происходит только по теме ... Вместо обычного способа, когда AWS IoT Core остается брокером MQTT, Greengrass Core становится брокером ... поэтому любое устройство / лямбда / коннектор / сервисы, публикующие сообщение MQTT, отправляются сначала к брокеру (в группе GG это ядро) ... независимо от того, подписались ли другие объекты в группе GG на эту тему или нет, если мы не настроим подписки в группе GG, которая позволяет маршрутизировать сообщения от одного объекта к другой для указанной темы, сообщения не передаются. И да, вы правы! - person Dr Things; 22.10.2020