Class: Lita::Adapters::Slack::API

Inherits:
Object
  • Object
show all
Defined in:
lib/lita/adapters/slack/api.rb

Instance Method Summary collapse

Constructor Details

#initialize(config, stubs = nil) ⇒ API

Returns a new instance of API.



12
13
14
15
# File 'lib/lita/adapters/slack/api.rb', line 12

def initialize(config, stubs = nil)
  @config = config
  @stubs = stubs
end

Instance Method Details

#im_open(user_id) ⇒ Object



17
18
19
20
21
# File 'lib/lita/adapters/slack/api.rb', line 17

def im_open(user_id)
  response_data = call_api("im.open", user: user_id)

  SlackIM.new(response_data["channel"]["id"], user_id)
end

#rtm_startObject



27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/lita/adapters/slack/api.rb', line 27

def rtm_start
  response_data = call_api("rtm.start")

  TeamData.new(
    SlackIM.from_data_array(response_data["ims"]),
    SlackUser.from_data(response_data["self"]),
    SlackUser.from_data_array(response_data["users"]),
    SlackChannel.from_data_array(response_data["channels"]) +
      SlackChannel.from_data_array(response_data["groups"]),
    response_data["url"],
  )
end

#set_topic(channel, topic) ⇒ Object



23
24
25
# File 'lib/lita/adapters/slack/api.rb', line 23

def set_topic(channel, topic)
  call_api("channels.setTopic", channel: channel, topic: topic)
end