0

Was habe ich mit dem Ergebnis der sendEmail() Methode der SES-API von Amazon AWS zu tun?Was tun mit dem Ergebnis von AWS SES SesClient sendEmail() Methode?

Long:

Ich habe erfolgreich die "aws/aws-sdk-php": "^3.38" über Komponisten in einem PHP-Projekt installiert.

Ich habe erfolgreich versendet E-Mails über die Formel:

$client = new SesClient($sesParameters); 
$result = $client->sendEmail($emailSesArgs); 

Es funktioniert.

erhalte ich ein Ergebnis wie dieses:

Result {#433 ▼ 
    -data: array:2 [▼ 
    "MessageId" => "0102015fd3c21fd2-98a104e2-0c3f-4078-90ed-0be3a12ae812-000000" 
    "@metadata" => array:4 [▼ 
     "statusCode" => 200 
     "effectiveUri" => "https://email.eu-west-1.amazonaws.com" 
     "headers" => array:4 [▼ 
     "x-amzn-requestid" => "e27b7805-cd11-11e7-9d57-cd9600d88c96" 
     "content-type" => "text/xml" 
     "content-length" => "326" 
     "date" => "Sun, 19 Nov 2017 10:10:35 GMT" 
     ] 
     "transferStats" => array:1 [▼ 
     "http" => array:1 [▼ 
      0 => [] 
     ] 
     ] 
    ] 
    ] 
} 

Fragen

Die Fragen sind ...

  • Was soll ich mit diesem Ergebnis zu tun, weiter als die Erkundung der 200 OK Ergebnis in Echtzeit?
  • Welche Operationen kann ich danach mit dieser durchführen?
  • Ich habe beobachtet, dass, wenn ich eine E-Mail an eine ungültige Adresse senden, auch200 OK zurückgibt. Wahrscheinlich ist dies eher eine "Bestätigung", dass die Sende-Email "Anfrage" eingereicht wurde, als sie tatsächlich verarbeitet wurde. Kann ich das Ergebnis verwenden, um den "Status" des Pakets selbst über die API zu lesen, um festzustellen, ob die E-Mail erfolgreich zugestellt wurde?

Vielen Dank!

+1

Ich speichere die MessageId für Delivery Logs. Wenn ich also weitere Aktionen verfolgen möchte (wenn E-Mails gelesen wurden, zurückgewiesen wurden usw.), könnte ich ihren Status aktualisieren. –

Antwort

1

Was ich mache ist die Verfolgung von Nachrichtenzustellungen, Bounces und Reklamationen mit der Nachrichten-ID durch Konfiguration von SNS-Themen (SES> Domains> example.com> Benachrichtigungen), die eine AWS Lambda-Funktion auslösen (SNS> Themen> Abonnements) speichert/aktualisiert den Auslieferungsstatus in einer DynamoDB-Tabelle für spätere Abfragevorgänge.