Commit graph

612 commits

Author SHA1 Message Date
Sojan Jose
ea1a27c7d4
fix: Twilio channel selection when MessagingServiceSid is empty (#5040)
- Fixes channel selection logic in incoming_message_service for Twilio messages

ref: #4242
2022-07-14 15:16:07 +02:00
Tejaswini Chile
d7be0ea08e
fix: Conversation filter on dates (#5024) 2022-07-13 10:08:24 +05:30
giquieu
827f977a37
feat: Update API for contact avatar (#4719)
Added the ability to update the contact's avatar via API and Dashboard.

- Contact create and update APIs can now accept avatar attachment parameters [form data].
- Contact create and update endpoints can now accept the avatar_url parameter.[json]
- API endpoint to remove a contact avatar.
- Updated Contact create/edit UI components with avatar support

Fixes: #3428
2022-07-12 10:03:16 +02:00
Tejaswini Chile
23ac1c0334
feat: Added portal logo and the updated the JSON (#4996) 2022-07-11 12:43:24 +05:30
Jordan Brough
49d08a6773
feat: Support Twilio Messaging Services (#4242)
This allows sending and receiving from multiple phone numbers using Twilio messaging services

Fixes: #4204
2022-07-08 18:20:07 +05:30
Tejaswini Chile
fdf449dc87
Feat: Article public apis (#4955) 2022-07-08 17:24:38 +05:30
Aswin Dev P.S
13a4e0e6d9
chore: Email improvements. (#4901)
* Update email processing logic.
* Fix sentry issues
2022-07-08 04:13:24 -07:00
Sojan Jose
e4b159dd54
chore: Fix contact model silently discarding invalid attributes (#4994)
fixes: #4775
2022-07-08 13:58:09 +05:30
Sojan Jose
f014d9d13b
chore: Ability to Disable Sentry Transactions (#4989)
fixes: #4866
2022-07-07 20:37:05 +05:30
Tejaswini Chile
2f3bdbdea2
fix: Handling facebook client error for deleted story (#4984) 2022-07-07 18:02:18 +05:30
Sojan Jose
a6c609f43d
feat: Support for Whatsapp Cloud API (#4938)
Ability to configure Whatsapp Cloud API Inboxes

fixes: #4712
2022-07-06 21:45:03 +02:00
Tejaswini Chile
b86638faac
fix: last incoming message sort (#4972) 2022-07-06 00:37:43 +05:30
Sojan Jose
ac2adfbd57
chore: Append incoming SMS to last conversation (#4906)
- Append incoming SMS to the last conversation created for a contact
2022-07-05 21:19:41 +05:30
Tejaswini Chile
029209a634
feat: Portal and Category public APIs (#4946) 2022-07-05 17:15:38 +05:30
Tejaswini Chile
ae59d0a343
feat: CRUD operation for associated articles to current article (#4912) 2022-07-04 20:29:44 +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
ac7ebe516a
fix: Add validation for the inbox name to avoid special characters (#4920) 2022-06-30 10:59:37 +05:30
Tejaswini Chile
df1bf112ea
feat: Category API to handle linked categories and parent-sub categories (#4879) 2022-06-28 11:23:20 +05:30
Pranav Raj S
b7606e4dd2
feat: Add native support for CSML in agent_bot API (#4913) 2022-06-23 19:17:46 +05:30
Sojan Jose
f71980bd95
chore: Enhance contact merge action for identified users (#4886)
- Discard conflicting keys 
- Do not merge if there is already an identified contact

Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-06-23 15:48:56 +05:30
Tejaswini Chile
ffd102cdfe
Feat: custom sort (#4864) 2022-06-22 11:04:42 +05:30
Muhsin Keloth
a8c6cd729b
chore: Sync pre-chat fields after custom attribute update (#4692) 2022-06-20 14:16:49 +05:30
Sojan Jose
fdcaed75f6
chore: Move Whatsapp template sync to cron (#4858)
syncing WhatsApp templates job is moved to a cron job for a better user experience. The Templates are synced at 15-minute intervals now.
2022-06-14 23:46:36 +05:30
Pranav Raj S
1bb0371c1d
feat: Add agent_reply_time_window in API channels (#4857) 2022-06-14 18:05:37 +05:30
Sojan Jose
713fdb44ee
feat (ee): APIs to configure an auto assignment limit for inboxes (#4672)
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-06-13 20:18:38 +05:30
Tejaswini Chile
ae72757d23
feat: APIs for Articles (#4777)
Fixes: #4802
2022-06-13 15:56:49 +05:30
Tejaswini Chile
aa903a5da9
Fix: backend changes for custom attribute (#4830) 2022-06-13 11:58:54 +05:30
Tejaswini Chile
772d92a4d3
fix: Facebook reauthorization mailer (#4695) 2022-06-07 17:50:51 +05:30
Fayaz Ahmed
bad24f97ab
feat: Add support for Whatsapp template messages in the UI (#4711)
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-06-07 17:33:33 +05:30
Tejaswini Chile
56f668db6b
feat: Attribute changed filter for automations (#4621) 2022-06-07 13:01:01 +05:30
Pranav Raj S
6b9f4d08ca
fix: Disable marking IMAP connection as invalid for Standard Errors (#4764) 2022-06-02 11:38:58 +05:30
Pranav Raj S
b9aa4444b3
feat: Allow users to create dashboard apps to give agents more context (#4761) 2022-06-01 11:13:10 +05:30
Sojan Jose
ab05dd9b9b
chore: Improve the reauthorization requirement for Email Channel (#4753) 2022-05-26 20:23:00 +05:30
Tejaswini Chile
47a6d9681a
feat: send instagram message after 24 hours (#4698)
Added MESSAGE_TAG: HUMAN_AGENT for Instagram messages if the user wants to send it after the standard message window.

Fixes #4689
2022-05-26 19:05:30 +05:30
Pranav Raj S
7434b60f71
fix: Revert changes to fix name updation from pre-chat form (#4741) 2022-05-25 12:38:23 +05:30
Pranav Raj S
56cd9bc0b8
chore: Add Assignable Agents API (#4722) 2022-05-23 19:24:07 +05:30
Aswin Dev P.S
59969cc553
chore: Update conversations API to include unattended conversations. (#4708)
* Update conversations API to include unattended conversations.
2022-05-22 00:38:41 -07:00
Aswin Dev P.S
8538660bbd
Add first_reply_created event in conversation (#4576) 2022-05-18 21:16:33 -07:00
Pranav Raj S
47f04ee3fe
chore: Add an option to download CSAT Reports (#4694) 2022-05-17 21:01:45 +05:30
Tejaswini Chile
938fb887c4
feat: Portal endpoint (#4633) 2022-05-16 13:59:59 +05:30
Aswin Dev P.S
41b8901432
Fix: Agent Reports counts when they have access to multiple accounts (#4663)
This change restricts the agent report API to fetch agent metrics from the current account.

Fixes: #4660
2022-05-11 14:31:57 +05:30
Sojan Jose
81d0405473
chore: Ability to update user email via Platform APIs (#4659)
When the platform update API is called with a new user email, Chatwoot will still follow the same behaviour as in the dashboard where the user will have to confirm the new email activation link until the email gets updated on the user record.

In the case of platform APIs, this might not be the ideal behaviour since the original app will already have a flow to update the user emails. Hence we need to confirm the emails without the extra step in this case

fixes: #4510
2022-05-10 00:28: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
Aswin Dev P.S
360b438a55
Fix: Campaign triggers first_response reporting event (#4607)
* Fix: Campaign triggers first_response reporting event

* fix spec failure
2022-05-09 01:34:52 -07:00
Sojan Jose
c9a8796a36
chore: Sentry Issue fixes (#4618)
Address the following sentry issues

fixes: #4616, #4617
2022-05-05 00:31:11 +05:30
Shivam Chahar
c1cc94e37c
Fix: Accept phone number in public contact api (#4580)
This PR makes it possible to pass a phone number to the public contacts API.

Fixes #4023
2022-04-29 20:54:12 +05:30
Tejaswini Chile
e5136c2691
Fix: File upload from slack (#4494)
When you upload a file from slack chat it's not appearing in the chatwoot inbox.
This is because Slack updated the webhook event format
2022-04-28 21:09:39 +05:30
Pranav Raj S
8348392d43
fix: Disable automation on tweets (#4571)
Fixes #4565
2022-04-27 20:10:40 +05:30
Aswin Dev P.S
95c7a24dd1
fix: Unattendeed conversation count in agent metrics (#4568) 2022-04-27 06:26:35 -07:00
Aswin Dev P.S
1bf2da180b
fix: Update agent metrics query to show data from current account (#4557)
* Update agent metrics query to fetch data from current account
2022-04-26 05:52:13 -07:00
Muhsin Keloth
3a5e34fccb
fix: Check phone_number and email changes are exist before validation (#4551) 2022-04-26 15:13:28 +05:30
Aswin Dev P.S
676796ddc7
feat: Add reports about live agent load (#4537)
* feat: Add reports about live agent load
2022-04-25 07:34:41 -07:00
Pranav Raj S
899176a793
feat: Add event subscription option to webhooks (#4540)
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2022-04-25 17:44:42 +05:30
Muhsin Keloth
fa51fd1d73
fix: Bypass invalid values in contact patch end point (#4519) 2022-04-25 12:25:38 +05:30
Tejaswini Chile
1b3011b27b
fix: Add Attachment endpoint to save file against automation rule (#4480)
Co-authored-by: fayazara <fayazara@gmail.com>
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-04-24 12:02:40 +05:30
Tejaswini Chile
2acb48bbe0
feat: Add support for conversation attribute automation conditions in message event (#4518)
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-04-21 20:52:23 +05:30
Muhsin Keloth
b082b0e58c
fix: Dig params in widget contact end point (#4516) 2022-04-21 20:39:45 +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
Pranav Raj S
f2f0d466f2
chore: Update Help Center APIs to accomodate locale (#4515) 2022-04-20 16:00:37 +05:30
Muhsin Keloth
4f3a271355
chore: Add custom attributes in campaign.triggered event (#4463) 2022-04-20 10:49:52 +05:30
Muhsin Keloth
26f23a6e21
feat: Custom fields in pre-chat form (#4189) 2022-04-19 12:47:29 +05:30
Tejaswini Chile
1ccd29140d
Feat: send fb message outside of standard messaging window (#4439) 2022-04-19 12:21:20 +05:30
Sojan Jose
615a575bdd
fix: Agent typing indicator for website widget (#4495)
When we migrated the pubsub tokens from contact to contact inboxes, we missed out on doing this update for the typing indicator events. Hence the agent typing events weren't visible on the widget side. This change fixes that and removes the necessary column contact pubsub token from the model.

fixes: #4476
2022-04-18 19:05:45 +05:30
Muhsin Keloth
e010f0c6f0
chore: Sync pre-chat fields after custom attribute destroy (#4456) 2022-04-18 14:06:27 +05:30
Fayaz Ahmed
337a74a10c
feat: Add send message, fix issues with message conditions (#4423)
Co-authored-by: Tejaswini <tejaswini@chatwoot.com>
2022-04-14 13:36:55 +05:30
Tejaswini Chile
a6b119d187
Feat: twitter image support (#4429) 2022-04-13 01:29:51 +05:30
Tejaswini Chile
923b4637db
chore: Automation bug fix (#4442) 2022-04-12 20:23:34 +05:30
Aswin Dev P.S
31cdc63e18
fix: Remove IMAP and SMTP email validation (#4435)
* Remove IMAP and SMTP email validation
* Rename imap_email & smtp_email columns to imap_login & smtp_login respectively.
* Use channel email domain if inbound email domain not present
2022-04-11 07:07:20 -07:00
Aswin Dev P.S
9b5eb98c59
feat: Support additional authentication mechanisms for SMTP (#4431)
* Support additional authentication mechanisms for SMTP
2022-04-11 03:13:05 -07:00
Muhsin Keloth
fb3ed29c90
chore: Add missing test cases in conversations_controller_spec (#4438) 2022-04-11 14:06:44 +05:30
Aswin Dev P.S
d5536d65f7
feat: Consider business hours while generating the reports (#4330)
* feat: Consider business hours while generating the reports
2022-04-08 00:18:18 -07:00
Tejaswini Chile
57359be37e
Fix: Find mailbox with cc email (#4372) 2022-04-08 11:20:19 +05:30
Pranav Raj S
0b03e4b296
feat: Add an option to disable endConversation button (#4352) 2022-04-06 13:54:55 +05:30
Tejaswini Chile
821b953ee9
Fix: handling UTF encoded mail (#4384) 2022-04-06 12:36:32 +05:30
Muhsin Keloth
cd5646b4b9
fix: Skip contact_last_seen_at in empty conversation payload (#4387)
* Fix undefined `last_seen_at` empty conversation

* chore: remove the comment

Co-authored-by: Sojan Jose <sojan@pepalo.com>
2022-04-05 14:00:07 +05:30
Jordan Brough
73d8073530
chore: Fix test failure in action_cable_listener_spec.rb due to ordering (#4357) 2022-04-04 15:15:45 +05:30
Muhsin Keloth
eff3a50316
fix: Disable showing read messages in unread view (#4324) 2022-03-31 17:35:39 +05:30
Tejaswini Chile
5be9380547
Fix: html mail fix with html_body content (#4011) 2022-03-30 18:04:30 +05:30
Muhsin Keloth
24b20c10ce
fix: Referer URL validation (#4309)
Fixes #354
2022-03-30 14:36:22 +05:30
Tejaswini Chile
bfe6324d9a
chore: Webhook event data improvements (#4317) 2022-03-30 11:37:36 +05:30
Tejaswini Chile
15fd37b124
Feat: attachments automation (#4266) 2022-03-30 08:08:58 +05:30
Tejaswini Chile
3158966241
Feat: automation rule based on contact conditions (#4230) 2022-03-29 17:29:34 +05:30
Fayaz Ahmed
c674393c02
feat: New automation actions (#4033) 2022-03-29 13:27:16 +05:30
Aswin Dev P.S
5e8fd689c9
feat: Add live agent load report api (#4297)
This change allows the admin user to fetch conversation metrics for an account, agents, and filter conversation metrics for a specific agent.

Fixes #4305
2022-03-29 10:31:52 +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
Sojan Jose
823c0ab6a7
chore: Use Round Robin service for team assignment (#4237)
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-03-28 14:38:07 +05:30
Aswin Dev P.S
ba0188aefc
fix: Report spec failure (#4304) 2022-03-28 12:31:09 +05:30
Jordan Brough
a8cfcbc168
chore: Timezone fixes for ReportBuilder and for ReportController spec (#4246)
- ReportBuilder wasn't using the specified time zone for the timestamp in the
"build" method
- The ReportController spec was calling `Time.zone.today.to_time`, but
`Date#to_time` disregards the zone from `Time.zone` and reverts to the system
time zone.
2022-03-25 14:00:27 +05:30
Jordan Brough
131c0a8668
chore: Don't send confirmation email when creating User via platform api (#4272)
The platform api automatically confirms users so we don't need to send this
email.
2022-03-25 00:36:59 +05:30
Sojan Jose
8e153d6350
fix: Redis 6 on Heroku breaks ActionCable config (#4269)
Heroku made some SSL/TLS changes with Redis 6, which is breaking the ActionCable configuration.
Hence providing an environment variable configuration `REDIS_OPENSSL_VERIFY_MODE` to fix that.

set the value `none` for this environment variable in your Heroku installations where breakage occurs.

fixes: #2420
2022-03-24 19:25:07 +05:30
Tejaswini Chile
60a0709de6
Fix: added validation for custom and additional attribute (#4260) 2022-03-24 15:38:28 +05:30
Jordan Brough
14c53b8b54
chore: Use "contain_exactly" in some tests (#4243) 2022-03-24 13:50:04 +05:30
Vishnu Narayanan
7577c9c888
fix: drop conv and campaign seq on account delete (#4256)
Conversation and campaign sequences persist in the database even after the related account is deleted. This PR adds an after_desttory callback on the account model that will delete the associated sequences.

Fixes: #4252
2022-03-24 13:33:15 +05:30
Jordan Brough
0cf970dafd
chore: Eliminate deprecation warning in "app_config_controller_spec.rb" (#4258)
Fix the warning:

Using `should` from rspec-expectations' old `:should` syntax without
explicitly enabling the syntax is deprecated. Use the new `:expect` syntax
or explicitly enable `:should` with `config.expect_with(:rspec) { |c| c.syntax = :should }` instead.
2022-03-24 13:31:19 +05:30
Jordan Brough
c2647a1f27
chore: Use "destroy!" instead of "destroy" when not checking the return value (#4259) 2022-03-24 13:28:25 +05:30
Sojan Jose
f8c46341f6
chore: Disable invalid contact resolved activity messages (#4253)
Fixes the bug which triggered "Contact resolved conversation" activity messages when snoozed conversations where reopened
2022-03-23 16:08:42 +05:30
Tejaswini Chile
7b4cac746a
feat: enhancement to un-send instagram message (#4120) 2022-03-21 17:10:15 +05:30
Tejaswini Chile
e06a6a7c55
Automation enhancement (#4087) 2022-03-21 13:12:27 +05:30