Sojan Jose
933ae8aa49
fix: Email attachments created with empty filename ( #10420 )
...
- We observed in prod for certain emails active storage blob objects
were getting created with empty file name. The conversations further
causes conversation and filter pages to break. This change will fix the
mentioned issue.
fixes:
https://linear.app/chatwoot/issue/CW-3331/missing-file-name-for-some-of-the-uploads-for-emails
---------
Co-authored-by: Pranav <pranavrajs@gmail.com >
2024-11-15 09:07:24 +04:00
Shivam Mishra
6e12ba04ab
fix: last_activity_at is nil when conv is created ( #9934 )
...
The payload does not include last_activity_at when the conversation is created. Because of this the frontend is not able to sort the conversations when appending this. Another problem is that the last_activity_at is not always present, it is added only when a message is created, and it updates it. So this can be nil when the conversation is created, so we fallback to created_at only at the presentation layer
2024-08-12 15:15:49 +05:30
Sojan Jose
7968e98529
chore: Stop processing auto-response emails ( #9606 )
...
Stop processing auto-response emails
https://www.notion.so/chatwoot/Avoid-Auto-Replies-sorcerer-s-apprentice-mode-55ffb09efbd7451994f1ff852de4c168?pvs=4
2024-06-13 14:19:11 -07:00
Sojan Jose
4e28481f27
feat: Conversation API to return applied_sla and sla_events ( #9174 )
...
* chore: Add sla_events to push_event_data
* chore: Return SLA details in the API
* chore: feature lock sla push event data
* Update _conversation.json.jbuilder
* chore: rubocop fixes
2024-04-01 23:30:07 +05:30
Pranav Raj S
c607f09be0
feat: Improve the rendering of CSV exports ( #8914 )
...
Improve the rendering of the datestamp
2024-02-12 20:01:58 -08:00
Pranav Raj S
fd633e1613
feat: Add inbox webhook events ( #8006 )
...
- Add webhook events for inbox creation/updation.
- Right now, the feature is added under a feature_flag. It is not available by default on all installations.
2023-09-28 15:28:10 -07:00
Pranav Raj S
ebefb2e201
fix: Consider the emails where in-reply-to header has multiple values ( #7715 )
...
- Return the first message id for now to avoid the errors and subsequently missing the message.
- Use .last instead of .first to avoid expensive query.
- Fix array response in response bot.
Fixes: https://linear.app/chatwoot/issue/CW-2358/activerecordstatementinvalid-pgdatatypemismatch-error-argument-of-and
2023-08-11 17:53:57 -07:00
Pranav Raj S
93daaea19b
feat: Add a sort option for conversations waiting for a reply from an agent ( #7364 )
2023-06-21 13:20:39 -07:00
Tejaswini Chile
aae6081d73
fix: check content disposition, for inline messages in mail ( #7231 )
2023-06-05 20:28:32 +05:30
Shivam Mishra
d95283f5c2
feat: improvements to priority ( #6981 )
...
* fix: colors for urgent icon
* feat: trigger updated event on priority change
* fix: specs
2023-04-25 22:28:19 +05:30
Pranav Raj S
5d331f0bb2
fix: Add missing timestamp in the real-time event ( #6349 )
...
* fix: Add missing timestamp in the real-time event
* Fix broken specs
2023-01-25 15:21:41 -08:00
Nithin David Thomas
85b52a1d3f
feat: Add a view for unattended conversations ( #5890 )
...
Co-authored-by: Pranav Raj S <pranav@chatwoot.com >
2022-11-29 08:18:00 -08:00
Tejaswini Chile
38ab3c36db
fix: send label list not object in event data presenter ( #5853 )
2022-11-15 12:20:06 +05:30
Fayaz Ahmed
9eb861a3b7
feat: Custom attributes in automations and refactor ( #4548 )
...
* Custom attributes
* Custom Attrs Manifest
* Fix dropdown values for custom attributes
* Handle edit mode for custom attributes
* Ported duplicate logic to a mixin
* fix Code climate issue
* Fix Codeclimate complexity warning
* Bug fix - Custom attributes getting duplicated
* Bug fixes and Code Climate issue fix
* Code Climate Issues Breakdown
* Fix test spec
* Add labels for Custom attributes in dropdown
* Refactor
* Refactor Automion mixin
* Refactor Mixin
* Refactor getOperator
* Fix getOperatorType
* File name method refactor
* Refactor appendNewCondition
* spec update
* Refactor methods
* Mixin Spec update
* Automation Mixins Test Specs
* Mixin Spec Rerun
* Automation validations mixin spec
* Automation helper test spec
* Send custom_attr key
* Fix spec fixtures
* fix: Changes for custom attribute type and lower case search
* fix: Specs
* fix: Specs
* fix: Ruby version change
* fix: Ruby version change
* Removes Lowercased values and fix label value in api payload
* Fix specs
* Fixed Query Spec
* Removed disabled labels if no attributes are present
* Code Climate Fixes
* fix: custom attribute with indifferent access
* fix: custom attribute with indifferent access
* Fix specs
* Minor label fix
* REtrigger circle ci build
* Update app/javascript/shared/mixins/specs/automationMixin.spec.js
* Update app/javascript/shared/mixins/specs/automationMixin.spec.js
* fix: Custom attribute case insensitivity search
* Add missing reset action method to input
* Set team_input to single select instead of multiple
* fix: remove value case check for date,boolean and number data type
* fix: cognitive complexity
* fix: cognitive complexity
* fix: Fixed activity message for automation system
* fix: Fixed activity message for automation system
* fix: Fixed activity message for automation system
* fix: codeclimate
* fix: codeclimate
* fix: action cable events for label update
* fix: codeclimate, conversation modela number of methods
* fix: codeclimate, conversation modela number of methods
* fix: codeclimate, conversation modela number of methods
* fix: codeclimate, conversation modela number of methods
* Fix margin bottom for attachment button
* Remove margin bottom to avoid conflict from macros
* Fix automation action query generator using the right key
* fix: not running message created event for activity message
* fix: not running message created event for activity message
* codeclimate fix
* codeclimate fix
* codeclimate fix
* Update app/javascript/dashboard/mixins/automations/methodsMixin.js
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com >
* Update app/javascript/shared/mixins/specs/automationHelper.spec.js
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com >
* Update app/javascript/dashboard/helper/automationHelper.js
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com >
* Update app/javascript/dashboard/mixins/automations/methodsMixin.js
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com >
Co-authored-by: Pranav Raj S <pranav@chatwoot.com >
Co-authored-by: Tejaswini <tejaswini@chatwoot.com >
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com >
Co-authored-by: Sojan Jose <sojan@pepalo.com >
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
2022-11-10 10:53:29 +05:30
Tejaswini Chile
4a299a9441
fix: Add an action cable events for label updates ( #5694 )
...
Co-authored-by: Pranav Raj S <pranav@chatwoot.com >
2022-10-21 16:12:35 -07:00
Tejaswini Chile
2397326324
fix: Auto populate team after assigned via API ( #5250 )
2022-08-12 13:40:28 +05:30
Tejaswini Chile
97bf5d0c6a
fix: Fetch email address to create contact ( #4952 )
...
Get the email address from the email content in the correct format.
Fixes : chatwoot/product#454
2022-07-02 17:40:28 +05:30
Tejaswini Chile
821b953ee9
Fix: handling UTF encoded mail ( #4384 )
2022-04-06 12:36:32 +05:30
Tejaswini Chile
5be9380547
Fix: html mail fix with html_body content ( #4011 )
2022-03-30 18:04:30 +05:30
Pranav Raj S
505c93c467
revert: "fix: html content is available and mail_part empty" ( #3986 )
...
Reverts de4e4c6
2022-02-15 17:19:28 +05:30
Tejaswini Chile
d5c9193d1a
feat: Add specs for reply-to changes ( #3959 )
2022-02-15 10:28:04 +05:30
Tejaswini Chile
de4e4c6f65
fix: html content is available and mail_part empty ( #3964 )
2022-02-14 20:22:58 +05:30
Robert Guthrie
e9a162e71a
feat: Prefer reply-to over from in email channels ( #3837 )
...
Co-authored-by: root <root@support.loomio.com >
2022-02-10 19:20:30 +05:30
Muhsin Keloth
903072ef14
chore: Add custom attributes in conversation webhook payload ( #3839 )
2022-02-03 10:05:56 +05:30
Tejaswini Chile
1467a8fa33
Fix: parse verification mail ( #3864 )
...
Email parsing logic was stripping of HTML tables which was causing the issue in this case.
Fixes : #3731
2022-01-27 15:45:26 -08:00
Tejaswini Chile
e997aaceb7
Fix: Email Parsing for html fix ( #3659 )
2022-01-20 15:55:35 -08:00
Sojan Jose
13d6734977
chore: Minor API cleanups ( #3645 )
...
- exception list updated
- revert mail presenter changes
2021-12-23 00:55:49 +05:30
Tejaswini Chile
44486fc8e1
chore: Improve email parsing using email trimmer gem ( #3611 )
...
Email parsing using email_trimmer gem
Fixes : #3539 , #2954 , #3572
2021-12-22 18:16:40 +05:30
Tejaswini Chile
c2519ea1ea
Fix: fixing mail to and in_reply_to issues ( #3451 )
2021-12-10 19:42:26 +05:30
Sojan Jose
add004a56e
Chore: API Improvements ( #3469 )
2021-11-27 00:48:46 +05:30
Sojan Jose
791d90c6b7
chore: Migrate PubSub Token to contact inbox ( #3434 )
...
At present, the websocket pubsub tokens are present at the contact objects in chatwoot. A better approach would be to have these tokens at the contact_inbox object instead. This helps chatwoot to deliver the websocket events targetted to the specific widget connection, stop contact events from leaking into other chat sessions from the same contact.
Fixes #1682
Fixes #1664
Co-authored-by: Pranav Raj S <pranav@chatwoot.com >
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
2021-11-22 23:32:17 +05:30
Pranav Raj S
57abdc4d5f
feat: Display "Snoozed Until" time on conversation header ( #3028 )
2021-09-29 19:33:51 +05:30
Tejaswini Chile
a0ffefad71
chore: Use the name of the sender from the mail object
...
if the sender email is Sony Mathew <Sony@chatwoot.com > Contact should be built with Sony Mathew
Fixes #2911
2021-09-16 13:26:52 +05:30
Tejaswini Chile
09e3413d10
chore: consider X-original-sender to create contact in case of group mail ( #2841 )
...
For emails forwarded from google groups, Google rewrites the FROM address to the group email and the original email will be available under X-Original-Sender. This PR enables chatwoot to handle this case.
Fixes : #2715
2021-08-24 14:18:08 +05:30
HariniKrishnan
a065165bcb
fix: undefined method contact in support mailbox ( #2678 )
...
if chatwoot receives an email of already existing contact with a different case say "Care@example.com ", before this fix, it will throw an error. Now it will retrieve existing contact
Fixes : #2553
Co-authored-by: Sojan Jose <sojan@pepalo.com >
2021-08-12 01:28:07 +05:30
Pranav Raj S
bdc4ecffc1
fix: Save content_type, multipart information to email message model ( #2774 )
2021-08-09 18:04:34 +05:30
Sojan Jose
ab54d9c629
chore: Upgrade rails and ruby versions ( #2400 )
...
ruby version: 3.0.2
rails version: 6.1.4
2021-08-03 20:11:52 +05:30
Pranav Raj S
5aac2acf56
fix: Improve mail content parsing ( #2638 )
2021-07-15 22:50:32 +05:30
Pranav Raj S
72069e45ef
fix: Use mail.decoded as fallback for text content to fix char-rendering
2021-07-15 20:06:43 +05:30
Sojan Jose
4b49d21543
chore: Add event for conversations transferred to Bot ( #2167 )
...
* chore: Event for conversation transferred to Bot
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
Co-authored-by: Nithin David <webofnithin@gmail.com >
2021-04-28 20:53:23 +05:30
Pranav Raj S
8ea35802b4
fix: Handle email with no subject line and no body ( #2164 )
...
* fix: Add a default email subject line if no subject is present
* Add a default on the frontend
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
2021-04-27 10:51:04 -07:00
Sojan Jose
ca4a766b82
chore: Enable email channel ( #1851 )
2021-03-04 13:59:59 +05:30
Sojan Jose
f46c4b5130
chore: Minor Changes to Bot Message APIs ( #1739 )
2021-02-08 12:50:11 +05:30
Pranav Raj S
399f9e004a
fix: Use last_activity_at instead of updated_at for sorting ( #1281 )
...
Co-authored-by: Akash Srivastava <akash.srivastava.1911@gmail.com >
2020-10-05 22:52:43 +05:30
Sony Mathew
381c448627
fix: Email encoding issue - utf8 ( #1264 )
...
There were issues in parsing Arabic or UTF characters (emojis)
correctly for the incoming emails.
All these characters were converted to question marks which is
teh fallback character when an encoding is enforced and there is
a missing matching character.
2020-09-22 11:26:41 +05:30
Sony Mathew
f9b0427751
feat: email channel backend ( #140 ) ( #1255 )
...
* feat: added support mailbox to handle email channel (#140 )
Added a new mailbox called 'SupportMailbox' to handle all the
incoming emails other than reply emails.
An email channel will have a support email and forward email
associated with it. So we filter for the right email inbox based on
the support email of that inbox and route this to this mailbox.
This mailbox finds the account, inbox, contact (create a new one
if it does not exist) and creates a conversation and adds the
email content as the first message in the conversation.
Other minor things handled in this commit:
* renamed the procs for routing emails in application mailbox
* renamed ConversationMailbox to ReplyMailbox
* Added a fallback content in MailPresenter
* Added a record saving (bang) versions of enabling and disabling
features in Featurable module
* added new factory for the email channel
refs: #140
2020-09-21 22:44:22 +05:30
Sojan Jose
31c07771e8
feat: Notification on new messages in conversation ( #1204 )
...
fixes : #895
fixes : #1118
fixes : #1075
Co-authored-by: Pranav Raj S <pranav@thoughtwoot.com >
2020-09-10 19:19:15 +05:30
Sojan Jose
ac5d755545
chore: Update dependencies ( #1173 )
2020-09-08 11:24:08 +05:30
Pranav Raj S
2b1d445003
feat: Use display_name instead of name of the agent ( #1097 )
...
* feat: Use display_name instead of name of the agent
2020-07-27 22:19:26 +05:30
Pranav Raj S
0f2d3418f9
fix: Add a check for 24 hour window before sending a message ( #1084 )
...
Co-authored-by: Sojan Jose <sojan@pepalo.com >
2020-07-25 22:54:45 +05:30