diff options
Diffstat (limited to 'app/models/project_services/slack_slash_commands_service.rb')
-rw-r--r-- | app/models/project_services/slack_slash_commands_service.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/app/models/project_services/slack_slash_commands_service.rb b/app/models/project_services/slack_slash_commands_service.rb new file mode 100644 index 00000000000..cb19ebf4cad --- /dev/null +++ b/app/models/project_services/slack_slash_commands_service.rb @@ -0,0 +1,28 @@ +class SlackSlashCommandsService < ChatSlashCommandsService + include TriggersHelper + + def title + 'Slack Command' + end + + def description + "Perform common operations on GitLab in Slack" + end + + def to_param + 'slack_slash_commands' + end + + def trigger(params) + # Format messages to be Slack-compatible + super.tap do |result| + result[:text] = format(result[:text]) + end + end + + private + + def format(text) + Slack::Notifier::LinkFormatter.format(text) if text + end +end |