sqle icon indicating copy to clipboard operation
sqle copied to clipboard

页面显示邮件发送成功,但邮箱未收到

Open taolx0 opened this issue 3 years ago • 1 comments

SQLe Version main

Describe the bug 页面显示邮件发送成功,但邮箱未收到

To Reproduce

  1. 配置系统设置的SMTP,关闭启用邮件推送 image

  2. 点击测试 image

  3. 测试邮箱未收到邮件

Expected behavior 邮箱收到邮件

Suggestion 测试邮件发送功能是否正常,应该与 是否启用邮件推送 无关

taolx0 avatar Aug 30 '22 06:08 taolx0

我有同样的问题,web前端相应error -> dial tcp: i/o timeout

olddriver4 avatar Sep 20 '22 05:09 olddriver4

为什么页面显示邮件发送成功,但邮箱未收到?

https://github.com/actiontech/sqle/blob/b18aee43a7b8c1d89138e86cb1f037ebfe7cc62f/sqle/notification/email.go#L19

发送邮件方法,如果SMTP未配置或者未开启邮件通知,错误返回值是nil。因为错误返回值是nil,所以外层接口会走到邮件发送成功分支,但实际上邮件未发送

https://github.com/actiontech/sqle/blob/b18aee43a7b8c1d89138e86cb1f037ebfe7cc62f/sqle/api/controller/v1/configuration.go#L139。

此处前端关于判断是否连接正常的逻辑也有问题(具体原因略过)

修改方案

  1. SMTP未配置或者未开启邮件通知返回错误,而不是nil。https://github.com/actiontech/sqle/blob/b18aee43a7b8c1d89138e86cb1f037ebfe7cc62f/sqle/notification/email.go#L19

但是会影响审核任务通知(如果用户未配置通知邮箱,不应该返回错误,因为用户可能就不想被通知) 3. 邮箱测试接口增加单独的检测逻辑,如果用户未配置通知邮箱或未开启通知按钮,直接返回到前端

taolx0 avatar Oct 24 '22 07:10 taolx0

复现版本: UI Version: release-1.2209.x 604e0ac Server Version: release-1.2209.x-ee 3f8ad37ce4 复现步骤: 1.在系统设置中填写smtp相关参数 2.然后关闭smtp功能 3.然后使用测试功能,往另一个邮箱发送测试邮件 4.实际另一个邮箱没有收到邮件

image image image

Marcus9530 avatar Oct 26 '22 05:10 Marcus9530

验证版本: UI Version: main 9ad6f1b Server Version: main-ee e4e5da233a 验证步骤: 1.在系统设置中填写smtp相关参数 2.然后关闭smtp功能 3.然后使用测试功能,往另一个邮箱发送测试邮件 4.界面提示stmp功能没有开启

image image image

Marcus9530 avatar Oct 26 '22 09:10 Marcus9530