Commit graph

541 commits

Author SHA1 Message Date
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
Pranav Raj S
b77fad52fb
fix: Add missing contact information to fix invalid activity messages (#4195)
Co-authored-by: Tejaswini <tejaswini@chatwoot.com>
2022-03-18 13:43:02 +05:30
Tejaswini Chile
207a03155e
Feat: authenticate direct upload (#4160) 2022-03-16 13:54:18 +05:30
Aswin Dev P.S
c4837cd7ac
feat: End conversation from widget (#3660)
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: Fayaz Ahmed <15716057+fayazara@users.noreply.github.com>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-03-15 22:07:30 +05:30
Pranav Raj S
4b748e2c8c
fix: Delete content_attributes in message destroy API (#4184) 2022-03-15 22:01:16 +05:30
Tejaswini Chile
647efa12e7
fix: Attach instagram images with file type story_mentions (#4100) 2022-03-10 20:27:30 +05:30
Aswin Dev P.S
b94e67f5d7
feat: Add agents filter in CSAT reports (#4106)
* add agents filter in csat reports
2022-03-04 03:49:26 -08:00
Sojan Jose
7b9e4982cf
Feat: Support MMS in SMS Channel ( Bandwidth ) (#4046)
Ability to send and receive MMS to bandwidth channel

fixes: #3961
2022-03-02 15:09:56 +05:30
Sojan Jose
4260441f8c
Chore: clean up Reporting Events (#4044)
Tech debt clean up

Fixes #4057

Co-authored-by: Aswin Dev P S <aswin@chatwoot.com>
2022-02-28 18:16:12 +05:30
Muhsin Keloth
aff14b697f
chore: Add webhook URL validation (#4080) 2022-02-28 15:44:02 +05:30
Muhsin Keloth
46c1734ba1
feat: Add additional attributes in setUser method (#3958) 2022-02-28 12:10:55 +05:30
Sojan Jose
4ca66c1195
fix: Automation loop on conversation_update (#4071) 2022-02-25 18:01:21 +05:30
Tejaswini Chile
1ca1b4d36b
feat: bulk actions to update conversation objects (#3934)
Added the endpoints for bulk updating conversation objects

Fixes: #3845 #3940 #3943
2022-02-23 16:53:36 +05:30
Sojan Jose
eb0da2026f
chore: Bundle update (#4038)
- address the nokogiri security issues
2022-02-22 16:06:04 +05:30
Aswin Dev P.S
e348db1e37
Fix: add option to choose 24 hour working slot (#4018)
* Add option to choose 24 hour working slot

* fix spec

* add check to update open hour and close hour for open all day

* update 24 hour working slot change in widget side

* add validation to check open_all_day and closed_all_day true at the same time
2022-02-22 01:28:49 -08:00
Pranav Raj S
ea44a32758
feat: Add hCaptcha for public forms (#4017)
- added hCaptcha based verification for chatwoot signups

Co-authored-by: Sojan <sojan@pepalo.com>
2022-02-18 20:02:50 +05:30
Fayaz Ahmed
5ad6db07b4
fix: Automation Bugs and minor enhancements (#3936) 2022-02-15 23:36:29 +05:30
Sojan Jose
5ad7e93059
chore: Discard activities from email notifiable messages (#3989) 2022-02-15 18:15:45 +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
Aswin Dev P.S
464e12ceb7
fix: Update auto reply and hide reply time for email inbox (#3985)
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-02-15 17:11:28 +05:30
Aswin Dev P.S
e6f8895c1b
feat: Group by filter in reports (#3973) 2022-02-15 17:10:49 +05:30
Pranav Raj S
2591a04c0b
chore: Remove message_signature_enabled from users (#3982) 2022-02-15 12:10:53 +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
dependabot[bot]
f34a2e6115
chore(deps): bump puma from to 5.6.2, rails to 6.1.4.6 (#3969) 2022-02-14 20:09:21 +05:30
Tejaswini Chile
25001689ec
fix: Use to_i in campaign scheduled_at key (#3968) 2022-02-14 11:20:31 +05:30
Muhsin Keloth
2da618bd5e
feat: Add conversation_created event in webhooks (#3949) 2022-02-14 09:44:25 +05:30
Aswin Dev P.S
4e416b4d51
Add openssl verify mode and email encryption for smtp configuration (#3885)
* Add openssl verify mode and email encryption for smtp configuration
* Add spec for code coverage
2022-02-08 03:26:13 -08:00
Muhsin Keloth
4ae9ed8f94
chore: Assign the conversation to agent who opens the conversation (#3925) 2022-02-08 16:39:19 +05:30
Pranav Raj S
2a07eae69f
fix: URL encode params on Platform API call (#3929)
Add URL encoding for the params in platform API calls.

Fixes: product#307
Fixes: #2186
2022-02-07 15:17:36 -08:00
Muhsin Keloth
a737f89c47
fix: Ongoing campaign URL validation (#3890) 2022-02-04 14:38:18 +05:30
Tejaswini Chile
a7987d4d1c
feat: Add date custom filter (#3892) 2022-02-04 13:14:20 +05:30
Sojan Jose
9454c6b14f
Fix: Conversation filter permissions (#3908)
fixes: chatwoot/product#225
2022-02-03 18:25:28 -08:00
Sojan Jose
cf10f3d03b
chore: Provider APIs for SMS Channel - Bandwidth (#3889)
fixes: #3888
2022-02-03 15:22:13 -08:00
Tejaswini Chile
fba7f40bee
Fix: Custom filter distinct select (#3895) 2022-02-03 14:39:47 +05:30
Pranav Raj S
8dcb4a5ed4
chore: Add resolve action in Dialogflow Integration (#3900) 2022-02-03 12:05:39 +05:30
Muhsin Keloth
903072ef14
chore: Add custom attributes in conversation webhook payload (#3839) 2022-02-03 10:05:56 +05:30
Tejaswini Chile
8821106da9
Fix: Added the backend validation for name (#3878)
- Added the backend validation for name
- Add message size constraint
2022-02-02 14:21:17 -08:00
Tejaswini Chile
e99ea0b582
feat: Email signature API support (#3874) 2022-02-02 19:37:33 +05:30
Tejaswini Chile
a95d249ec1
Feat: Custom attribute advanced filter (#3818) 2022-01-31 13:36:44 +05:30
Sojan Jose
59deffc7e3
feat: Ability to toggle conversation continuity via email (#3817)
Fixes: #3368
Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2022-01-26 15:59:48 -08:00
Sojan Jose
34e8ad9dc5
feat: Unify user and super admin credentials (#3830)
Fixes: #3061, #3489
2022-01-25 16:58:49 -08:00
Sojan Jose
693f2531ab
feat: Support 360Dialog Interactive Templates (#3823)
fixes: #3795
2022-01-20 17:09:30 -08:00
Tejaswini Chile
e997aaceb7
Fix: Email Parsing for html fix (#3659) 2022-01-20 15:55:35 -08:00
Tejaswini Chile
a7c947aeae
feat: Clone and update automation rules (#3782)
- endpoints to clone and update automation rules

fixes: #3740
2022-01-20 15:30:21 -08:00
Shivam Chahar
9617137688
chore: Account auto resolution time validation (#3651) 2022-01-19 13:16:21 +05:30
Tejaswini Chile
7df68c6388
Feat: Automations Actions (#3564) 2022-01-13 11:21:06 +05:30
Sojan Jose
905fd62974
chore: Support Whatsapp Interactive messages (360Dialog) (#3751)
Render button and list reply clicks as text messages in agent dashboard

fixes: #3684
2022-01-12 19:42:23 -08:00
Sojan Jose
1c99294c8c
chore: Fix 360Dialog template message breakage (#3750)
Template parsing fails when regexp characters are present in templates.

Fixes: #3587
2022-01-12 17:41:42 -08:00
Vishnu Narayanan
acba07cf6e
chore: revert GlobalConfig changes (#3702)
Priority to GlobalConfig changes are reverted and for the time being, env vars will take precedence if set.

Fixes #3699
2022-01-11 19:20:23 -08:00
Sojan Jose
ebb04487a8
chore: Prevent null in Contact JSONB attributes (#3730) 2022-01-11 15:14:55 -08:00
Aswin Dev P.S
7ee7062843
feat: Toggle to disallow users to send messages after a conversation is resolved (#3605) 2022-01-11 00:32:03 -08:00
Tejaswini Chile
a0884310f4
feat: Save automation rules (#3359) 2022-01-10 12:41:59 +05:30
Muhsin Keloth
e1fe4f09bc
chore: Add subscription delete API (#3703) 2022-01-06 21:40:43 +05:30
Vishnu Narayanan
e775d22b98
feat: add new view and controller to display app configs together (#3563)
fixes: #3578
2022-01-04 21:50:16 +05:30
Sojan Jose
577e9905c6
chore: Fix issue with conversation assignment notifications (#3661)
- fixes issues with conversation assignment notifications not working in certain cases
2021-12-28 21:53:13 +05:30
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
c57c975a0d
bug: NoMethodError: undefined method `match' for in_reply_to (#3641)
Fixes #3615
2021-12-22 22:33:18 +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
Sojan Jose
009abc1948
chore: API improvements (#3637)
- Unique validations for Inbox members and Team member objects
- Move notification processing to Async
2021-12-21 22:48:01 +05:30
Muhsin Keloth
262474166f
chore: Add display id in all conversation notifications (#3635)
- Added conversation display id in push payload for the notifications conversation_creation and conversation_assignment
2021-12-21 19:59:22 +05:30
Amit Kumar
6069cd9eba
chore: Contact builder ignores custom attributes (#3571)
This is incorrect as per the documentation here: https://www.chatwoot.com/developers/api/#operation/create-a-contact
This allows setting the proper attributes when creating a contact
2021-12-19 10:59:03 +05:30
Aswin Dev P.S
5ee209c079
chore: Fix user email re-confirmation flow (#3581)
Users can change their email from profile settings. They will be logged out immediately. Users can log in again with the updated email without verifying the same. This is a security problem.

So this change enforce the user to reconfirm the email after changing it. Users can log in with the updated email only after the confirmation.

Fixes: https://huntr.dev/bounties/7afd04b4-232e-4907-8a3c-acf8bd4b5b22/
2021-12-16 19:32:49 +05:30
Tejaswini Chile
9984edd3ef
Feat: Manage conversation for tweets based on the tweet flag (#3353)
Add tweet conversation only if tweets are enabled.

Fixes #1961
2021-12-16 00:24:50 +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
b1eea7f7d1
chore: Introduce enterprise edition license (#3209)
- Initialize an "enterprise" folder that is copyrighted.
- You can remove this folder and the system will continue functioning normally, in case you want a purely MIT licensed product.
- Enable limit on the number of user accounts in enterprise code.
- Use enterprise edition injector methods (inspired from Gitlab).
- SaaS software would run enterprise edition software always.

Co-authored-by: Pranav Raj S <pranav@chatwoot.com>
2021-12-09 12:07:48 +05:30
Pranav Raj S
2f63ebb8a6
fix: Add fixes for sentry errors (#3522)
- Add fixes for sentry errors
2021-12-09 11:50:28 +05:30
Sojan Jose
1db82f235d
Chore: Improve confirmation flow for agents (#3519)
- Agents are redirected to the password reset page which confirms the agent as well as sets a new password.
2021-12-09 11:11:46 +05:30
thedev105
6d378eb206
Fix: Update contact validation messages (#3500)
Fixes #3476
2021-12-03 13:19:11 +05:30
Sojan Jose
0115b4ddc4
chore: validation spec for schedules (#3480)
We had instances where after copy-pasting the schedule block, the dev forgets to change the schedule key,
This would break some of the scheduled jobs without explicit errors.

this PR add a spec that will prevent it from happening
2021-11-30 21:44:30 +05:30
Sojan Jose
d5c30760a7
chore: Whatsapp templates fix for 360 dialog (#3479)
Fixes: #3426
2021-11-30 20:50:35 +05:30
Shivam Chahar
a4ee8ee239
Chore: Improve conversation auto resolution (#3405)
Fixes: #1583
2021-11-27 09:26:18 +05:30