如何使用Dialoflow发送电子邮件进行Google操作

时间:2018-11-30 09:30:58

标签: dialogflow actions-on-google

我到处都在寻找解决方案,该方案可以运行发送电子邮件但无法找到任何解决方案的意图。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:4)

您可以在dialogflow Webhook实现意图中使用nodemailer发送电子邮件。

请确保启用安全性较低的应用here以使用gmail发送电子邮件。

根据您的意图使用nodemailer发送电子邮件的代码:

app.intent('sendMail', (conv, params) => {

      const nodemailer = require('nodemailer');
      const transporter = nodemailer.createTransport({
        service: 'gmail',
        auth: {
          user: 'youremail@gmail.com',
          pass: 'yourPassword'
        }
      });

      var mailOptions = {
        from: 'youremail@gmail.com',
        to: email, //receiver email 
        subject: 'Mail subject',
        text: 'mail body'
      };

      transporter.sendMail(mailOptions, function (error, info) {
        if (error) {
          console.log(error);
        } else {
          console.log('Email sent: ' + info.response);
        }
      });

});

如果您使用的是嵌入式编辑器,请按照this寻求帮助。

希望有帮助!

答案 1 :(得分:2)

没有用于从Action或Dialogflow发送电子邮件的特定API。

但是,如果您的Intent已实现,则可以从Webhook中的该Intent处理程序中调用任何API或库。