Abhinav Raut
02f7c19082
Move trusted domaisn check to middleware
2026-04-04 22:21:34 +05:30
Abhinav Raut
6abb6ad017
Move continuity config and intervals to live chat inbox form from toml.
...
- 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
2026-04-04 21:35:04 +05:30
Abhinav Raut
b34e581616
Skip redundant contact updates when JWT values unchanged
2026-04-04 18:42:44 +05:30
Abhinav Raut
73ea8741a2
Fix dev backend failing to start without the frontend being built.
2026-04-04 18:40:52 +05:30
Abhinav Raut
5a06a90152
Revert minification step for widget.js in production build process as the widget js is already very small and is not needed now
2026-04-04 18:36:36 +05:30
Abhinav Raut
0a9e57dcc5
Revamp live chat widget JS API, use inbox UUID, non-blocking installation
...
Update installation instructions for clarity
Remove unncessary convo custom attribs being passed in JWT tokens for live chat
2026-04-04 18:11:54 +05:30
Abhinav Raut
000fd83b30
Add uuid column to inboxes table to use as widget public identifiers
...
Auto focus on form inputs in widget
Use defer widget in widget installation script
2026-04-03 02:34:07 +05:30
Abhinav Raut
1118a6f465
Fix duplicate webhook events for conversations created via api
2026-04-02 15:10:14 +05:30
Abhinav Raut
9ce5f60023
Fix widget business hours showing wrong time due to missing UTC offset
2026-04-02 01:45:47 +05:30
Abhinav Raut
d0a3527269
Sync contact name/email from JWT on every widget request
2026-04-01 17:15:22 +05:30
Abhinav Raut
9610c15603
Simplify notification toggle check
2026-03-30 18:51:58 +05:30
Abhinav Raut
13db8d2843
Fix command palette macros not working due to previous variable rename causing issues.
...
Improve sidebar navigation to retain open conversation
Fix notification when disabled app still tries sending emails.
2026-03-30 18:51:23 +05:30
Abhinav Raut
b1bef238cf
Feat: context links, context links allow admins to set urls to external system from sidebar with encrypted payload in query parameters.
2026-03-30 16:00:37 +05:30
Abhinav Raut
7d8c2d9fa3
Check conversation ownership before broadcasting typing event on conversations
2026-03-30 02:23:07 +05:30
Abhinav Raut
9ae8100e8a
Use widget upload API response directly instead of refetchign entire conversation
...
Return ChatMessage format in upload api
Fix scroll on content replace
2026-03-30 02:04:23 +05:30
Abhinav Raut
5f6ca63dc4
Refactor use already fetched inbox config and set it in ctx for widget handlers
2026-03-30 01:22:43 +05:30
Abhinav Raut
114656e64e
required jwt fields middleware for user
2026-03-30 01:10:02 +05:30
Abhinav Raut
5590ae6ae3
Create contact from JWT in widget middleware for visitor merge, fix message input focus and pending cleanup
2026-03-30 00:28:33 +05:30
Abhinav Raut
fb3ab68ef6
Sign avatar URLs in widget WS broadcasts, add CORS for launcher settings
2026-03-29 19:08:09 +05:30
Abhinav Raut
2d64cfcca3
Skip conversation access check for unattached media
2026-03-29 17:18:11 +05:30
Abhinav Raut
789a58ed0c
Add echo_id for pending message matching, show ext_id in contact search, minor UI polish
2026-03-29 13:32:38 +05:30
Abhinav Raut
eb94f2b06b
Refactor widget WS: fix concurrent writes
...
Update merge visitor to contact query to include other tables
Update default for continuity email config
2026-03-28 21:19:11 +05:30
Abhinav Raut
52995d1cfb
remove cache control headers for widget js file
2026-03-28 20:19:35 +05:30
Abhinav Raut
565732c5be
add rate limit to show csat page
2026-03-28 20:03:27 +05:30
Abhinav Raut
c8b717739c
Add isNewConversation param to CreateContactMessage, cap page size to 500
2026-03-28 19:36:26 +05:30
Abhinav Raut
2b645fa4e8
Security fixes: rate-limit widget endpoints, remove JWT from logs, harden middleware checks
...
Increase max page size to 500
Allow large out of bound page sizes by overriding to maximum set.
Reset websocket reconnect attempts when widget is back online
2026-03-28 19:27:41 +05:30
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