Class: RocketChat::Session

Inherits:
Object
  • Object
show all
Defined in:
lib/rocket_chat/session.rb

Overview

Rocket.Chat Session

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(server, token) ⇒ Session

Returns a new instance of Session.

Parameters:

  • server (Server)

    Server

  • token (Token)

    Session token



15
16
17
18
# File 'lib/rocket_chat/session.rb', line 15

def initialize(server, token)
  @server = server
  @token = token.dup.freeze
end

Instance Attribute Details

#serverObject (readonly)

Server



7
8
9
# File 'lib/rocket_chat/session.rb', line 7

def server
  @server
end

#tokenObject (readonly)

Session token



9
10
11
# File 'lib/rocket_chat/session.rb', line 9

def token
  @token
end

Instance Method Details

#channelsObject

Message proxies



45
46
47
# File 'lib/rocket_chat/session.rb', line 45

def channels
  @channels ||= RocketChat::Messages::Channel.new(self)
end

#chatObject



57
58
59
# File 'lib/rocket_chat/session.rb', line 57

def chat
  @chat ||= RocketChat::Messages::Chat.new(self)
end

#groupsObject



49
50
51
# File 'lib/rocket_chat/session.rb', line 49

def groups
  @groups ||= RocketChat::Messages::Group.new(self)
end

#logoutNilClass

logout REST API

Returns:

  • (NilClass)

Raises:



29
30
31
32
# File 'lib/rocket_chat/session.rb', line 29

def logout
  request_json('/api/v1/logout', method: :post)
  nil
end

#meUser

me REST API

Returns:

Raises:



39
40
41
# File 'lib/rocket_chat/session.rb', line 39

def me
  User.new request_json('/api/v1/me', method: :get)
end

#request_json(path, options = {}) ⇒ Object



20
21
22
# File 'lib/rocket_chat/session.rb', line 20

def request_json(path, options = {})
  server.request_json path, options.merge(token: token)
end

#settingsMessages::Settings

Settings messages proxy

Returns:



65
66
67
# File 'lib/rocket_chat/session.rb', line 65

def settings
  @settings ||= RocketChat::Messages::Settings.new(self)
end

#usersObject



53
54
55
# File 'lib/rocket_chat/session.rb', line 53

def users
  @users ||= RocketChat::Messages::User.new(self)
end