class Slack::RPC::Client

## Slack::RPC::Client A class for Slack RPC-Style API client

Public Class Methods

new(token = nil) click to toggle source

### Slack::RPC::Client.new(token) Creates a new instance of `Slack::RPC::Client` class

# File lib/slack/rpc/client.rb, line 15
def initialize(token = nil)
        @conn = Connection.new(token)
        define_command(@conn, "api",      %w{test})
        define_command(@conn, "auth",     %w{test})
        define_command(@conn, "channels", %w{archive create history info invite join kick leave list mark rename setPurpose setTopic unarchive})
        define_command(@conn, "chat",     %w{delete postMessage update})
        define_command(@conn, "emoji",    %w{list})
        define_command(@conn, "files",    %w{info list upload})
        define_command(@conn, "groups",   %w{archive close create createChild history invite kick leave list mark open rename setPurpose setTopic unarchive})
        define_command(@conn, "im",       %w{close history list mark open})
        define_command(@conn, "oauth",    %w{access})
        define_command(@conn, "rtm",      %w{start})
        define_command(@conn, "search",   %w{all files messages})
        define_command(@conn, "stars",    %w{list})
        define_command(@conn, "users",    %w{getPresence info list setActive setPresence})
end

Public Instance Methods

token() click to toggle source

### Slack::RPC::Client.token() get current token

# File lib/slack/rpc/client.rb, line 35
def token
        @conn.token
end
token=(token) click to toggle source

### Slack::RPC::Client.token=(token) set new token

# File lib/slack/rpc/client.rb, line 42
def token=(token)
        @conn.token = token
end

Private Instance Methods

define_command(conn, name, sub_commands) click to toggle source

### Slack::RPC::Client.define_command(conn, name, sub_commands) Create `Slack::RPC::Command` object and store it as instance variable and expose it

# File lib/slack/rpc/client.rb, line 51
def define_command(conn, name, sub_commands)
        command = Command.new(conn, name, sub_commands)
        instance_variable_set(:"@#{name}", command)
        self.class.class_eval('attr_reader :"#{name}"')
end