mirror of
https://github.com/coaidev/coai.git
synced 2025-05-20 05:20:15 +09:00
Fix SMTP compatibility issues to support office365 provider
Add support for multiple SMTP providers in `utils/smtp.go`. * **Provider-specific handling**: - Add specific handling for Outlook, QQ, Office365, Resend, and Tencent SMTP policies. - Use `switch` statement to set `TLSConfig` based on the SMTP host.
This commit is contained in:
parent
928319acc0
commit
7a467e6e7f
@ -68,12 +68,33 @@ func (s *SmtpPoster) SendMail(to string, subject string, body string) error {
|
||||
dialer.SSL = true
|
||||
}
|
||||
|
||||
// outlook starttls policy
|
||||
if strings.Contains(s.Host, "outlook") {
|
||||
// Specific handling for different providers
|
||||
switch {
|
||||
case strings.Contains(s.Host, "outlook"):
|
||||
dialer.TLSConfig = &tls.Config{
|
||||
InsecureSkipVerify: false,
|
||||
ServerName: s.Host,
|
||||
}
|
||||
case strings.Contains(s.Host, "qq"):
|
||||
dialer.TLSConfig = &tls.Config{
|
||||
InsecureSkipVerify: true,
|
||||
ServerName: s.Host,
|
||||
}
|
||||
case strings.Contains(s.Host, "office365"):
|
||||
dialer.TLSConfig = &tls.Config{
|
||||
InsecureSkipVerify: false,
|
||||
ServerName: s.Host,
|
||||
}
|
||||
case strings.Contains(s.Host, "resend"):
|
||||
dialer.TLSConfig = &tls.Config{
|
||||
InsecureSkipVerify: true,
|
||||
ServerName: s.Host,
|
||||
}
|
||||
case strings.Contains(s.Host, "tencent"):
|
||||
dialer.TLSConfig = &tls.Config{
|
||||
InsecureSkipVerify: true,
|
||||
ServerName: s.Host,
|
||||
}
|
||||
}
|
||||
|
||||
if err := dialer.DialAndSend(message); err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user