fix: reserve seq for p2p system messages

This commit is contained in:
richjohnrambo
2026-09-24 10:03:27 +08:00
parent a3df9d269c
commit 9893452817
2 changed files with 22 additions and 12 deletions
+7 -1
View File
@@ -10726,11 +10726,17 @@ func publishIMConversationSystemNotice(tenantID types.TenantID, topic, msgType,
},
Content: content,
}
_, err = store.Messages.Save(tenantID, msg, nil, false)
saved, err := saveMessageMaybeKafka(context.Background(), tenantID, msg, nil, false)
if err != nil && !errors.Is(err, types.ErrDuplicate) {
logs.Warn.Printf("im system message: failed to save %s for topic %s: %v", template, topic, err)
return
}
if saved != nil && saved.SeqId > 0 {
msg.SeqId = saved.SeqId
}
if saved != nil && saved.Duplicate {
return
}
broadcastIMConversationSystemMessage(tenantID, msg, now)
sendPushForStoredGroupMessage(tenantID, msg)
}