Abhinav Raut
0654e3bd2f
fix: skip empty incoming attachments; assign team/agent before running post message hooks this allows automations to see the conversations assigned agent & team.
2026-05-27 00:24:27 +05:30
Abhinav Raut
0a0500f29a
refactor: fold widget availability broadcast into BroadcastAgentAvailability
2026-05-26 00:21:15 +05:30
Abhinav Raut
2874e78e97
fix: mark-unread no-op when latest message is a continuity email
2026-05-25 01:59:56 +05:30
Abhinav Raut
183c83b5e6
fix: prod crash from private methods, plus PR #336 review fixes
2026-05-22 21:29:57 +05:30
Abhinav Raut
a502039e59
perf: WS push for conv list, store/cache cleanups, ad-hoc UI polish
...
Convs and messages now push the full list-row payload to perm-authorized agents on create/assign/message, so livechat returning customers bubble up instantly without waiting for the timer refresh. Background list refresh bumped 30s -> 60s as a drift safety net.
2026-05-22 20:47:36 +05:30
Abhinav Raut
edc82e9e55
refactor: drop Casbin, centralize agent cache invalidation, dedupe pending SLAs
2026-05-21 21:24:42 +05:30
Abhinav Raut
33572efa04
fix: address WS PR review - stale cache retry, livechat buffer, last_active TOCTOU
2026-05-21 00:46:43 +05:30
Abhinav Raut
7a8efcde16
fix: widget ping interval, last_active flush, ws ping error, slim new_message payload
2026-05-21 00:13:33 +05:30
Abhinav Raut
43ebed1c3a
WS rewrite: per-client subscriptions and perf improvements
...
Targets broadcasts via per-tab list and open subs (validated at subscribe time)
instead of broadcasting message uuid to all agents. Adds frontend list typing, throttled sound,
and many perf improvements to reduce cpu memory & database queries.
Other fixes: Enforce message-to-conversation binding in handleGetMessage
2026-05-20 23:42:07 +05:30
Abhinav Raut
4e13e72cc3
fix: harden media + conversation queries against empty-uuid casts
2026-05-19 14:13:56 +05:30
Abhinav Raut
5f0fed695f
fix: make CSAT template insert idempotent in v2.0.0 migration
2026-05-19 11:03:48 +05:30
Abhinav Raut
b15c776142
update migration to version 2.3.0
2026-05-18 18:56:31 +05:30
Abhinav Raut
4c63152c5b
Rename migration file v2.2.2 to v2.3.0
2026-05-18 17:30:29 +05:30
Abhinav Raut
c85cb90bef
Merge pull request #317 from jleroy/i18n/update-2026-05-15
...
Update translations [2026-05-15] and add regions names in languages filenames
2026-05-18 15:24:43 +05:30
Jonathan Leroy
06d1c395b0
Migration (v2.2.2): Remove unused "fmt" import
2026-05-18 05:36:50 +02:00
Jonathan Leroy
fdf897cc95
Migration (v2.2.2): Use parameterized queries to prevent SQL injection patterns
2026-05-18 03:05:47 +02:00
Abhinav Raut
7b1256a249
bump frontend deps and tighten image upload validation
2026-05-18 01:51:13 +05:30
Abhinav Raut
66d8c3580c
fall back to image preview for inline-image-only messages
2026-05-17 17:35:31 +05:30
Abhinav Raut
b014d0d9a5
resolve inline image cids on send-message response, revert f841a81f
2026-05-15 17:39:04 +05:30
Abhinav Raut
f841a81f1e
skip cid rewrite for private notes
2026-05-15 16:48:15 +05:30
Abhinav Raut
b5000c7bc4
skip auto-reply and csat send when contact has no email
2026-05-15 16:16:32 +05:30
Abhinav Raut
f6a4ad537f
fix auto-replies and csat fanning out to last message's cc list
...
Both now send to the contact only and carry meta.is_automated so the
reply-box prefill skips them and inherits CCs from the last human message.
2026-05-15 16:16:32 +05:30
Abhinav Raut
c1f80d93cb
Fix: persist drafts with inline-only images
...
Increase orphan media GC duration to 7 days as some drafts might need them
2026-05-15 16:15:40 +05:30
Jonathan Leroy
41b5a7d7ef
Fix varible assignment
2026-05-15 09:38:49 +02:00
Jonathan Leroy
e78f68221d
Fix missing import
2026-05-15 09:28:52 +02:00
Jonathan Leroy
e0f362c14e
Migrate DB to the new locale format
2026-05-15 09:21:59 +02:00
Abhinav Raut
b6dd5f08dc
Merge pull request #316 from abhinavxd/fix/key-rotation
...
Don't fatal on encryption_key rotation
2026-05-15 10:44:23 +05:30
Abhinav Raut
3e1c6471ea
Scope encryption_key rotation fix to boot path
2026-05-15 10:36:13 +05:30
Abhinav Raut
0abd96fb70
Fix quoted image resolution
2026-05-15 02:47:30 +05:30
Abhinav Raut
7c949e653c
Don't fatal on encryption_key rotation
2026-05-15 02:39:07 +05:30
Abhinav Raut
793c3d2f3f
Fix quoted-reply inline images returning no signed URL
2026-05-15 00:44:12 +05:30
Abhinav Raut
dbf4d3a0a6
Fix inline image media not linking on S3 presigned URLs
...
Also simplify the inline-image helpers: one <img src> matcher plus stringutil.ExtractUUID, instead of two combined regexes with offset math.
2026-05-14 22:36:11 +05:30
Abhinav Raut
534771e94e
Save inline image cid refs instead of urls in DB to survive url expiry
2026-05-14 17:07:11 +05:30
Abhinav Raut
0be4a48b9c
Generate thumbnails for extensionless images with magic byte detection
2026-05-14 17:06:35 +05:30
Abhinav Raut
b72dad7cc7
Swap lightbox to lib, force-download via query param, link inline media on insert
2026-05-14 17:06:35 +05:30
Abhinav Raut
4ab1885e5e
Harden inline image embed
2026-05-14 17:06:35 +05:30
Abhinav Raut
35bdf02002
Drop replaceCIDInContent, keep PR scoped to image resize UX
2026-05-14 17:06:35 +05:30
Abhinav Raut
acda125ad6
Refactor inline images PR for project conventions
2026-05-14 17:06:35 +05:30
Matthew Campbell
b96a9c599a
Inline images, lightbox, and attachment UX
...
Paste/drop to upload images in the editor with drag-resize handles and a
size toolbar. Image attachments open in a lightbox with zoom/pan and
keyboard navigation. File attachments get type-specific icons and a PDF
preview pane.
Outgoing email inlines images as multipart/related CID parts so
recipients see them even if our /uploads/ URLs later expire or the
server is unreachable. Orphan uploads (pasted into the reply before the
message is persisted) are embedded too; cross-conversation references
are still rejected.
Also tightens replaceCIDInContent HTML safety and scopes the uploads
URL regex to <img src> attributes only.
2026-05-14 17:06:35 +05:30
Abhinav Raut
ab05d6abad
fix ws client leak when conn dies between ping writes
2026-05-12 11:43:57 +05:30
Abhinav Raut
feb23fae8a
fix new inbox create dropping enabled/csat_enabled/secret/linked_email_inbox_id
2026-04-25 13:24:43 +05:30
Abhinav Raut
ffa5a22f3f
fix s3 avatar_url storing bucket path instead of /uploads/<uuid>
...
Trim spaces around reply to config
2026-04-24 20:12:04 +05:30
Abhinav Raut
dce33238e2
exclude inbox reply_to from reply recipients to prevent self-loop
2026-04-24 19:14:55 +05:30
Abhinav Raut
3d2da2a11f
add reply_to on email inboxes for routing replies off the SMTP From domain
2026-04-24 18:39:16 +05:30
Abhinav Raut
38c14808be
fix view greater/less than date filter including boundary-day rows
2026-04-23 15:28:34 +05:30
Abhinav Raut
467a62b091
fix snoozed_until leak causing resolved/closed conversations to reopen
2026-04-23 11:36:03 +05:30
Abhinav Raut
dd6c8f93a0
add conversation.subject_ref_format config for customizing outgoing email subject marker
2026-04-23 03:11:36 +05:30
Abhinav Raut
ed4bac6139
return error on default status update instead of silent no-op
2026-04-21 21:48:13 +05:30
Abhinav Raut
1012949539
Merge remote-tracking branch 'origin/main' into category-statuses
2026-04-21 21:28:07 +05:30
Abhinav Raut
2d3958fe49
Merge pull request #294 from abhinavxd/more-view-filters
...
More fields in view filters.
2026-04-21 21:18:38 +05:30