coai
coai copied to clipboard
SMTP服务改进
- 在使用第三方smtp服务商时,“用户名”这一栏经常会要求填写自己的注册账号比如“[email protected]“来进行验证,但是chatnio用户名一栏似乎不支持在“用户名”一栏出现“@”符号,会提示“SMTP 发件参数未正确配置,已禁用邮箱验证”。
- 希望能去掉这一限制以更好的支持第三方smtp服务。(个人使用brevo,确认配置正确,在其他项目可以发送邮件)
用户名要去掉@后面的 只需要填smtp的username 发件人才要加@后面的
- 问题就是username是[email protected],含有@就提示“SMTP 发件参数未正确配置,已禁用邮箱验证“
- 例如我用的brave,sender为[email protected],在用户名处填service是无法通过brevo的验证的,会弹“请求失败 sent mail failed: 535 5.7.8 Authentication failed“
- 这是smtp的设置,在smtpserver测试时将“login“填入”用户名“框才可以发送成功,而在chatnio并不允许将“login“填入“用户名“,所以无法通过认证
- 因为登陆邮箱和发件邮箱并不同,所以区分了用户名和发件人。在one-api的smtp设置中,也区分了smtp账户和smtp发送者邮箱。
smtp server 和 port 填的没问题,用户名应该填你的 brevo 用户名,发件人填你的 login
https://github.com/Deeptrain-Community/chatnio/blob/main/utils/smtp.go#L33-L56
正常 SMTP 发件 用户名填入@后缀是无法工作的
- 您说的这样确实可以,但是这样的收件人端显示发件人是代发而不是[email protected]。
- 可否像独角数卡一样,添加更多自定义配置来实现?
- 感谢您的耐心回复和指导
我刚刚注册了一下 brevo,发现无法正常工作,即使通过去除用户名的@限制后mail.v2库也无法工作。
看样子和其他 SMTP 服务有区别,等我有空研究一下,看看如何修复,感谢反馈。
用户名要去掉@后面的 只需要填smtp的username 发件人才要加@后面的
测试使用mxroute的邮局(发件用户名使用的是邮箱地址)尝试使用 465\25\587 端口,均报错无法正常发送测试邮件
用户名要去掉@后面的 只需要填smtp的username 发件人才要加@后面的
测试使用mxroute的邮局(发件用户名使用的是邮箱地址)尝试使用 465\25\587 端口,均报错无法正常发送测试邮件
用户名去掉@就好了?
mxroute的邮局的发件用户名是邮箱地址,使用这套配置在其他项目中可以正常发信,但在ChatNio就报错了
Minghan Zhang @.***> 于2024年5月9日周四 09:35写道:
用户名要去掉@后面的 只需要填smtp的username 发件人才要加@后面的
测试使用mxroute的邮局(发件用户名使用的是邮箱地址)尝试使用 465\25\587 端口,均报错无法正常发送测试邮件
用户名去掉@就好了?
— Reply to this email directly, view it on GitHub https://github.com/Deeptrain-Community/chatnio/issues/174#issuecomment-2101769007, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHQDBK47LJYY4V2V5R3EQ63ZBLHELAVCNFSM6AAAAABGUIWZ5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBRG43DSMBQG4 . You are receiving this because you commented.Message ID: @.***>
当前推荐使用腾讯云 SES / QQ / Gmail 等 SMTP 服务商, mail.v2 库对这类特殊服务商支持不良好。
Greetings For @SHLE1 @emengweb ,
该问题已修复,同时依需要增加了部分功能。具体分析和其他相关信息可见我刚刚提交的 pr #213 。 目前该 pr 正在等待 merge ,您可以选择前往 https://github.com/Deeptrain-Community/chatnio/tree/Rakuyou_Dev 分支拉取最新代码或等待主分支合并。
Best Regards, Junhai Deng