Sha256: ce098b50bb882aa97e73b16f9b7cbf7c1a1e1c09a073e8ec1c79d2eff8acc2d3

Contents?: true

Size: 677 Bytes

Versions: 5

Compression:

Stored size: 677 Bytes

Contents

module Boty
  module Slack
    class Users
      include Slack::URL
      url "https://slack.com/api/users"

      def info(user_id, parameters = {})
        defaults = { user: user_id }
        url = parameterize defaults.merge(parameters), path: ".info"
        info = URL.get url
        Slack::User.new info["user"]
      end

      def list(parameters = {})
        # TODO: this call should be cached.
        url = parameterize parameters, path: ".list"
        users = URL.get url
        users["members"].map { |info|
          Slack::User.new info
        }
      end

      def by_name(name)
        list.find { |user| user.name == name }
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
boty-1.0.1 lib/boty/slack/users.rb
boty-1.0.0 lib/boty/slack/users.rb
boty-0.2.0 lib/boty/slack/users.rb
boty-0.1.2 lib/boty/slack/users.rb
boty-0.1.1 lib/boty/slack/users.rb