Skip to content

Commit 6107585

Browse files
Ognjen Jevremovicandris9
Ognjen Jevremovic
authored andcommitted
fix: πŸ› ses verify, add support for v3 API
Add support for the AWS SES v3 API for verying the connection (SES configuration). βœ… Closes: #1254
1 parent bf57cf5 commit 6107585

File tree

1 file changed

+24
-16
lines changed

1 file changed

+24
-16
lines changed

β€Žlib/ses-transport/index.js

+24-16
Original file line numberDiff line numberDiff line change
@@ -309,29 +309,37 @@ class SESTransport extends EventEmitter {
309309
*/
310310
verify(callback) {
311311
let promise;
312+
let ses = (this.ses.aws ? this.ses.ses : this.ses) || {};
313+
let aws = this.ses.aws || {};
314+
315+
const sesMessage = {
316+
RawMessage: {
317+
// required
318+
Data: 'From: invalid@invalid\r\nTo: invalid@invalid\r\n Subject: Invalid\r\n\r\nInvalid'
319+
},
320+
Source: 'invalid@invalid',
321+
Destinations: ['invalid@invalid']
322+
};
323+
const cb = err => {
324+
if (err && err.code !== 'InvalidParameterValue') {
325+
return callback(err);
326+
}
327+
return callback(null, true);
328+
};
312329

313330
if (!callback) {
314331
promise = new Promise((resolve, reject) => {
315332
callback = shared.callbackPromise(resolve, reject);
316333
});
317334
}
318335

319-
this.ses.sendRawEmail(
320-
{
321-
RawMessage: {
322-
// required
323-
Data: 'From: invalid@invalid\r\nTo: invalid@invalid\r\n Subject: Invalid\r\n\r\nInvalid'
324-
},
325-
Source: 'invalid@invalid',
326-
Destinations: ['invalid@invalid']
327-
},
328-
err => {
329-
if (err && err.code !== 'InvalidParameterValue') {
330-
return callback(err);
331-
}
332-
return callback(null, true);
333-
}
334-
);
336+
if (typeof ses.send === 'function' && aws.SendRawEmailCommand) {
337+
// v3 API
338+
ses.send(new aws.SendRawEmailCommand(sesMessage), cb);
339+
} else {
340+
// v2 API
341+
ses.sendRawEmail(sesMessage, cb).promise();
342+
}
335343

336344
return promise;
337345
}

0 commit comments

Comments
Β (0)