mirror of
https://github.com/abhinavxd/libredesk.git
synced 2026-09-22 10:33:24 +00:00
Fix continuity email tracking to not reset contact_last_seen_at and exclude continuity messages from unread count
This commit is contained in:
@@ -268,8 +268,7 @@ func (m *Manager) sendContinuityEmail(conv models.ContinuityConversation, maxMes
|
||||
}
|
||||
|
||||
// Mark in DB that continuity email was sent now
|
||||
lastMessageTime := unreadMessages[len(unreadMessages)-1].CreatedAt
|
||||
if _, err := m.q.UpdateContinuityEmailTracking.Exec(conv.ID, emailSubject, lastMessageTime); err != nil {
|
||||
if _, err := m.q.UpdateContinuityEmailTracking.Exec(conv.ID, emailSubject); err != nil {
|
||||
m.lo.Error("error updating continuity email tracking", "conversation_uuid", conv.UUID, "error", err)
|
||||
return fmt.Errorf("updating continuity email tracking: %w", err)
|
||||
}
|
||||
|
||||
@@ -746,6 +746,7 @@ WHERE i.channel = 'livechat'
|
||||
AND cm.created_at > c.contact_last_seen_at
|
||||
AND cm.type = 'outgoing'
|
||||
AND cm.private = false
|
||||
AND (cm.meta IS NULL OR NOT COALESCE((cm.meta->>'continuity_email')::boolean, false))
|
||||
)
|
||||
AND u.email > ''
|
||||
AND (c.last_continuity_email_sent_at IS NULL
|
||||
@@ -787,8 +788,7 @@ WHERE id = ANY($1::int[]);
|
||||
|
||||
-- name: update-continuity-email-tracking
|
||||
UPDATE conversations
|
||||
SET contact_last_seen_at = $3,
|
||||
last_continuity_email_sent_at = NOW(),
|
||||
SET last_continuity_email_sent_at = NOW(),
|
||||
meta = jsonb_set(COALESCE(meta, '{}'::jsonb), '{continuity_email_subject}', to_jsonb($2::text))
|
||||
WHERE id = $1;
|
||||
-- name: upsert-conversation-draft
|
||||
|
||||
Reference in New Issue
Block a user