这是我的第一篇帖子,如果我的问题没有道理,我深表歉意。我是node.js和Alexa技能的新手。我正在研究Alexa的技术资料,该技术资料可以将电子邮件发送到票务系统。我想通过NodeJS Nodemailer做到这一点。我相信我必须在开发人员控制台上安装nodemailer才能使它起作用。我不知道如何在Alexa开发人员控制台上下载和使用Nodemailer。我正在使用Alexa托管(测试版)服务,并在Alexa模拟器上进行测试,以确认是否有任何改变。
我已经研究了IFTTT,但这不是我想要的,因为发邮件人的电子邮件会因使用此技能的人和不同的消息而改变,并且我不认为IFTTT能够做到。我已经研究过创建电子邮件并在js文件本身中发送电子邮件,这似乎是我最好的选择。
我想将此代码添加到我的index.js文件中
var nodemailer = require('nodemailer');
function emailsender(){
var transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'email@email.com',
pass: 'password'
}
});
var mailOptions = {
from: 'email@email.com',
to: 'email.email.com',
subject: 'Sending Email using Node.js',
text: 'That was easy!'
};
transporter.sendMail(mailOptions, function(error, info){
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
});
return "success";
}
所以我认为我也需要在package.json文件中包含Nodemailer软件包,代码取自https://github.com/nodemailer/nodemailer/blob/master/package.json
{
"name": "nodemailer",
"version": "6.1.0",
"description": "Easy as cake e-mail sending from your Node.js applications",
"main": "lib/nodemailer.js",
"scripts": {
"test": "grunt"
},
"repository": {
"type": "git",
"url": "https://github.com/nodemailer/nodemailer.git"
},
...
...
...
但是我不能将其添加到我已经存在的package.json文件中,因为名称和版本等都是唯一的密钥,不能重复。
我主要的三个问题是:
答案 0 :(得分:0)
在“代码”菜单的Alexa开发人员控制台(托管技能)中,将“ nodemailer”添加到依赖项(在package.json中)。
"dependencies": {
"nodemailer": "^6.1.0"
}
然后将代码添加到index.js,让我们看看会发生什么。
您必须熟悉以下几件事:Amazon lambda和基本节点编程。