使用 pentaho PDI 发送电子邮件

Posted

技术标签:

【中文标题】使用 pentaho PDI 发送电子邮件【英文标题】:Send Email with pentaho PDI 【发布时间】:2013-10-10 17:56:23 【问题描述】:

我想使用 PDI 发送电子邮件。我创建了一份工作并添加了“邮件”元素。有我的参数。

Server smtp.gmail.com
Port: 587
Use Authentication
User : mygmailusername
Pass : mygmailpass
Secure Con Type : TLS

当我运行作业时出现错误:Problem while sending message : javax.mail.AuthenticationFailedException

当我将端口更改为 465 时,gmail 拒绝了该消息并向 mygmailusername 发送了一封电子邮件,表明未经授权的登录尝试。

但是我已将 BI 服务器的端口更改为 9090。我不知道这是否也是一个原因。我假设 PDI 以某种方式与 BI 服务器通信,如果它是发送电子邮件的 BI 服务器。请问我该如何让它工作?

【问题讨论】:

您是否尝试过使用 SSL 而不是 TLS? GMail 向您发送电子邮件的事实表明正确的端口是 465,恕我直言。要发送电子邮件,发送端口无关紧要,只有接收端口很重要,恕我直言。 【参考方案1】:

我终于能够让它工作了。我将配置更改为:

Server smtp.gmail.com
Port: 465
Use Authentication
User : mygmailusername
Pass : mygmailpass
Secure Con Type : SSL

然后我运行 PDI 作业,这导致谷歌向mygmailusername 帐户发送Suspicious sign-in prevented 电子邮件。我打开电子邮件并点击http://support.google.com/mail?p=client_login。在电子邮件的底部。这将我带到了故障排除页面。

现在,请按照以下步骤解决问题:我点击第三个选项http://www.google.com/accounts/DisplayUnlockCaptcha的链接,然后点击继续。现在它可以完美运行了。

【讨论】:

【参考方案2】:

我想你应该试试:

Port 465 or 587
Secure Con Type SSL

如果不起作用,请检查您的 GMail 帐户的 SMTP 配置,但我认为这些是标准配置。

【讨论】:

【参考方案3】:

我能够使用@flexxxit answer 和 Gmail 帐户上的以下 adicional 设置来实施邮件步骤,以降低应用程序发送电子邮件时的安全性: https://www.google.com/settings/security/lesssecureapps

请避免此配置,因为打开“访问安全性较低的应用程序”时“您的帐户不再受现代安全标准保护”。

我做这个测试只是为了检查 Pentaho DI Job 是否正常工作。

【讨论】:

以上是关于使用 pentaho PDI 发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Pentaho 数据集成提取电子邮件附件?

无法在 Pentaho 水壶中获取电子邮件附件

Windows下Kettle定时任务执行并发送错误信息邮件

用于 Rest 客户端的 Pentaho (PDI) 动态授权密钥

使用 Pentaho Kettle/PDI 将行列转换为行

pentaho 数据集成:执行 PDI BI Server 还是使用 carte?