2017-03-09 1 views
2

J'ai une fonction lambda appelée par une règle IoT et j'aimerais connaître le nom du sujet depuis cette fonction lambda.Est-il possible de récupérer un nom de sujet dans une fonction Lambda appelée par une règle Iot?

Jusqu'ici, je ne peux récupérer que les données de message du paramètre event. Rien dans le paramètre context non plus.

Je n'ai pas trouvé quoi que ce soit dans la documentation ...

Est-il possible?

+0

Il devrait être dans l'objet de l'événement, stringify et enregistre l'événement lorsque le lambda est appelé "console.log (JSON.stringify (event))" et voir le journal en CloudWatch . Cela pourrait vous montrer exactement où vous devez rechercher un sujet. –

+0

Non, je l'ai déjà fait et ce n'est pas l'objet de l'événement ... –

Répondre

4

Vous devez utiliser la fonction topic() dans la requête AWS IoT SQL. Comme ceci:

SELECT * as data, topic() as topic FROM 'desired/+/topic' 

Dans ce cas, votre événement comprendra le message d'origine dans le champ « données » et le thème utilisé dans le champ « sujet ». Vous pouvez également utiliser un nombre entier comme paramètre dans la fonction topic(), pour renvoyer uniquement le sous-groupe.

Plus de données dans la documentation: oficial http://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-functions.html#iot-function-topic