Muhsin Keloth
a0cf25ccde
chore: Rescue slack link unfurling errors. ( #11033 )
...
Fixes
https://linear.app/chatwoot/issue/CW-4122/slackwebapierrorsmissingscope-missing-scope
This PR adds the ability to handle errors when scopes are missing during
link unfurling. Since link unfurling is just a nice-to-have feature that
doesn't affect core functionality, we will silently ignore these errors.
---------
Co-authored-by: Sojan <sojan@pepalo.com>
2025-03-06 15:57:16 -08:00
Muhsin Keloth
12134f9391
feat: Linear OAuth 2.0 ( #10851 )
...
Fixes https://linear.app/chatwoot/issue/CW-3417/oauth-20-authentication
We are planning to publish the Chatwoot app in the Linear [integration
list](https://linear.app/docs/integration-directory ). While we currently
use token-based authentication, Linear recommends OAuth2 authentication.
This PR implements OAuth2 support.
---------
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
2025-02-27 18:15:53 +05:30
Tarush Nagpal
11a7414dc0
feat: Upgrade Dyte apis to v2 ( #10706 )
...
# Pull Request Template
## Description
Dyte V1 API's are soon going to be deprecated, hence making sure we
update Chatwoot before that happens
Fixes #10704
## Type of change
Please delete options that are not relevant.
- [x] New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
1. Open a new or existing conversation from the inbox
2. Press the video call icon on the message composer
3. Verify that the message dialog shows up with the join video call
button
4. Verify that clicking on join call does join the call
## Checklist:
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] My changes generate no new warnings
- [ ] New and existing unit tests pass locally with my changes (Unable
to run this locally)
---------
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2025-02-19 14:47:48 -08:00
Muhsin Keloth
031199f15a
chore: Slack file upload changes ( #10903 )
...
The Slack `files.upload` API endpoint is deprecated and will stop
functioning on March 11, 2025. In this PR, we have implemented the
changes for the [new file
upload](https://api.slack.com/messaging/files#uploading_files ) method.
2025-02-18 22:44:30 -08:00
Sojan Jose
12a82b6459
fix: avoid Slack file upload API for fallback messages ( #10461 )
...
Skip calling the Slack file upload API for message types such as
fallback (e.g., Facebook and location messages) that lack actual file
data in attachments. This prevents unnecessary API calls and resolves a
Sentry error currently occurring in production.
fixes: https://github.com/chatwoot/chatwoot/issues/10460
2024-11-26 12:56:40 +08:00
Sojan Jose
ab86f62fcc
chore: Update GPT Model ( #10111 )
...
Update the open AI model, as 3.5 is being deprecated. Provide as option to swap out models via environment variables.
2024-09-16 09:41:20 +05:30
Shivam Mishra
abc511d00f
fix: inconsistent OpenAI cache interface ( #10009 )
...
Signed-off-by: Shivam Mishra <scm.mymail@gmail.com>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2024-08-22 23:04:14 +05:30
Muhsin Keloth
429d281501
fix: Handle OpenAI API errors ( #9560 )
2024-08-22 10:24:13 +05:30
Sojan Jose
829bb842fd
feat: Generate SSO URL in Chatwoot, move Captain to primary tab ( #9871 )
...
- Generate SSO URL in Chatwoot, move Captain to the primary tab
Co-authored-by: Pranav <pranavrajs@gmail.com>
2024-08-01 19:22:34 -07:00
Sojan Jose
0331815cc5
feat: Integration with Captain (alpha) ( #9834 )
...
- Integration with captain (alpha)
Co-authored-by: Pranav <pranavrajs@gmail.com>
2024-07-25 14:24:04 -07:00
Muhsin Keloth
023b3ad507
feat: Add APIs for linear integration ( #9346 )
2024-05-22 13:37:58 +05:30
Shivam Mishra
64283b35a5
refactor: Use processed message content for slack ( #9349 )
2024-05-06 16:31:20 +05:30
Sojan Jose
5c9acfb4e9
chore: Handle duplicate Webhooks from slack ( #9187 )
...
* chore: Handle duplicate Webhooks from slack
* chore: fixes
---------
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2024-04-04 17:00:45 +05:30
Sojan Jose
81060a72a4
feat: Improve reply suggestions using help center articles ( #9026 )
2024-03-03 20:25:19 -08:00
Shivam Mishra
c031cb19d2
fix: downcase email before finding ( #8921 )
...
* fix: downcase email when finding
* feat: add `from_email` class
* refactor: use `from_email`
* feat: add rule to disallow find_by email directly
* chore: remove redundant test
Since the previous imlpmentation didn't do a case-insentive search, a new user would be created, and the error would be raised at the DB layer. With the new changes, this test case is redundant
* refactor: use from_email
2024-02-21 18:51:00 +05:30
Sojan Jose
84f6cadae7
chore: Remove unused builders for widget ( #8876 )
...
- These builders are not used in our code base, hence removing them
2024-02-08 21:12:55 +04:00
Sojan Jose
7776b74126
chore: Apply fixes for items in rubocop_todo [CW-1806] ( #8864 )
...
This PR addresses several items listed in our rubocop_todo by implementing the necessary corrections and enhancements. As a result, we are now able to remove the rubocop_todo file entirely, streamlining our codebase and ensuring adherence to our coding standards.
fixes: https://linear.app/chatwoot/issue/CW-1806/chore-rubocop-audit
2024-02-07 13:36:04 +04:00
Muhsin Keloth
64138ef220
chore: Rescue Slack::Web::Api::Errors::NotInChannel error ( #8670 )
...
The primary cause of this issue is when Chatwoot sends a message to a channel that has either been deleted or is unauthorized. So, we will prompt reauthorization when this error occurs.
Fixes https://linear.app/chatwoot/issue/CW-2930/slackwebapierrorsnotinchannel-not-in-channel
2024-01-09 14:30:17 -08:00
Muhsin Keloth
6c8dacfa0d
feat: Facebook delivery reports ( #8136 )
2023-11-20 12:22:45 +05:30
Muhsin Keloth
5f503b1a57
feat: Change slack bot and activity message appearance ( #8349 )
2023-11-16 12:59:52 +05:30
Pranav Raj S
653e0335c0
fix: Handle PermissionDeniedError for Dialogflow processor ( #8252 )
2023-10-30 13:24:03 -07:00
Muhsin Keloth
7438f3b157
fix: Rescue slack ChannelNotFound error ( #8196 )
2023-10-25 13:53:30 +05:30
Shivam Mishra
62d8ec7edb
feat: support reply to for incoming messages on facebook ( #8076 )
...
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2023-10-13 16:33:50 +05:30
Muhsin Keloth
26e8877cd9
feat: Support link unfurling for all the channels within the same connected channel account. ( #8033 )
2023-10-08 17:55:03 +05:30
Muhsin Keloth
24fe3805d8
feat: Slack link unfurling ( #7940 )
...
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2023-09-29 19:35:56 +05:30
Muhsin Keloth
cbbe939662
fix: Set avatar for users(agent/contact) in slack channels ( #7960 )
2023-09-26 09:38:14 +05:30
Muhsin Keloth
0dd5104acb
chore: Move slack message concern to the helper ( #7912 )
2023-09-19 11:09:23 +05:30
Muhsin Keloth
4fa299ff15
chore: Disable archived channels from the slack integration ( #7904 )
2023-09-12 22:21:50 +05:30
Muhsin Keloth
ce4cfee8bd
fix: Attachment sent from slack doesn't reach to chatwoot ( #7852 )
2023-09-05 17:23:58 +05:30
Pranav Raj S
3dd3b7b3aa
fix: Rescue InvalidAuth and mark integration as inactive ( #7797 )
2023-08-24 17:02:24 +05:30
Sojan Jose
178bc80b25
fix: Update email alerts for Slack integration ( #7739 )
...
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2023-08-17 11:46:37 -07:00
Muhsin Keloth
cfe86d9c06
fix: Create new slack thread if the thread identifier changes ( #7702 )
...
Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
2023-08-11 14:19:49 +05:30
Shivam Mishra
84240e197a
fix: Summary prompt test ( #7709 )
2023-08-11 13:42:27 +05:30
Pranav Raj S
04287a0924
fix: Rename channel_list to channels to avoid "no implicit conversion of nil" exception ( #7700 )
2023-08-09 16:11:51 -07:00
Muhsin Keloth
c1c3a62412
fix: Improve reply prompt ( #7588 )
...
Co-authored-by: Sojan Jose <sojan@chatwoot.com>
2023-08-09 10:25:37 +05:30
Sojan Jose
4c75bb68f4
chore: Fix OpenAI sentry errors ( #7687 )
...
- add check for nil condition
- add logs for openAI
2023-08-07 14:08:26 -07:00
Pranav Raj S
9ddd428935
feat: Update the slack integration-flow to allow users to select the channel ( #7637 )
2023-07-28 14:50:30 -07:00
Shivam Mishra
39f14bebbd
fix: undefined method first for nil:NilClass ( #7567 )
...
Co-authored-by: Sojan Jose <sojan@pepalo.com>
2023-07-25 13:00:21 +03:00
Muhsin Keloth
91c1061214
feat: Add more AI options ( #7502 )
...
Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2023-07-16 12:25:16 -07:00
Muhsin Keloth
19ff738211
feat: Add more options for AI reply suggestions ( #7493 )
2023-07-13 10:26:25 +05:30
Shivam Mishra
a940f4c1d2
feat: Allow label suggestions with OpenAI APIs ( #7428 )
2023-07-10 14:40:54 +05:30
steffenhaak
132cf802d5
fix: Open AI Integration should respond in conversation language ( #7092 )
...
Appended "Reply in the user's language." to obtain the answer in the user's language.
Fixes: https://linear.app/chatwoot/issue/CW-1735/chore-use-account-language-for-the-prompts
Co-authored-by: Sojan <sojan@pepalo.com>
2023-05-18 18:50:48 +05:30
Muhsin Keloth
86384bf876
feat: Reply suggestion and summary generation using OpenAI ( #7029 )
...
Add `reply_suggestions` and `summary_generation` options for OpenAI integration
Fixes: https://linear.app/chatwoot/issue/CW-1595/frontend-for-generating-conversation-summary
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
Co-authored-by: Sojan Jose <sojan@pepalo.com>
2023-05-10 17:50:37 +05:30
Sojan Jose
022383d942
chore: Upgrade to Rails 7 ( #6719 )
...
fixes : #6736
2023-05-06 10:44:52 +05:30
Sojan Jose
02c467b6db
chore: GPT Reply suggestion & summarize endpoints ( #7011 )
...
Adds additional endpoints for OpenAI integration which will allow
- Reply Suggestions
- Summarization
ref: #6436
fixes: https://linear.app/chatwoot/issue/CW-1596/backend-for-generating-conversation-summary
2023-04-28 19:57:25 +05:30
Muhsin Keloth
92fa9c4fdc
feat: Ability to improve drafts in the editor using GPT integration ( #6957 )
...
ref: https://github.com/chatwoot/chatwoot/issues/6436
fixes: https://linear.app/chatwoot/issue/CW-1552/ability-to-rephrase-text-in-the-editor-using-gpt-integration
---------
Co-authored-by: Sojan <sojan@pepalo.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
2023-04-24 23:52:23 +05:30
Tejaswini Chile
6a0ca35de4
Feat: detect language of the message content ( #6660 )
2023-04-04 08:57:27 +05:30
Tejaswini Chile
44f73e044a
slack with template message link ( #6811 )
2023-04-03 11:32:37 +05:30
Pranav Raj S
ebc144683a
chore: Update conversation thread rendering in Slack ( #6812 )
2023-04-02 22:26:08 -07:00
Tejaswini Chile
21da03fe5b
Fix: Consider bot message on slack integration ( #6793 )
2023-03-31 18:56:51 +05:30
Tejaswini Chile
d8604107aa
fix: Add link to conversation in slack message ( #6768 )
2023-03-30 13:03:19 +05:30
Tejaswini Chile
fdb067a352
fix: mentions are not rendered properly in slack ( #6762 )
2023-03-28 13:40:16 +05:30
Tejaswini Chile
c9b63ae8eb
fix: hook exception for empty hook ( #6646 )
2023-03-10 16:40:15 +05:30
Tejaswini Chile
f2684545d9
fix: Handle dialogflow hook without setting and credentials ( #6638 )
2023-03-09 20:11:08 +05:30
Tejaswini Chile
60fee519bd
Exception tracker with account ( #6603 )
2023-03-03 12:14:44 +05:30
Tejaswini Chile
a4fc0eef4b
fix: Exception tracking for dialogflow bot service ( #6593 )
2023-03-02 21:33:07 +05:30
Shivam Mishra
06ffaa90fc
fix: bots included in time to response metrics ( #6409 )
...
* feat: ignore bots in avg_first_response_time
* feat: ignore bots in avg_first_response count
* feat: add bot handoff event
* feat: add handoff event listener and reporting event
* fix: ignore agent bot in first response
* refactor: calculate first_response with last handoff
* refactor: method defn order
* test: new reporting events
* feat: Revert "feat: ignore bots in avg_first_response count"
This reverts commit de1977c219a2e7a9180dd02272244fe3b3f7ce89.
* feat: Revert "feat: ignore bots in avg_first_response_time"
This reverts commit bb9171945d5e3b2f6015f4f96dd1b76b3efb6987.
* fix: business hour calculation for first_reply
* fix: event_start_time for first_response
* feat: add migration to recompute first_responses
* refactor: separate mute helpers for conversation
* refactor: rename migration
* refactor: migration script
* fix: migration typo
* fix: typo in query
* feat: update schema.rb
* Revert "feat: update schema.rb"
This reverts commit 353ef355f2d956dd219907bb66982dc90ca5d896.
* feat: update schema
* refactor: update events as a batch job
* fix: ignore the event if value is negative
* feat: don't create a new hand-off if it's already present
* refactor: break the action into smaller chunks
* refactor: update reporting listener spec
Handle the case to ensure extra bot handoffs are not created for a give conversation
* fix: import error
---------
Co-authored-by: Vishnu Narayanan <vishnu@chatwoot.com>
2023-02-25 09:48:48 +05:30
Pranav Raj S
80784e3cab
feat: Add Google Translate API Integration ( #6454 )
2023-02-15 20:50:45 -08:00
Pranav Raj S
d672aa357b
chore: Add subject to the slack message ( #6404 )
2023-02-06 12:42:06 -08:00
Pranav Raj S
cbfbe6dbad
feat: Add backend APIs for Dyte integration ( #6197 )
...
- The backend changes required for Dyte Integration.
2023-01-09 12:37:18 +05:30
Pranav Raj S
38587b3aa1
fix: Update Slack integration to fix message delivery issues ( #6093 )
2022-12-17 16:41:11 -08:00
Jordan Brough
59b31615ed
chore: Use "create!" and "save!" bang methods when not checking the result ( #5358 )
...
* Use "create!" when not checking for errors on the result
* Use "save!" when not checking the result
2022-09-13 17:40:06 +05:30
Yemin Sajid
7f48cffeb3
feat: Support case insensitive tags for Slack note prefix ( #5123 )
...
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-07-28 09:57:39 +05:30
Sojan Jose
4187428729
chore: Update dependencies to the latest versions ( #5033 )
2022-07-15 09:51:59 +07:00
Pranav Raj S
b7606e4dd2
feat: Add native support for CSML in agent_bot API ( #4913 )
2022-06-23 19:17:46 +05:30
Tejaswini Chile
f64cf85ab2
Fix: sentry issue for slack incoming files check ( #4656 )
...
Interpreter error for nil. any? added nil. present?
Fixes: https://sentry.io/share/issue/48c10d26490f4bdaab78c82244fcea98/
2022-05-09 23:54:45 +05:30
Tejaswini Chile
0eeab8c56c
Fix: slack repeated callback event message for attached files ( #4610 )
2022-05-09 19:18:30 +05:30
Sojan Jose
04dfb034cc
chore: Upgrade Exception tracking ( #4638 )
...
- Upgrade Sentry Libraries
- Enable provision for account and user info in error tracking
- Add ChatwootExceptionTracker
fixes : #4375
2022-05-09 14:23:19 +05:30
Sojan Jose
c9a8796a36
chore: Sentry Issue fixes ( #4618 )
...
Address the following sentry issues
fixes : #4616 , #4617
2022-05-05 00:31:11 +05:30
Tejaswini Chile
cb38ec3267
chore: Allow Facebook channel to receive standby messages ( #4511 )
2022-04-28 01:14:03 +05:30
Sojan Jose
2c73df4292
Chore: Provide fixed attachment URLs for Channels ( #4507 )
...
Prior to this change, The attachment URL sent from Chatwoot to 3rd party integrations like Whatsapp and Facebook
involved a 301 redirect before the original content is served. This causes intermittent breakages for the sent attachments.
fixes : #3632
ref: https://blog.saeloun.com/2021/09/14/rails-7-adds-expiring-urls-to-active-storage.html
2022-04-20 22:42:13 +05:30
Vishnu Narayanan
8155024b6a
feat: fix logging levels ( #4314 )
...
https://ruby-doc.org/stdlib-2.7.0/libdoc/logger/rdoc/Logger.html
Fixes https://github.com/chatwoot/chatwoot/issues/4313
2022-03-28 18:14:30 +05:30
Pranav Raj S
8dcb4a5ed4
chore: Add resolve action in Dialogflow Integration ( #3900 )
2022-02-03 12:05:39 +05:30
Vishnu Narayanan
3a48e08fe0
feat: migrate facebook env vars to globalConfig ( #3369 )
...
Migrate facebook env vars to globalConfig and make it editable from the super admin UI.
2021-11-25 00:55:26 +05:30
Tejaswini Chile
000c7603d6
feat/3247 Escape html tags from the slack messages ( #3306 )
2021-11-01 12:08:10 +05:30
Sojan Jose
e669f6766f
chore: Fix Dialogflow issue ( #3210 )
2021-10-14 13:17:09 +05:30
Tejaswini Chile
b1b0268705
feat: Support sending and receiving attachments in Slack Integration ( #3022 )
...
- Process incoming slack attachments
- Send attachments from chatwoot to slack
2021-09-18 00:49:01 +05:30
Sojan Jose
a14f4ede87
chore: Sidebar icons for new inboxes ( #3016 )
...
- Sidebar icons for line and telegram inboxes
- Sentry fix for contact IP lookup job
2021-09-15 18:12:56 +05:30
Sojan Jose
328edd24de
chore: Move Facebook event processing to worker ( #2988 )
2021-09-13 18:05:14 +05:30
Muhsin Keloth
6515b69560
feat: CSAT for all channels ( #2749 )
2021-08-23 22:00:47 +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
Sojan Jose
a7ca55c080
chore: Change the conversation bot status to pending ( #2677 )
...
fixes : #2649
2021-07-21 22:02:43 +05:30
Pranav Raj S
5726447e47
fix: Unescape Slack incoming messages ( #2604 )
2021-07-09 17:45:02 +05:30
Pranav Raj S
0d02142925
feat: Support messages along with the actions in Dialogflow response ( #2579 )
2021-07-07 10:04:48 +05:30
Sojan Jose
d5215fea93
feat: APIs for Integration Hooks ( #2250 )
...
- Introduces JSON Schema validations via JSONSchemer
- Add CRUD APIs for integration hooks
2021-05-17 10:32:59 +05:30
Sojan Jose
b30ecb27a6
feat: Add APIs for Dialogflow integration V1 ( #2155 )
...
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2021-05-05 21:06:11 +05:30
Muyi
da94e65d20
fixed slack channel builder so that the channel list can have more th… ( #1725 )
...
fixed slack channel builder so that the channel list can have more than 100 elements
Co-authored-by: xinruiyang <xinruiyang@deepmap.ai>
2021-02-10 20:22:06 +05:30
Pranav Raj S
88c4b63eec
chore: Add slack external_source_id for outgoing messages ( #1503 )
2020-12-10 22:53:49 +05:30
Sojan Jose
eb2ded6f65
feat: Agent & Inbox Report APIs ( #1391 )
2020-11-16 19:41:52 +05:30
Pranav Raj S
2babfd6148
fix: Add a check for thread_ts ( #1389 )
...
- If no thread timestamp is available, ignore the message
- Add specs to cover the case
2020-11-09 22:01:57 +05:30
Abhishek
ff96d43953
feat: notify on slack disconnect ( #1323 )
2020-10-28 00:22:57 +05:30
Hiroshi SHIBATA
9045b8d9ca
chore: Fixed typos ( #1369 )
2020-10-27 20:22:55 +05:30
Sojan Jose
afc062537c
chore: Fix integration hooks destroy method ( #1224 )
2020-09-12 23:09:55 +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
d18c8fc08a
chore: Add message_echo listener for Facebook ( #1192 )
...
Co-authored-by: Sojan Jose <sojan@pepalo.com>
2020-09-04 19:13:47 +05:30
Sojan Jose
5ac093fca2
chore: Fix nil class error at bot endpoint ( #1177 )
2020-08-30 12:36:21 +05:30
Sojan Jose
85ae6d92b9
feat: Enable Slack Integration in all channels ( #1175 )
2020-08-29 01:39:41 +05:30
Sojan Jose
8079bf50a0
Feature: API Channel ( #1052 )
2020-07-21 12:15:24 +05:30
Sojan Jose
cc02611007
Chore: Convert Message Sender to polymorphic ( #740 )
...
Fixes #680
2020-06-27 21:34:53 +05:30