Amazon SES에 대한 Amazon SNS 알림 예제 - Amazon Simple Email Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon SES에 대한 Amazon SNS 알림 예제

다음 단원에서는 다음과 같은 세 가지 유형의 알림 예를 다룹니다.

Amazon SNS 반송 메일 알림 예제

이 섹션에서는 피드백을 보낸 이메일 수신자가 제공한 DSN(전송 상태 알림)이 포함되거나 포함되지 않은 반송 메일 알림의 예를 제시합니다.

DSN이 있는 반송 메일 알림

다음은 DSN과 원래 이메일 헤더가 포함되어 있는 반송 메일 알림의 예제입니다. 반송 메일 알림에 원래 이메일 헤더가 포함되도록 구성하지 않은 경우, 알림의 mail 객체에 headersTruncated, headerscommonHeaders 필드가 없습니다.

{ "notificationType":"Bounce", "bounce":{ "bounceType":"Permanent", "reportingMTA":"dns; email.example.com", "bouncedRecipients":[ { "emailAddress":"jane@example.com", "status":"5.1.1", "action":"failed", "diagnosticCode":"smtp; 550 5.1.1 <jane@example.com>... User" } ], "bounceSubType":"General", "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"00000138111222aa-33322211-cccc-cccc-cccc-ddddaaaa068a-000000", "remoteMtaIp":"127.0.2.0" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "source":"john@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "callerIdentity": "IAM_user_or_role_name", "messageId":"00000138111222aa-33322211-cccc-cccc-cccc-ddddaaaa0680-000000", "destination":[ "jane@example.com", "mary@example.com", "richard@example.com"], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <john@example.com>" }, { "name":"To", "value":"\"Jane Doe\" <jane@example.com>, \"Mary Doe\" <mary@example.com>, \"Richard Doe\" <richard@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <john@example.com>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <jane@example.com>, Mary Doe <mary@example.com>, Richard Doe <richard@example.com>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

DSN이 없는 반송 메일 알림

다음은 원래 이메일 헤더가 포함되어 있지만 DSN은 없는 반송 메일 알림의 예제입니다. 반송 메일 알림에 원래 이메일 헤더가 포함되도록 구성하지 않은 경우, 알림의 mail 객체에 headersTruncated, headerscommonHeaders 필드가 없습니다.

{ "notificationType":"Bounce", "bounce":{ "bounceType":"Permanent", "bounceSubType": "General", "bouncedRecipients":[ { "emailAddress":"jane@example.com" }, { "emailAddress":"richard@example.com" } ], "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"00000137860315fd-869464a4-8680-4114-98d3-716fe35851f9-000000", "remoteMtaIp":"127.0.2.0" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"00000137860315fd-34208509-5b74-41f3-95c5-22c1edc3c924-000000", "source":"john@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "callerIdentity": "IAM_user_or_role_name", "destination":[ "jane@example.com", "mary@example.com", "richard@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <john@example.com>" }, { "name":"To", "value":"\"Jane Doe\" <jane@example.com>, \"Mary Doe\" <mary@example.com>, \"Richard Doe\" <richard@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <john@example.com>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <jane@example.com>, Mary Doe <mary@example.com>, Richard Doe <richard@example.com>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

Amazon SNS 수신 거부 알림 예제

이 섹션에서는 피드백을 보낸 이메일 수신자가 제공한 피드백 보고서가 포함되거나 포함되지 않은 수신 거부 알림의 예를 제시합니다.

피드백 보고서가 있는 수신 거부 알림

다음은 피드백 보고서와 원래 이메일 헤더가 포함되어 있는 수신 거부 알림의 예제입니다. 수신 거부 알림에 원래 이메일 헤더가 포함되도록 구성하지 않은 경우, 알림의 mail 객체에 headersTruncated, headerscommonHeaders 필드가 없습니다.

{ "notificationType":"Complaint", "complaint":{ "userAgent":"AnyCompany Feedback Loop (V0.01)", "complainedRecipients":[ { "emailAddress":"richard@example.com" } ], "complaintFeedbackType":"abuse", "arrivalDate":"2016-01-27T14:59:38.237Z", "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"000001378603177f-18c07c78-fa81-4a58-9dd1-fedc3cb8f49a-000000" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"000001378603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000", "source":"john@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "callerIdentity": "IAM_user_or_role_name", "destination":[ "jane@example.com", "mary@example.com", "richard@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <john@example.com>" }, { "name":"To", "value":"\"Jane Doe\" <jane@example.com>, \"Mary Doe\" <mary@example.com>, \"Richard Doe\" <richard@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <john@example.com>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <jane@example.com>, Mary Doe <mary@example.com>, Richard Doe <richard@example.com>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

피드백 보고서가 없는 수신 거부 알림

다음은 원래 이메일 헤더가 포함되어 있지만 피드백 보고서는 없는 수신 거부 알림의 예제입니다. 수신 거부 알림에 원래 이메일 헤더가 포함되도록 구성하지 않은 경우, 알림의 mail 객체에 headersTruncated, headerscommonHeaders 필드가 없습니다.

{ "notificationType":"Complaint", "complaint":{ "complainedRecipients":[ { "emailAddress":"richard@example.com" } ], "timestamp":"2016-01-27T14:59:38.237Z", "feedbackId":"0000013786031775-fea503bc-7497-49e1-881b-a0379bb037d3-000000" }, "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"0000013786031775-163e3910-53eb-4c8e-a04a-f29debf88a84-000000", "source":"john@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "callerIdentity": "IAM_user_or_role_name", "destination":[ "jane@example.com", "mary@example.com", "richard@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <john@example.com>" }, { "name":"To", "value":"\"Jane Doe\" <jane@example.com>, \"Mary Doe\" <mary@example.com>, \"Richard Doe\" <richard@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:05:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <john@example.com>" ], "date":"Wed, 27 Jan 2016 14:05:45 +0000", "to":[ "Jane Doe <jane@example.com>, Mary Doe <mary@example.com>, Richard Doe <richard@example.com>" ], "messageId":"custom-message-ID", "subject":"Hello" } } }

Amazon SNS 전송 알림 예제

다음은 원래 이메일 헤더가 포함되어 있는 전송 알림의 예제입니다. 전송 알림에 원래 이메일 헤더가 포함되도록 구성하지 않은 경우, 알림의 mail 객체에 headersTruncated, headerscommonHeaders 필드가 없습니다.

{ "notificationType":"Delivery", "mail":{ "timestamp":"2016-01-27T14:59:38.237Z", "messageId":"0000014644fe5ef6-9a483358-9170-4cb4-a269-f5dcdf415321-000000", "source":"john@example.com", "sourceArn": "arn:aws:ses:us-east-1:888888888888:identity/example.com", "sourceIp": "127.0.3.0", "sendingAccountId":"123456789012", "callerIdentity": "IAM_user_or_role_name", "destination":[ "jane@example.com" ], "headersTruncated":false, "headers":[ { "name":"From", "value":"\"John Doe\" <john@example.com>" }, { "name":"To", "value":"\"Jane Doe\" <jane@example.com>" }, { "name":"Message-ID", "value":"custom-message-ID" }, { "name":"Subject", "value":"Hello" }, { "name":"Content-Type", "value":"text/plain; charset=\"UTF-8\"" }, { "name":"Content-Transfer-Encoding", "value":"base64" }, { "name":"Date", "value":"Wed, 27 Jan 2016 14:58:45 +0000" } ], "commonHeaders":{ "from":[ "John Doe <john@example.com>" ], "date":"Wed, 27 Jan 2016 14:58:45 +0000", "to":[ "Jane Doe <jane@example.com>" ], "messageId":"custom-message-ID", "subject":"Hello" } }, "delivery":{ "timestamp":"2016-01-27T14:59:38.237Z", "recipients":["jane@example.com"], "processingTimeMillis":546, "reportingMTA":"a8-70.smtp-out.amazonses.com", "smtpResponse":"250 ok: Message 64111812 accepted", "remoteMtaIp":"127.0.2.0" } }