summaryrefslogtreecommitdiff
path: root/lib/mattermost/command.rb
blob: e159458a788f6ecfe91e1ca4733855d2caa61074 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
module Mattermost
  class Command
    def self.all(team_id)
      Mattermost::Mattermost.get("/teams/#{team_id}/commands/list_team_commands")
    end

    # params should be a hash, which supplies _at least_:
    # - trigger => The slash command, no spaces, cannot start with a /
    # - url => What is the URL to trigger here?
    # - icon_url => Supply a link to the icon
    def self.create(team_id, params)
      params = {
        auto_complete: true,
        auto_complete_desc: 'List all available commands',
        auto_complete_hint: '[help]',
        description: 'Perform common operations on GitLab',
        display_name: 'GitLab',
        method: 'P',
        user_name: 'GitLab'
      }..merge(params)

      Mattermost::Mattermost.post( "/teams/#{team_id}/commands/create", params.to_json).
        parsed_response['token']
    end
  end
end