Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo AWS Lambda con AWS IoT
AWS IoT fornisce una comunicazione sicura tra i dispositivi connessi a Internet (come i sensori) e il cloud. AWS Questo consente raccogliere, archiviare e analizzare i dati di telemetria da più dispositivi.
Puoi creare AWS IoT regole per consentire ai tuoi dispositivi di interagire con i servizi. AWS Il AWS IoT Rules Engine fornisce un linguaggio SQL basato per selezionare i dati dai payload dei messaggi e inviarli ad altri servizi, come Amazon S3, Amazon DynamoDB e. AWS Lambda Si definisce una regola per richiamare una funzione Lambda quando si desidera richiamare un AWS altro servizio o un servizio di terze parti.
Quando un messaggio IoT in arrivo attiva la regola, AWS IoT richiama la funzione Lambda in modo asincrono e passa i dati dal messaggio IoT alla funzione.
L'esempio seguente mostra una lettura dell'umidità da un sensore serra. I valori di riga e pos identificano la posizione del sensore. Questo evento di esempio si basa sul tipo serra in Tutorial sulle regole AWS IoT.
Esempio AWS IoT evento di messaggio
{ "row" : "10", "pos" : "23", "moisture" : "75" }
Per le chiamate asincrone, Lambda inserisce in una coda i messaggi e i tentativi se la funzione restituisce un errore. Configura la tua funzione con una destination per mantenere gli eventi che la tua funzione non è in grado di elaborare.
È necessario concedere l'autorizzazione al AWS IoT servizio per richiamare la funzione Lambda. Utilizza il comando add-permission
per aggiungere un'istruzione di autorizzazione alla policy basata sulle risorse della funzione.
aws lambda add-permission --function-name
my-function
\ --statement-id iot-events --action "lambda:InvokeFunction" --principal iot.amazonaws.com
Verrà visualizzato l'output seguente:
{ "Statement": "{\"Sid\":\"iot-events\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"iot.amazonaws.com\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-1:123456789012:function:my-function\"}" }
Per ulteriori informazioni su come usare Lambda con AWS IoT, vedi Creazione di una AWS Lambda regola.