save metadata even if one of the recipients failed
This commit is contained in:
@@ -194,27 +194,22 @@ func (b *Bot) SendEmailReply(ctx context.Context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var queued bool
|
var queued bool
|
||||||
var hasErr bool
|
|
||||||
recipients := meta.Recipients
|
recipients := meta.Recipients
|
||||||
for _, to := range recipients {
|
for _, to := range recipients {
|
||||||
queued, err = b.Sendmail(evt.ID, meta.From, to, data)
|
queued, err = b.Sendmail(evt.ID, meta.From, to, data)
|
||||||
if queued {
|
if queued {
|
||||||
b.log.Error("cannot send email: %v", err)
|
b.log.Error("cannot send email: %v", err)
|
||||||
b.saveSentMetadata(ctx, queued, meta.ThreadID, recipients, eml, cfg)
|
b.saveSentMetadata(ctx, queued, meta.ThreadID, recipients, eml, cfg)
|
||||||
hasErr = true
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
b.Error(ctx, evt.RoomID, "cannot send email: %v", err)
|
b.Error(ctx, evt.RoomID, "cannot send email: %v", err)
|
||||||
hasErr = true
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !hasErr {
|
b.saveSentMetadata(ctx, queued, meta.ThreadID, recipients, eml, cfg)
|
||||||
b.saveSentMetadata(ctx, queued, meta.ThreadID, recipients, eml, cfg)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
type parentEmail struct {
|
type parentEmail struct {
|
||||||
|
|||||||
Reference in New Issue
Block a user