* FEATURE: Add chat integration reference post
This class works similar to a post but it is not a post.
* DEV: change how `excerpt` method works
* feature: Add `send_chat_integration_message` scriptable
add `send_chat_integration_message` scriptable that uses the rules to send a message to the chat provider
add locale strings for the new scriptable
update `ChatIntegrationReferencePost` `excerpt` method
add tests for `ChatIntegrationReferencePost`
* DEV: Add `get_channel_by_name` to every provider
This makes using `trigger_notification` easier with every provider as well.
* DEV: Add `get_channel_name` to all providers
This method gets the name of the channel based on how the provider identifies it.
Updates channel_name in locales yaml
Adds migrate_tag_added_filter_to_all_providers.rb to move all existing rules to use Automation
* DEV: Add removal of old migration data
Update small action locales with strings from core
* DEV: solve review comments
* DEV: update test locale strings
* DEV: remove empty line to trigger lint
* DEV: lint applied
* DEV: Add tests for automation integration
* DEV: add rails logger for when automatio error occurs
* DEV: move migration to be SQL only
Update provider helper to use hashes instead of dot notation
* DEV: update migration with correct table names
* DEV: Update migrate_tag_added_filter_to_all_providers to use smaller SQL queries
Commented out migrate_tag_added_from_filter_to_automation.rb
* DEV: update comments in migration file
* DEV: update indentation in client.en.yml
* DEV: update with review comments
* Update spec/lib/discourse_chat_integration/chat_integration_reference_post_spec.rb
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
* Update spec/lib/discourse_chat_integration/chat_integration_reference_post_spec.rb
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
* Update spec/lib/discourse_chat_integration/chat_integration_reference_post_spec.rb
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
* Update spec/integration/automation_spec.rb
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
* Update lib/discourse_chat_integration/chat_integration_reference_post.rb
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
* DEV: update specs with review comments
* DEV: update typos in tests
* DEV: inlined functions for getting channel name for provider in migration
---------
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
This patch concerns the Telegram integration. Currently, we always try
to process commands when we receive a hook from Telegram. To do so we
rely on the `text` parameters from a Telegram message but the
API documentation tells us this parameters is actually optional. It
means sometimes it’s not present in the payload we receive but we still
try to access it resulting in a crash.
This patch addresses the issue by simply returning early from the
`#process_command` method when `text` is missing from the payload since
we don’t have anything to process then.
This commit centralizes 'display name' generation into a helper, and updates it to respect core preferences for `enable_names` and `prioritize_username_in_ux`.