Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SMTP服务改进 #174

Closed
SHLE1 opened this issue Apr 23, 2024 · 12 comments
Closed

SMTP服务改进 #174

SHLE1 opened this issue Apr 23, 2024 · 12 comments
Assignees
Labels
bug Something isn't working

Comments

@SHLE1
Copy link

SHLE1 commented Apr 23, 2024

  • 在使用第三方smtp服务商时,“用户名”这一栏经常会要求填写自己的注册账号比如“xxx@gmail.com“来进行验证,但是chatnio用户名一栏似乎不支持在“用户名”一栏出现“@”符号,会提示“SMTP 发件参数未正确配置,已禁用邮箱验证”。
  • 希望能去掉这一限制以更好的支持第三方smtp服务。(个人使用brevo,确认配置正确,在其他项目可以发送邮件)
image
@zmh-program
Copy link
Owner

用户名要去掉@后面的 只需要填smtp的username
发件人才要加@后面的

@zmh-program
Copy link
Owner

比如你用 postmaster@deeptrain.net 邮箱发件

用户名为 postmaster
发件人为 postmaster@deeptrain.net

@SHLE1
Copy link
Author

SHLE1 commented Apr 23, 2024

  • 问题就是username是service@mydomain.com,含有@就提示“SMTP 发件参数未正确配置,已禁用邮箱验证
  • 例如我用的brave,sender为service@mydomain.com,在用户名处填service是无法通过brevo的验证的,会弹“请求失败
    sent mail failed: 535 5.7.8 Authentication failed
  • 这是smtp的设置,在smtpserver测试时将“login“填入”用户名“框才可以发送成功,而在chatnio并不允许将“login“填入“用户名“,所以无法通过认证
  • 因为登陆邮箱和发件邮箱并不同,所以区分了用户名和发件人。在one-api的smtp设置中,也区分了smtp账户和smtp发送者邮箱。
image

@zmh-program
Copy link
Owner

smtp server 和 port 填的没问题,用户名应该填你的 brevo 用户名,发件人填你的 login

https://github.com/Deeptrain-Community/chatnio/blob/main/utils/smtp.go#L33-L56

@zmh-program
Copy link
Owner

正常 SMTP 发件 用户名填入@后缀是无法工作的

@SHLE1
Copy link
Author

SHLE1 commented Apr 23, 2024

  • 您说的这样确实可以,但是这样的收件人端显示发件人是代发而不是xxx@mydomain.com
  • 可否像独角数卡一样,添加更多自定义配置来实现?
  • 感谢您的耐心回复和指导
63CBDA82-2B95-4266-9575-FFD483E8CDCE

@zmh-program
Copy link
Owner

zmh-program commented Apr 23, 2024

我刚刚注册了一下 brevo,发现无法正常工作,即使通过去除用户名的@限制后mail.v2库也无法工作。
看样子和其他 SMTP 服务有区别,等我有空研究一下,看看如何修复,感谢反馈。

@zmh-program zmh-program added the bug Something isn't working label Apr 23, 2024
@emengweb
Copy link

emengweb commented May 9, 2024

用户名要去掉@后面的 只需要填smtp的username 发件人才要加@后面的

测试使用mxroute的邮局(发件用户名使用的是邮箱地址)尝试使用 465\25\587 端口,均报错无法正常发送测试邮件

@zmh-program
Copy link
Owner

用户名要去掉@后面的 只需要填smtp的username 发件人才要加@后面的

测试使用mxroute的邮局(发件用户名使用的是邮箱地址)尝试使用 465\25\587 端口,均报错无法正常发送测试邮件

用户名去掉@就好了?

@emengweb
Copy link

emengweb commented May 9, 2024 via email

@zmh-program
Copy link
Owner

zmh-program commented May 9, 2024

当前推荐使用腾讯云 SES / QQ / Gmail 等 SMTP 服务商, mail.v2 库对这类特殊服务商支持不良好。

@Sh1n3zZ
Copy link
Collaborator

Sh1n3zZ commented Jun 22, 2024

Greetings For @SHLE1 @emengweb ,

该问题已修复,同时依需要增加了部分功能。具体分析和其他相关信息可见我刚刚提交的 pr #213
目前该 pr 正在等待 merge ,您可以选择前往 https://github.com/Deeptrain-Community/chatnio/tree/Rakuyou_Dev 分支拉取最新代码或等待主分支合并。

Best Regards,
Junhai Deng

zmh-program added a commit that referenced this issue Jun 23, 2024
#213 from @Sh1n3zZ)

feat: SMTP Compatibility Enhancement and SSL Protocol Support (#174)
zmh-program added a commit that referenced this issue Jun 23, 2024
chore: Compatible with pre-modified SMTP sending method (#174)
@Sh1n3zZ Sh1n3zZ closed this as completed Jun 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants