Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS IoT bietet sichere Kommunikation zwischen mit dem Internet verbundenen Geräten (z. B. Sensoren) und der Cloud. AWS Auf diese Weise können Sie die Telemetriedaten von mehreren Geräten erfassen, speichern und analysieren.
Sie können AWS IoT Regeln erstellen, mit denen Ihre Geräte interagieren können. AWS-Services Die AWS IoT Rules Engine bietet eine SQL-basierte Sprache, um Daten aus Nachrichtennutzlasten auszuwählen und die Daten an andere Dienste wie Amazon S3, Amazon DynamoDB und zu senden. AWS Lambda Sie definieren eine Regel zum Aufrufen einer Lambda-Funktion, wenn Sie einen anderen AWS Dienst oder einen Drittanbieterdienst aufrufen möchten.
Wenn eine eingehende IoT-Nachricht die Regel auslöst, AWS IoT ruft Ihre Lambda-Funktion asynchron auf und leitet Daten aus der IoT-Nachricht an die Funktion weiter.
Das folgende Beispiel zeigt einen Feuchtigkeitsablesung von einem Gewächshaussensor. Die Werte row und pos bestimmen die Position des Sensors. Dieses Beispielereignis basiert auf dem Gewächshaustyp in den AWS IoT -Regel-Tutorials.
Beispiel AWS IoT Nachrichtenereignis
{
"row" : "10",
"pos" : "23",
"moisture" : "75"
}
Bei asynchronem Aufruf stellt Lambda die Nachricht in die Warteschlange und wiederholt den Vorgang, wenn Ihre Funktion einen Fehler zurückgibt. Konfigurieren Sie Ihre Funktion mit einem Ziel, um Ereignisse beizubehalten, die Ihre Funktion nicht verarbeiten konnte.
Sie müssen dem AWS IoT Dienst die Erlaubnis erteilen, Ihre Lambda-Funktion aufzurufen. Sie können den Befehl add-permission
verwenden, um der ressourcenbasierten Richtlinie Ihrer Funktion eine Berechtigungsanweisung hinzuzufügen.
aws lambda add-permission --function-name
my-function
\ --statement-id iot-events --action "lambda:InvokeFunction" --principal iot.amazonaws.com
Die Ausgabe sollte folgendermaßen aussehen:
{
"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\"}"
}
Weitere Informationen zur Verwendung von Lambda mit AWS IoT finden Sie unter AWS Lambda Regel erstellen.