Files

35 lines
600 B
Go

package email
import (
"crypto/tls"
"net/smtp"
"github.com/jordan-wright/email"
)
func (s Service) Send(m Mail) (err error) {
e := email.NewEmail()
e.To = m.To
e.Cc = m.Cc
e.Bcc = m.Bcc
e.From = s.from
e.Subject = m.Subject
e.Text = []byte(m.Body)
for _, a := range m.Attachments {
e.Attach(a.Content, a.Name, a.MimeType)
}
err = e.SendWithTLS(s.cfg.SMTP.Host+":"+s.cfg.SMTP.Port, smtp.PlainAuth(
s.cfg.SMTP.User,
s.cfg.SMTP.User,
s.cfg.SMTP.Password,
s.cfg.SMTP.Host,
), &tls.Config{
ServerName: s.cfg.SMTP.Host,
})
// err = s.pool.Send(e, time.Second*5)
return
}