

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.

# Aufrufen einer Lambda-Funktion
<a name="receiving-email-action-lambda"></a>

Die Lambda-Aktion ruft Ihren Code über eine Lambda-Funktion auf und benachrichtigt Sie optional über Amazon SNS. Diese Aktion umfasst die folgenden Optionen und Anforderungen.

**Optionen**
+ **Lambda-Funktion – **ARN der Lambda-Funktion. Ein Beispiel für einen Lambda-Funktions-ARN ist *arn:aws:lambda:us-east-1:account-id:function*:. MyFunction
+ **Invocation type** – Der Aufruftyp der Lambda-Funktion. Ein Aufruftyp von bedeutet, dass die Ausführung der Funktion zu einer sofortigen Antwort führt. **RequestResponse** Eine Aufruftyp **Event** (Ereignis) bedeutet, dass die Funktion asynchron aufgerufen wird. Wir empfehlen, den Aufruftyp **Event** (Ereignis) zu verwenden, es sei denn, für Ihren Anwendungsfall ist die synchrone Ausführung notwendig.

  Für den Aufruf von **RequestResponse** gibt es eine Zeitverzögerung von 30 Sekunden.

  Weitere Informationen finden Sie unter [Aufrufen von Lambda mit Step Functions](https://docs.aws.amazon.com/lambda/latest/dg/lambda-invocation.html) im *AWS Lambda -Entwicklerhandbuch*.
+ **SNS-Thema** – Der Name oder ARN des Amazon-SNS-Themas, das benachrichtigt werden soll, wenn die angegebene Lambda-Funktion ausgelöst wird. Ein Beispiel für einen Amazon SNS SNS-Themen-ARN ist *arn:aws:sns:us-east* - 1:123456789012:. MyTopic Weitere Informationen finden Sie unter [Amazon SNS-Thema anlegen](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) im *Amazon Simple Notification Service-Entwicklerhandbuch*.

**Voraussetzungen**
+ Die Lambda-Funktion, die Sie auswählen, muss sich in derselben AWS Region befinden wie der Amazon SES SES-Endpunkt, den Sie für den Empfang von E-Mails verwenden.
+ Das von Ihnen Amazon SNS SNS-Thema muss sich in derselben AWS Region befinden wie der Amazon SES SES-Endpunkt, den Sie für den E-Mail-Empfang verwenden.

## Schreiben Ihrer Lambda-Funktion
<a name="receiving-email-action-lambda-function"></a>

Zum Verarbeiten Ihrer E-Mail kann Ihre Lambda-Funktion asynchron aufgerufen werden (d. h. mit dem `Event`-Aufruftyp). Das an Ihre Lambda-Funktion übergebene "Event"-Objekt enthält Metadaten zum eingehenden E-Mail-Ereignis. Sie können auch die Metadaten für den Zugriff auf den Nachrichteninhalt aus Ihrem Amazon-S3-Bucket verwenden.

Wenn Sie den Nachrichtenfluss wirklich kontrollieren möchten, muss Ihre Lambda-Funktion synchron aufgerufen werden (d. h. mit dem `RequestResponse`-Aufruftyp) und Ihre Lambda-Funktion muss die `callback` Methode mit zwei Argumenten aufrufen: Das erste Argument lautet `null` und das zweite ist eine `disposition`-Eigenschaft, die auf `STOP_RULE`, `STOP_RULE_SET` oder `CONTINUE` eingestellt ist. Wenn das zweite Argument `null` ist oder keine gültige `disposition`-Eigenschaft besitzt, wird der Nachrichtenfluss fortgesetzt und weitere Aktionen und Regeln werden verarbeitet. Dies entspricht dem Ablauf von `CONTINUE`.

Sie können beispielsweise den Empfangsregelsatz stoppen, indem Sie die folgende Zeile an das Ende des Lambda-Funktionscodes setzen:

```
callback( null, { "disposition" : "STOP_RULE_SET" });
```

 AWS Lambda Codebeispiele finden Sie unter[Beispiele für Lambda-Funktionen](receiving-email-action-lambda-example-functions.md). Beispiele für allgemeine Anwendungsfälle finden Sie unter [Beispielanwendungsfälle](receiving-email-action-lambda-example-use-cases.md).

### Eingabeformat
<a name="receiving-email-action-lambda-input"></a>

Amazon SES übergibt Informationen an die Lambda Funktion im JSON-Format. Das Objekt auf oberster Ebene enthält ein `Records`-Array, das mit Eigenschaften `eventSource`, `eventVersion` und `ses` gefüllt ist. Das `ses`-Objekt enthält `receipt`- und `mail`-Objekte, die das gleiche Format wie die in [Benachrichtigungsinhalte](receiving-email-notifications-contents.md) beschriebenen Amazon-SNS-Benachrichtigungen aufweisen.

Die Daten, die Amazon SES an Lambda übergibt, enthalten Metadaten zur Nachricht sowie mehrere E-Mail-Header. Sie enthalten jedoch nicht den Text der Nachricht.

Im Folgenden finden Sie eine allgemeine Übersicht über die Struktur der Eingabe, die Amazon SES für die Lambda-Funktion bereitstellt.

```
{
   "Records": [
      {
        "eventSource": "aws:ses",
        "eventVersion": "1.0",
        "ses": {
           "receipt": {
               <same contents as SNS notification>
            },
           "mail": {
               <same contents as SNS notification>
           }
         }
     }
   ]
}
```

### Rückgabewerte
<a name="receiving-email-action-lambda-function-return-values"></a>

Ihre Lambda-Funktion kann den Nachrichtenfluss kontrollieren, indem einer der folgenden Werte zurückgegeben wird:
+ `STOP_RULE` – Es werden keine weiteren Aktionen in der aktuellen Empfangsregel, jedoch weitere Empfangsregeln verarbeitet.
+ `STOP_RULE_SET` – Es werden keine weiteren Aktionen oder Empfangsregeln verarbeitet.
+ `CONTINUE` oder ein anderer ungültiger Wert – Das bedeutet, dass weitere Aktionen und Empfangsregeln verarbeitet werden können.

**Topics**
+ [Schreiben Ihrer Lambda-Funktion](#receiving-email-action-lambda-function)
+ [Beispiel für ein Ereignis einer eingehenden E-Mail](receiving-email-action-lambda-event.md)
+ [Beispielanwendungsfälle](receiving-email-action-lambda-example-use-cases.md)
+ [Beispiele für Lambda-Funktionen](receiving-email-action-lambda-example-functions.md)