触发意图后,我正在使用nodemailer向用户发送电子邮件。 我正在为使用nodemailer发送电子邮件的功能创建一个承诺。 使用node index.js运行时,会发送电子邮件,但是当部署到firebase并在模拟器上对Google控制台上的操作调用模拟器的意图时,会出现webhook错误
格式错误的响应
由于语音响应为空,无法将Dialogflow响应解析为AppResponse。
这是我的代码:
当用户调用此意图时,他们应该收到我的电子邮件。
let sendMails = () => {
return new Promise((resolve, reject) => {
const transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'my email',
pass: 'password'
}
});
let mailOptions = {
from: 'my email',
to: 'user's email',
subject: 'something',
text: 'here is the email'
};
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
throw new Error("Error has come");
} else {
let answer = info.response;
return resolve(answer);
// console.log('Email sent: ' + info.response);
}
});
}).catch(error => {
console.log(error);
throw new Error("Error is coming")
})
}
这是目的:
app.intent('nda - yes', conv => {
return sendMails().then((answer)=> {
return conv.ask(`<speak>Done. Email is sent. Check your inbox.</speak>`)
})
})`