· 7 years ago · Jan 17, 2019, 03:14 PM
1const AWS = require('aws-sdk');
2const S3= new AWS.S3();
3let ses = new AWS.SES();
4exports.hello = async (event, context) => {
5 try {
6 const valueFromBucket = await S3.getObject({Bucket: '*******', Key: 'form.docx'}).promise();
7 var buffer = valueFromBucket.Body.toString('base64');
8 var message = '<html><body ><div> This is a test Message</div></body></html>';
9 var fromEmail = '******@gmail.com';
10 var toEmail = '*******@gmail.com';
11 var ses_mail = "From: 'Email' <" + fromEmail + ">n";
12 ses_mail = ses_mail + "To: " + toEmail + "n";
13 ses_mail = ses_mail + "Subject: Subject Emailn";
14 ses_mail = ses_mail + "MIME-Version: 1.0n";
15 ses_mail = ses_mail + "Content-Type: multipart/mixed; boundary="NextPart"nn";
16 ses_mail = ses_mail + "--NextPartn";
17 ses_mail = ses_mail + "Content-Type: text/html; charset=iso-8859-1nn";
18 ses_mail = ses_mail + message+"n";
19 ses_mail = ses_mail + "--NextPartn";
20 ses_mail = ses_mail + "Content-Type: application/mswordn";
21 ses_mail = ses_mail + "Content-Disposition: attachment; filename="form.docx"nn";
22 ses_mail = ses_mail + "Content-Transfer-Encoding: base64nn"
23 ses_mail = ses_mail + buffer + "n";
24 ses_mail = ses_mail + "--NextPart--";
25
26 var params = {
27 RawMessage: { Data: new Buffer(ses_mail)},
28 Destinations: [ "*******@gmail.com" ],
29 Source: "'AWS Tutorial Series' <" + fromEmail + ">'"
30 };
31 const sendPromise = await new AWS.SES({ apiVersion: "2010-12-01" })
32 .sendRawEmail(params)
33 .promise();
34 return{
35 statusCode: 200,
36 body: JSON.stringify(sendPromise)
37 }
38 }
39 catch (err) {
40 return {
41 statusCode: err.statusCode || 400,
42 body: err.message || JSON.stringify(err.message)
43 }
44 }
45}