Commit Graph

310 Commits

Author SHA1 Message Date
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 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
Abhinav Raut 064a73ba4b feat: add conversations:read_team_all permission to allow agents to see conversations assigned to their team, regardless of whether an agent is assigned or not.
- Allow all SLAs to be fetched without permission checks.

Ref #203
2025-12-26 19:57:45 +05:30
Abhinav Raut c62294aaef feat: Make convo panels resizable
- add new report/overview metrics
2025-12-26 04:52:30 +05:30
Abhinav Raut 2468b91c8e translate oauth changes in email inbox form
- log warnings when sample encryption key is used for libredesk and when encrytion key is not 32 chars
2025-12-26 04:10:04 +05:30
Abhinav Raut f6d8e40148 validate reconncted inbox email addr with the inbox being updated 2025-12-24 16:08:25 +05:30
Abhinav Raut 895a74b3b8 encrypt ai provider keys
- add flow types to oauth inboxes to prevent accidental updates
2025-12-24 16:08:25 +05:30
Abhinav Raut 22af66c44d Feat: match incoming messages to conversations using reference number in the subject.
refactor: update GetConversation method to include reference number parameter
2025-12-24 16:08:25 +05:30
Abhinav Raut e4f260e3f4 fixes for msft email provider 2025-12-24 16:08:25 +05:30
Abhinav Raut 44554118f2 fix do dot encrypt client id
remove superfluous arg
set default imap scan interval to 5 mins
2025-12-24 16:08:25 +05:30
Abhinav Raut 94202e22bd refactor: update OAuth flow to use Redis for state management instead of storing it in session
- Replace Google logo with SVG
2025-12-24 16:08:25 +05:30
Abhinav Raut 0a70204731 refactor and clean up remove uncessary token refresh on init of email inbox 2025-12-24 16:08:25 +05:30
Abhinav Raut 2a238a719e -fix email notifications not working.
- reload app settings when notification settings are changed to trigger admin banner prompting user to restart app
- remove unncessary dummy password check before retaining passwords as an empty password check is enough.
2025-12-24 16:08:25 +05:30