Commit Graph

321 Commits

Author SHA1 Message Date
Abhinav Raut b04d9d6f8d Sign all avatar URLs in widget endpoints and WS broadcasts 2026-03-28 18:03:33 +05:30
Abhinav Raut 1d36ddde91 Make first name mandatory for live chat jwt 2026-03-28 13:46:23 +05:30
Abhinav Raut 4e0f781bd7 enrich exit only if not already set 2026-03-28 13:23:58 +05:30
Abhinav Raut 23e6a70844 Allow contacts with different external_user_ids to share email, add enrichment and remove email check from conversation matching 2026-03-28 12:29:44 +05:30
Abhinav Raut 14a7bf4435 Add widget.js minification step to build; subtle shadows. 2026-03-25 11:26:08 +05:30
Abhinav Raut c057560251 Sync prechat form labels with custom attributes; hide stale messages during chat load. 2026-03-25 11:16:30 +05:30
Abhinav Raut 395a4e80df Refactor ws updates to use direct json payloads instead of prop value pattern.
Add real-time agent availability status updates to widget.

Consolidate multiple WS broadcasts into single calls
2026-03-22 19:34:21 +05:30
Abhinav Raut 48175300ab Add rate limiting to public endpoints (auth, CSAT), fix rate limiter race condition and missing Content-Type header. Refactor rateLimitWidget into generic rateLimit middleware with config defaults. 2026-03-22 16:59:55 +05:30
Abhinav Raut a788553137 Use first unread message as subject for continuity emails, add ref number to continuity email subject.
- Continuity email layout fixes and improvments.
- Replace haikunator with email local part for visitor names, fallback to "Visitor"
- Add optional website_url config field for "go to chat" link in continuity email footer
- Remove unused / unncessary i18n keys.
2026-03-16 00:49:20 +05:30
Abhinav Raut b8e236713d Merge branch 'main' into feat/live-chat-channel 2026-03-15 21:09:21 +05:30
Abhinav Raut 678239027e Refactor incoming message flow, add visitor upgrade on email reply, rate-limit livechat conversations 2026-03-11 12:19:58 +05:30
Abhinav Raut eb0a7b437d Add page visit tracking to widget
- 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
2026-03-11 03:52:07 +05:30
Abhinav Raut 0b7c816407 Allow live chat widgets to detect lang from user browser and fallback to defaults set by admin.
New handler to return all available langs, remove hardcoded langs
2026-02-26 01:54:34 +05:30
Abhinav Raut 1ab78259ab Restrict message retries only to sender agent & failed messages 2026-02-24 23:59:05 +05:30
Abhinav Raut 4eb5dce12c Merge branch 'main' into feat/live-chat-channel 2026-02-22 15:13:36 +05:30
Abhinav Raut 81847c7f4e i18n: fix localization issues (#231)
Not backported to main due to extensive i18n refactoring changes in this branch.
2026-02-22 15:12:00 +05:30
Abhinav Raut 727213631c SSRF protection to webhooks
- New config webhook option to allow certain CIDR ranges in webhooks.
2026-02-16 02:40:05 +05:30
Abhinav Raut 7b7629d6fa Merge branch 'main' into feat/live-chat-channel 2026-02-11 00:27:59 +05:30
Abhinav Raut 9ad46cc9bd make plus addressing default in email inbox form 2026-01-29 00:05:15 +05:30
Abhinav Raut d0bad37464 feat: add support for toggling plus addressing for email inbox.
Fixes #233
2026-01-29 00:00:49 +05:30
Abhinav Raut c155fce93b feat: show contact offline / online status on sidebar
- mark contacts offline if not active for > 5 mins.
2026-01-26 03:28:34 +05:30
Abhinav Raut 70e6ebcc48 feat(widget): merge visitor to contact when new JWT is available i.e. when user logs into a an external system.
- Prevent file uploads on initial message, user send a message first to enable attachments.
- fix thumbs not loading with signature and expiry
2026-01-26 02:52:28 +05:30
Abhinav Raut f0e9266d28 more fixes to LC 2026-01-21 00:13:02 +05:30
Abhinav Raut 361fece378 fix: trim whitespace from inbox and settings fields
Fixes #223
2026-01-20 00:03:01 +05:30
Abhinav Raut 107f1adb0d fix issues with threading with widget messages
- fix: live chat email inbox not being initialized.
- make launcher logo take entire launcher space.
- New columns last_interaction_sender_id and last_message_sender_id to track who sent last message in conversation
2026-01-18 13:47:07 +05:30
Abhinav Raut e2a9a00217 Live chat: add admin toggle to open widget directly into previous conversation / a new conversation
- Improve greeting and introduction messages to support template variables for user names.
2026-01-17 18:22:40 +05:30
Abhinav Raut 08acb099a1 fix build 2026-01-14 16:09:22 +05:30
Abhinav Raut 2421b964b7 fix merge conflcits 2026-01-14 15:53:15 +05:30
Abhinav Raut 7958d7e212 Merge branch 'main' into feat/live-chat-channel 2026-01-14 00:33:51 +05:30
Abhinav Raut 1127d2967b add logo_url support for custom OIDC providers
- add microsoft option for providers
2026-01-11 17:18:19 +05:30
Abhinav Raut 54d3a47b0a set defaults page size and page paginated apis 2026-01-11 16:22:48 +05:30
Abhinav Raut 6b2930dce9 improve error logging in agent import process 2026-01-11 15:46:36 +05:30
Abhinav Raut c6f765d9a6 modernize util funcs 2026-01-11 15:37:33 +05:30
Abhinav Raut 173493a0ed handle panics in importer, translate messages and fix bugs 2026-01-09 03:26:22 +05:30
Abhinav Raut 18f5ff1868 Merge remote-tracking branch 'origin/main' into feat/bulk-agent-import 2026-01-09 01:32:59 +05:30
Abhinav Raut 91445d7dda Merge branch 'main' into feat-notifications 2026-01-09 01:06:34 +05:30
csr4422 58a976743f fix: refactor agent import with improved error handling 2026-01-07 12:10:54 +05:30
Abhinav Raut c8bfe36e2e feat: mark conversation as unread from context menu on conversation list 2026-01-07 11:56:51 +05:30
Abhinav Raut a8fee6d9db feat: notification dispatcher for handling in-app, WS, and email notifications centrally 2026-01-06 12:27:29 +05:30
Abhinav Raut 3c908178e1 set default expiry for fs signed urls to 1 hr.
- remove double media fetch from db
2026-01-05 15:57:43 +05:30
Abhinav Raut 099a410958 fix auth check for serving media files 2026-01-05 15:24:45 +05:30
Abhinav Raut 902158b1b8 feat: implement signed URL support for filesystem media access 2026-01-02 14:04:45 +05:30
Abhinav Raut 4bab16c21a feat: user app notification system with bell icon in the sidebar
- notifications for: mention', 'assignment', 'sla_warning', 'sla_breach'
- new table `user_notifications` and migrations for the same.
2026-01-02 01:46:47 +05:30
csr4422 294b3a9b48 feat: add agent import API routes 2026-01-01 21:41:30 +05:30
csr4422 e3141b1aa9 feat: add csv import handler and file processing 2026-01-01 21:35:48 +05:30
Abhinav Raut aac40f48b9 add type and private message filters to fetch messages api. 2026-01-01 19:41:51 +05:30
Abhinav Raut 1aa2d91432 feat: mentions for private notes
- mentioning an agents sends an email to the agent.
- mentioning a team sends an email to to the entire team.
2026-01-01 13:59:34 +05:30
Abhinav Raut 532cd7f563 feat(navigation): add pluralization for navigation items
feat: make data table item names clickable.

fix(conversation): focus reply box editor on conversation change

fix(conversation): focus editor on tab change in ReplyBoxContent

fix(conversation): update conversation list item to use router-link

fix(conversation): update message bubble to use router-link for author

fix(conversation): update last interaction fields on message insert

fix(conversation): add last interaction fields to conversation model

fix(conversation): update SQL queries to include last interaction fields

feat(migrations): add migration for last interaction fields in conversations

fix(schema): update schema to include last interaction fields in conversations
2025-12-31 12:34:04 +05:30
csr4422 88f1c92fa7 feat: add importer to App initialization 2025-12-29 10:26:24 +05:30
Abhinav Raut ddddf04fb6 feat: Shared views for agents and specific teams and admin pages to manage shared views.
- Log activity for password set and role permission changes.
- Fix agent permissions not changing when a role is modified / deleted.
2025-12-27 13:57:21 +05:30