summaryrefslogtreecommitdiff
path: root/internal/mailer/mailer.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--internal/mailer/mailer.go5
1 files changed, 3 insertions, 2 deletions
diff --git a/internal/mailer/mailer.go b/internal/mailer/mailer.go
index 4ec11ac..ed6b124 100644
--- a/internal/mailer/mailer.go
+++ b/internal/mailer/mailer.go
@@ -102,8 +102,9 @@ func (s *Sender) Send(ctx context.Context, message Message) error {
}
body := strings.ReplaceAll(message.Body, "\r\n", "\n")
body = strings.ReplaceAll(body, "\n", "\r\n")
- _, writeErr := fmt.Fprintf(w, "From: %s\r\nTo: %s\r\nSubject: %s\r\nMIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: 8bit\r\n\r\n%s\r\n",
- from, cleanHeader(message.Recipient), cleanHeader(message.Subject), body)
+ messageID := cleanHeader(message.ID) + "@aigw.local"
+ _, writeErr := fmt.Fprintf(w, "From: %s\r\nTo: %s\r\nSubject: %s\r\nMessage-ID: <%s>\r\nX-AIGW-Message-ID: %s\r\nMIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: 8bit\r\n\r\n%s\r\n",
+ from, cleanHeader(message.Recipient), cleanHeader(message.Subject), messageID, cleanHeader(message.ID), body)
closeErr := w.Close()
if writeErr != nil {
return fmt.Errorf("write SMTP body: %w", writeErr)