问题描述
async function sendEmailToSalesTeamOnBookingDemoClass(email,name,phoneNumber,utmSource,utmTerm,utmMedium,deviceType,browser,referrer) {
try {
let emailMe = "abc@gmail.com"
const ses = new AWS.SES({ apiVersion: "2010-12-01" });
const params = {
Destination: {
ToAddresses: [emailMe]
},Source: senderEmail,Template: "Sales_Email_Demo",TemplateData : JSON.stringify({
"name": name,"email": email,"phone": phoneNumber,"utmSource":utmSource,"utmTerm":utmTerm,"utmMedium":utmMedium,"browser":browser,"referrer":referrer,"deviceType":deviceType
}),Tags: [
{
Name: 'SomeName',Value: 'info'
}
]
};
const sendEmailReceiver = ses.sendTemplatedEmail(params).promise();
sendEmailReceiver
.then(data => {
console.log(senderEmail,emailMe)
console.log("Email submitted to SES",data);
})
.catch(error => {
console.log("Email not submitted to SES:" + error);
});
}
catch (e) {
console.error(`Error: ${e}`);
}
}
Email submitted to SES {
ResponseMetadata: { RequestId: 'c08b9948-7be3-465d-a72c-fcca23f9f059' },MessageId: '010901793bd95a02-813072dc-bb87-4b65-91c4-03f7f29dcbd0-000000'
}
但是即使发件人电子邮件已经过验证和测试,也没有收到电子邮件。我的模板有问题吗?
{
"Template": {
"TemplateName": "Sales_Email_Demo","SubjectPart": "some subject!","HtmlPart": "<html> <body><p>Hello,</p><p>Details:</p><p>Name:{{name}}</p><p>Phone Number: {{phoneNumber}}</p><p>Email Id: {{emailId}}</p><p>Source: {{utmSource}}</p><p>Medium: {{utmMedium}}</p><p>Term:{{utmTerm}}</p><p>Device:{{deviceType}}</p><p>browser:{{browser}}</p><p>Referrer: {{referrer}}</p></body></html>"
}
}
解决方法
我想通了。问题出在模板上。发送变量和接收变量的命名不同。