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.
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
Yahoo Mail wraps replies in <div class="yahoo_quoted">, which the quoted
text handling added in bae4c23b did not detect. Add the marker to the JS
detector and an attribute-suffix selector to .hide-quoted-text so the
"Show quoted text" toggle appears and the quote is hidden by default.
Add expand button for long message bubbles, group consecutive same-sender
messages within a minute, and fix the conversation list highlight contrast
(Fixes#321). Also bumps vue-letter to 0.2.1 to allow CSS transforms in email content
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.
- Introduced a new SwitchField component for better UI consistency.
- Updated WebSocket client to remove unnecessary token and inbox_id from ping and typing messages.
- Added session duration configuration to the livechat channel settings in the backend.
- Refactor widget.js.
- Fix possible race conditions in inbox reload logic.
- Reload only the updated inbox when an inbox is updated / created not all.
- Retain last inbox while navigatin back from admin -> inbox
- fix duplicate initialization guard
- notification bell for agents
- Refactor and clean up dead code
- Fixes to pre chat form
- Add new column country to users table
- Update ratelimit pkg to be generic
Show a warning in sidebar when a conversation with a visitor is opened.
Move string.js utils to shared-ui utils
Modify user fetch queries to allow optional filter by multiple user types not just one.
Fix capitalizaiton for live chat en translations