Commit Graph

54 Commits

Author SHA1 Message Date
Abhinav Raut 67e1230485 feat: agent availability status
New columns in users table to store user availability status.

Websocket pings sets the last active at timestamp, once user stops sending pings (on disconnect) after 5 minutes the user availalbility status changes to offline.

Detects auto away by checking for mouse, keyboard events and sets user status to away.

User can also set their status to away manually from the sidebar.

Migrations for v0.3.0

Minor visual fixes.

Bump version in package.json
2025-02-26 04:34:30 +05:30
Abhinav Raut d2a79d9a10 feat: store last message sender in conversation as this will be used to show the Reply icon in the conversations list.
- Introduces new column `last_message_sender` in conversations table.
- Changes to propogate this new column in websocket updates.
2025-02-21 21:40:57 +05:30
Abhinav Raut bc3b458d2c feat: message activity inconverstions when a new tag is added. 2025-02-07 03:48:54 +05:30
Abhinav Raut c5cf62573e fix: overview report sql 2025-02-06 03:04:18 +05:30
Abhinav Raut 9920448ac0 fix[sql]: move model_type first in JOIN for better index usage - (model_type, model_id) 2025-02-04 02:24:41 +05:30
Abhinav Raut 37b3c4abcc feat: adds waiting since in API responses and structs.
chore: rename senderTypeUser to senderTypeAgent to keep naming consistent.
2025-02-04 00:08:51 +05:30
Abhinav Raut cfe15ba275 feat: adds waiting_since column to conversations, start saving waiting_since on agent and contact reply.
- fix: waiting since sort order, use the new `waiting_since` column.
2025-02-03 23:36:38 +05:30
Abhinav Raut d3c2cc2527 feat: add CSAT sending functionality and improve error handling in templates
feat: automation action to send CSAT.
- minor refactors.
2025-02-02 21:03:09 +05:30
Abhinav Raut d291c3f4b9 feat: conversation reference sequence numbers with optional prefix, adds a postgres function that takes optional prefix and combines the sequence number with it. e.g. TIK100 where TIK is the reference is the prefix and 100 is the sequence number.
- feat: start conversation sequence number from 100.
- fix: enforce consistent ON DELETE behavior across schema relationships.
- fix: prevent application of same SLA to a conversation when assigned team changes.
- fix: Automation apply SLA action use assigned team's working hrs and timezone first and then fallback to workspace timezone and working hours.
- frontend fixes
2025-01-29 00:49:36 +05:30
Abhinav Raut 96564595d7 feat: previous conversations in conversation sidebar
- UI improvements in Conversation sidebar.
2025-01-25 18:25:14 +05:30
Abhinav Raut 140dae305c feat: max active conversation auto assignement limits to agents 2025-01-25 16:40:11 +05:30
Abhinav Raut cc6b16162d feat: re-open closed, resolved and snoozed conversations. 2025-01-25 05:01:11 +05:30
Abhinav Raut 52e401c601 feat: email cc and bcc in conversation replies
- feat: adds cc and bcc inputs in conversation text editor.
- feat: mask conversation id in api responses.
- customize shadnc dialog to hide close button & cross icon.
2025-01-25 03:47:17 +05:30
Abhinav Raut 3c71ab35ff Feat: Add SLAs per team
- Feat: Provide the ability to change SLAs for conversations; this will start a new deadline calculation from the time the SLA is set.
2025-01-24 04:34:51 +05:30
Abhinav Raut 8ded2692a3 feat: ability to unassign converstions, new uassigned dropdown options in conversations sidebar for teams and users. 2025-01-23 01:51:22 +05:30
Abhinav Raut 16b6ad96ea refactor[backend]: pick worker counts and intervals from config. 2025-01-20 02:13:44 +05:30
Abhinav Raut 0c01b53b09 feat(conversations): add trigram index for searching ref numbers
feat(messages): add trigram index for text content search
- feat: UI animations for conversation and messages list.
- Simplify websocket updates.
2025-01-19 23:10:53 +05:30
Abhinav Raut 87c14aa15d feat: Macros, macros not completely replace canned responses as they do the same job as canned repsonse.
- tiptap editor fixes for hardlines.
- set app font to jakarta, fix shadcn components having a different font.
- UI improvements on /admin
- UI improvements on inbox tab.
2025-01-17 04:57:01 +05:30
Abhinav Raut 92b614ddf6 feat[automation]: ability to drag and drop automation rule and set their execution order
- feat[automation]: execution mode for automations to execute the first matching rule or run all.
- Refactor automations to use fields, values, operator and select options from @/consts @/composables
- Refactor view filters to use the pick fields, values, operator, select options from @/consts @/composables
- feat: Move from yarn to pnpm!
- feat: Custom component ComboBox, replaces convo sidebar inputs with  combo
box.
- feat: initialize stores on app load to avoid multiple API calls by storing data in Pinia.
- change app fontm trying diff fonts.
- Keep side bar menu items by default open in inboxes .
2025-01-12 06:20:45 +05:30
Abhinav Raut 98537825e9 feat: AI clean up of agent responses, adds new ai package
- feat: full screen tiptap editor, esentially two editors that attempt to keep their state in sync.
- moves tiptap editor menu bar to to show up as a bubble once text is selected.
- Layout fixes and improvements.
- Improves /reports/overview charts and cards.
2025-01-09 05:01:33 +05:30
Abhinav Raut d8e29b569f feat: conversation snooze
feat: command menu on press ctrl + k
feat: CSAT email when a conversation is marked resolved.
feat(AI)  agent message rewriting with OpenAI prompts
2025-01-08 06:34:28 +05:30
Abhinav Raut 7f4f8ecf66 fix[frontend]: sidebar active state
- replace conversation sidebar with shadcn sidebar
- refactor: rename and simplify permissions for better clarity and usability
- WIP - Snoozing of conversations and UI.
2025-01-07 04:23:27 +05:30
Abhinav Raut caf8e7d34d WIP: MVP with shadcn sidebar
- csat
- SLA
- email notification templates
2025-01-06 02:39:44 +05:30
Abhinav Raut 48e89dc4b9 feat: hot reload package configs on change, no binary restart needed
- feat: soft deletion for users, inboxes, teams, and tags
- Rename tables and queries.
2024-11-13 01:47:16 +05:30
Abhinav Raut 4f4d79409c fix: pagination, adds total pages count and total rows count to results. 2024-11-03 01:35:16 +05:30
Abhinav Raut ed314eb1a5 feat: reset password flow
- feat: notification emails including - welcome email, assigned conversation email, reset password email.
- feat: adds outer app component which does not have a navbar
- feat: improve email templating, adds contact and conversations fields to email template
- fix: evaluator - ensure "contains" checks evaluate individual tokens in the string rather than the entire string.
- feat: logo URL for the app in general settings.
- General fixes and refactors.
- fix: hide trailing prose mirror line breaks.
2024-11-03 00:40:51 +05:30
Abhinav Raut f1b4007d7d fix: email channel content not being rendered in template
- fix: resolved_at, closed_at timestamps getting cleared.
- feat: generic code editor for Email templates
- feat: Quill editor for canned responses
- Refactor: to reuse forms across /admin/conversations components
- Update sample toml remove unused key.
- Fix: multiple system user pass prompts when setting up for the first time
- Remove unused file session.go
- Fix: Inline images showing up in reply box as an attachment
- Update vite config to proxy requests to `/uploads`
2024-10-24 19:19:01 +05:30
Abhinav Raut ee7be54c0d fix: hide passwords in API response
- Minor refactors.
- Fixes bugs in SelectTag component.
- Update vite.
2024-10-23 05:25:10 +05:30
Abhinav Raut b1975d6484 feat: graceful shutdown
- feat: sets inter as the app font
- feat: update colour theme
- remove unncesary redirects after form is saved
- feat: addsconv  reference number in information accordion
- feat: adds reference number filter to conversation list
- feat: adds title for router components
- chore: remove unused uuid columns from tables
2024-10-22 02:52:36 +05:30
Abhinav Raut 2b25ce32b6 feat: adds nonce check for oidc token exchange
- feat: adds filters support on conversations list
- refactor middlewares.go
- Adds new paginate.go for generating filtered paginated SQL queries this removes sql generation code from the conversations package.
- rename some components
- removes hardcoded `/uploads/`
2024-10-17 04:21:22 +05:30
Abhinav Raut 98df9efd63 feat: adds dropdown to automation form fields
- feat: adds csrf token check
- feat: adds conversation sub and unsub for WS updates.
- Clean up and remove unncessary code
- refactor and simplify auth middlewares
- fix: automation rules
- Update schema.sql
2024-10-14 01:50:08 +05:30
Abhinav Raut 7e15995048 fix: file uploads with same file names replacing previous files, switches to uuids for stored filenames.
- minor refactor and fixes.
2024-10-10 02:59:00 +05:30
Abhinav Raut 844dbf1e9d fix: auth
- fix: null attachments in get message api.
2024-10-09 04:42:15 +05:30
Abhinav Raut 671b2371b5 feat: attachment download / view button on preview
- adds /compact apis for fetching teams and users
- adds form field to allow admin to set user password.
- fix: inline images for incoming email.
- save content id & disposition for each media.
- Update to schema.sql
2024-10-09 03:50:53 +05:30
Abhinav Raut 4f9118d675 feat: new install & set-system-user-password flags for setting up DB schema and setting system user password
- fixes issues in auth redirect to login, by making simple session cookie auto create = true.
- fixes issues with conversation tab filters WS subscription.
- fixes nulls returned for empty team list in handlers
- fixes logout btn not working.
- fixes charts error when there's no data returned from the API.
- Updates schema.sql
2024-10-07 04:26:10 +05:30
Abhinav Raut 5d2d227f24 clean up dashboard. 2024-09-29 01:49:10 +05:30
Abhinav Raut 0e84fac099 feat: ACL and ABAC
- Simplify ws package.
2024-09-19 04:17:03 +05:30
Abhinav Raut 7056ed04db wip: canned responses admin section. 2024-08-26 01:35:21 +05:30
Abhinav Raut d647d88502 feat: get statuses / priorities from their respective tables
- adds schema.sql
- format entire codebase
2024-08-25 18:29:49 +05:30
Abhinav Raut 06db29f7f3 refactor. 2024-08-11 03:52:05 +05:30
Abhinav Raut 4c52af8f62 feat: dashboard. 2024-08-02 04:50:47 +05:30
Abhinav Raut ead54665fb wip: oidc 2024-07-31 04:02:34 +05:30
Abhinav Raut 3d6d513ba9 more commits. 2024-07-29 04:03:19 +05:30
Abhinav Raut 9719073f70 kill message pkg. 2024-07-29 03:12:52 +05:30
Abhinav Raut f6bb48f08d wip: workflows. 2024-07-15 03:39:48 +05:30
Abhinav Raut f86077f944 refactor. 2024-07-15 02:55:27 +05:30
Abhinav Raut e1c32afcf2 more. 2024-07-05 02:54:57 +05:30
Abhinav Raut d0326cfedd more commits. 2024-07-02 03:10:00 +05:30
Abhinav Raut d7fb9be211 some more commits? 2024-07-01 03:08:45 +05:30
Abhinav Raut 6d027c92ab refactor email inbox. 2024-06-26 01:43:17 +05:30