Vishnu Narayanan
9527ff6269
feat: Add support for labels in automations ( #11658 )
...
- Add support for using labels as an action event for automation
- Fix duplicated conversation_updated event dispatch for labels
Fixes https://github.com/chatwoot/chatwoot/issues/8539 and multiple
issues around duplication related to label change events.
---------
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
2025-09-18 14:17:54 +05:30
Sojan Jose
45d4d3660c
feat: Add private note action to automations ( #11926 )
...
## Summary
- allow AutomationRule to accept `add_private_note` action
- support `add_private_note` in automation action service
- expose private note action in frontend constants and i18n
- test new automation rule action
## Testing
- `pnpm eslint
app/javascript/dashboard/routes/dashboard/settings/automation/constants.js`
- `bundle exec rubocop app/services/automation_rules/action_service.rb
app/models/automation_rule.rb
spec/services/automation_rules/action_service_spec.rb`
- `bundle exec rspec
spec/services/automation_rules/action_service_spec.rb`
------
https://chatgpt.com/codex/tasks/task_e_6870c5f7b8b88326a9bd60b2ba710ccd
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
2025-07-16 09:57:35 +05:30
Shivam Mishra
b34dac7bbe
feat: validate query conditions ( #10595 )
...
Query conditions can take in arbitrary values, this can cause SQL
errors. This PR fixes it
2024-12-17 17:16:37 +05:30
Shivam Mishra
9a1c54a82d
feat: disable automation rules if condition fails multiple times ( #9017 )
...
* feat: add email for disabling automation rule
* feat: disable automation rules and notify admin
* feat: reset error count after update
* feat: trigger invalid_condition_error if rule is invalid
* feat: setup error trackable concern
* refactor: use ErrorTrackable in Reauthorizable
* fix: optional argument
* feat: separate reauthorization_required_key
* test: update case to use ERROR_TRACKABLE_COUNT
* Revert "test: update case to use ERROR_TRACKABLE_COUNT"
This reverts commit f439847147556a02759a7597a7fcf1d66091cafc.
* Revert "feat: separate reauthorization_required_key"
This reverts commit f4514fce217b0a2f2c2bf701a15de0a8b47acbc4.
* Revert "fix: optional argument"
This reverts commit 93b4194ec3f10f67e2402388c966c071c4d3b4fd.
* Revert "refactor: use ErrorTrackable in Reauthorizable"
This reverts commit 513c2a522bc782e73ea4b0f5ae34ce01e70e042c.
* Revert "feat: setup error trackable concern"
This reverts commit 278683060cf422f60af5d5c77100aa5272141141.
* feat: use reauthorizable for automation rule
* feat: remove redis key
* test: fix method names
* chore: refactor
---------
Co-authored-by: Vishnu Narayanan <iamwishnu@gmail.com >
Co-authored-by: Sojan <sojan@pepalo.com >
2024-03-28 13:14:16 +05:30
Pranav
f78f278e2f
fix: Update validations for filter service ( #8239 )
...
- Refactor filter service for better readability and maintenance
- Add validations for the following:
- If an invalid attribute is passed, a custom exception InvalidAttribute will be thrown.
- If an invalid operator is passed, a custom exception InvalidOperator will be thrown.
- If an invalid value (currently checking only null check), a custom exception InvalidValue will be thrown.
Fixes: https://linear.app/chatwoot/issue/CW-2702/activerecordstatementinvalid-pginvalidtextrepresentation-error-invalid
Fixes: https://linear.app/chatwoot/issue/CW-2703/activerecordstatementinvalid-pginvaliddatetimeformat-error-invalid
Fixes: https://linear.app/chatwoot/issue/CW-2700/activerecordstatementinvalid-pgsyntaxerror-error-syntax-error-at-or
Co-authored-by: Sojan <sojan@pepalo.com >
2024-03-20 16:29:36 +05:30
Shivam Mishra
1dc66db516
fix: SQL error when rules with missing attributes is triggered ( #8673 )
2024-01-22 16:09:34 +05:30
Shivam Mishra
8b7f10fe61
feat: log errors on automation filter ( #8702 )
...
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com >
2024-01-16 16:13:57 +05:30
Tejaswini Chile
879a244f93
fix: Automations condition based quoted text ( #7272 )
2023-06-09 17:00:05 +05:30
Tejaswini Chile
d1ac33e98c
feat: Phone number based automation conditions ( #6783 )
2023-04-02 10:54:51 +05:30
Sojan Jose
7930902ec8
chore: Refactor Automation Specs ( #6796 )
...
The current way of writing specs for automation in one single file automation_listener isn't effective. Hence we are breaking down the specs for each class into separate spec files.
fixes: CW-1447
2023-03-30 21:02:52 +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
a274a1702a
chore: Macros enhancement ( #5609 )
...
- Fixed send_attachment and send_email_transcript
- Fixed duplicate activity messages
- Fixed Order of execution
Fixes : #5584
2022-10-20 19:41:48 -07:00
Tejaswini Chile
747ce9c80f
fix: Update automation to use case-insensitive filter ( #5302 )
2022-08-22 10:16:50 +05:30
Tejaswini Chile
6a4c0a1578
feat: Execute macro actions, for the conversation ( #5066 )
2022-07-26 12:41:22 +05:30
Tejaswini Chile
aa903a5da9
Fix: backend changes for custom attribute ( #4830 )
2022-06-13 11:58:54 +05:30
Tejaswini Chile
56f668db6b
feat: Attribute changed filter for automations ( #4621 )
2022-06-07 13:01:01 +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
Pranav Raj S
8348392d43
fix: Disable automation on tweets ( #4571 )
...
Fixes #4565
2022-04-27 20:10:40 +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
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
923b4637db
chore: Automation bug fix ( #4442 )
2022-04-12 20:23:34 +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
Tejaswini Chile
e06a6a7c55
Automation enhancement ( #4087 )
2022-03-21 13:12:27 +05:30
Fayaz Ahmed
5ad6db07b4
fix: Automation Bugs and minor enhancements ( #3936 )
2022-02-15 23:36:29 +05:30
Tejaswini Chile
7df68c6388
Feat: Automations Actions ( #3564 )
2022-01-13 11:21:06 +05:30
Tejaswini Chile
a0884310f4
feat: Save automation rules ( #3359 )
2022-01-10 12:41:59 +05:30