class FerrisBueller::SlackAPI
Public Class Methods
new(options={})
click to toggle source
# File lib/ferris-bueller/slack_api.rb, line 11 def initialize options={} @token = options.fetch :token @logger = options.fetch :logger, Slog.new @api_url = options.fetch :api_url, 'https://slack.com/api' log.debug event: 'Slack API client initialized' end
Public Instance Methods
send(method, options={})
click to toggle source
# File lib/ferris-bueller/slack_api.rb, line 18 def send method, options={} uri = URI File.join(@api_url, method) options = { token: @token }.merge(options) log.debug event: 'sending api request', method: method, options: options res = Net::HTTP.post_form uri, options log.debug event: 'sent api request', method: method, options: options, response: res JSON.parse res.body, symbolize_names: true end
Private Instance Methods
log()
click to toggle source
# File lib/ferris-bueller/slack_api.rb, line 28 def log ; @logger end