diff --git a/bot/command.go b/bot/command.go index 710c0b2..61003df 100644 --- a/bot/command.go +++ b/bot/command.go @@ -82,7 +82,7 @@ func (b *Bot) initCommands() commandList { { key: roomOptionNoSend, description: fmt.Sprintf( - "Get or set `%s` of the room (`true` - enable email sending; `false` - disable email sending)", + "Get or set `%s` of the room (`true` - disable email sending; `false` - enable email sending)", roomOptionNoSend, ), sanitizer: utils.SanitizeBoolString, diff --git a/smtp/server.go b/smtp/server.go index bbb8024..dfab3db 100644 --- a/smtp/server.go +++ b/smtp/server.go @@ -51,8 +51,9 @@ func NewServer(cfg *Config) *Server { s.ReadTimeout = 10 * time.Second s.WriteTimeout = 10 * time.Second s.MaxMessageBytes = cfg.MaxSize * 1024 * 1024 - s.EnableREQUIRETLS = cfg.TLSRequired s.AllowInsecureAuth = !cfg.TLSRequired + s.EnableREQUIRETLS = cfg.TLSRequired + s.EnableSMTPUTF8 = true if log.GetLevel() == "DEBUG" || log.GetLevel() == "TRACE" { s.Debug = os.Stdout } diff --git a/utils/email.go b/utils/email.go index 187594e..88fdb0f 100644 --- a/utils/email.go +++ b/utils/email.go @@ -125,6 +125,10 @@ func (e *Email) Compose(privkey string) string { var data strings.Builder domain := strings.SplitN(e.From, "@", 2)[1] + + data.WriteString("Content-Type: text/plain; charset=\"UTF-8\"") + data.WriteString("\r\n") + data.WriteString("From: ") data.WriteString(e.From) data.WriteString("\r\n")