code fix and improvements
This commit is contained in:
14
backend/config/email.js
Normal file
14
backend/config/email.js
Normal file
@@ -0,0 +1,14 @@
|
||||
var config = {};
|
||||
|
||||
config.PORT = 587;
|
||||
config.SMTP_HOST = 'smtp.mail.com';
|
||||
config.SECURE = false;
|
||||
config.AUTH = {
|
||||
user: 'saburly@mail.com',
|
||||
pass: 'KeepSaburly',
|
||||
};
|
||||
|
||||
config.FROM_EMAIL = 'saburly@mail.com';
|
||||
config.SUBJECT = 'Message from Saburly service';
|
||||
|
||||
module.exports = config;
|
||||
@@ -1,4 +1,5 @@
|
||||
const nodemailer = require ('nodemailer');
|
||||
const emailConfig = require('../config/email');
|
||||
|
||||
module.exports = {
|
||||
transformEmailFromAlexaResponse: function (email) {
|
||||
@@ -43,23 +44,20 @@ module.exports = {
|
||||
name +
|
||||
'<br/><b>Email : </b>' +
|
||||
fromEmail +
|
||||
'<br/><b>Your Saburly team</b>';
|
||||
'<br/><br/><b>Your Saburly team</b>';
|
||||
|
||||
let transporter = nodemailer.createTransport ({
|
||||
host: 'smtp.mail.com',
|
||||
port: 587,
|
||||
secure: false,
|
||||
auth: {
|
||||
user: 'saburly@mail.com',
|
||||
pass: 'KeepSaburly',
|
||||
},
|
||||
host: emailConfig.SMTP_HOST,
|
||||
port: emailConfig.PORT,
|
||||
secure: emailConfig.SECURE,
|
||||
auth: emailConfig.AUTH,
|
||||
});
|
||||
|
||||
var mailOptions = {
|
||||
from: 'saburly@mail.com',
|
||||
from: emailConfig.FROM_EMAIL,
|
||||
replyTo: fromEmail,
|
||||
to: toEmail,
|
||||
subject: 'Message from Saburly service',
|
||||
subject: emailConfig.SUBJECT,
|
||||
text: messageBody,
|
||||
html: messageBodyHTML,
|
||||
};
|
||||
|
||||
@@ -88,12 +88,10 @@ module.exports = {
|
||||
repromptSpeech
|
||||
);
|
||||
} else if (!intent.slots.Message.value) {
|
||||
intent.slots.Email.value = emailHelper.transformEmailFromAlexaResponse(intent.slots.Email.value);
|
||||
if (
|
||||
!emailHelper.isEmailValid (
|
||||
intent.slots.Email.value
|
||||
)
|
||||
) {
|
||||
intent.slots.Email.value = emailHelper.transformEmailFromAlexaResponse (
|
||||
intent.slots.Email.value
|
||||
);
|
||||
if (!emailHelper.isEmailValid (intent.slots.Email.value)) {
|
||||
//Email is not valid, ask again
|
||||
const slotToElicit = 'Email';
|
||||
const speechOutput =
|
||||
@@ -103,7 +101,8 @@ module.exports = {
|
||||
':elicitSlot',
|
||||
slotToElicit,
|
||||
speechOutput,
|
||||
repromptSpeech
|
||||
repromptSpeech,
|
||||
intent
|
||||
);
|
||||
} else {
|
||||
//Email is valid
|
||||
@@ -122,24 +121,27 @@ module.exports = {
|
||||
console.log ('Name : ' + intent.slots.Name.value);
|
||||
console.log ('Email : ' + intent.slots.Email.value);
|
||||
console.log ('Message : ' + intent.slots.Message.value);
|
||||
emailHelper.sendEmal (
|
||||
intent.slots.Name.value,
|
||||
intent.slots.Email.value,
|
||||
intent.slots.Message.value,
|
||||
destinationEmail
|
||||
).then(info=>{
|
||||
console.log(info);
|
||||
this.response.speak (
|
||||
'Ok. Message sent. Someone will contact you ASAP'
|
||||
);
|
||||
this.emit (':responseReady');
|
||||
}).catch(error=>{
|
||||
console.log(error);
|
||||
this.response.speak (
|
||||
'Sorry, there was a problem with sending message.'
|
||||
);
|
||||
this.emit (':responseReady');
|
||||
});
|
||||
emailHelper
|
||||
.sendEmal (
|
||||
intent.slots.Name.value,
|
||||
intent.slots.Email.value,
|
||||
intent.slots.Message.value,
|
||||
destinationEmail
|
||||
)
|
||||
.then (info => {
|
||||
console.log (info);
|
||||
this.response.speak (
|
||||
'Ok. Message sent. Someone will contact you ASAP'
|
||||
);
|
||||
this.emit (':responseReady');
|
||||
})
|
||||
.catch (error => {
|
||||
console.log (error);
|
||||
this.response.speak (
|
||||
'Sorry, there was a problem with sending message.'
|
||||
);
|
||||
this.emit (':responseReady');
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user