lib/slack/web/api/mixins/users.id.rb
module Slack module Web module Api module Mixins module Users # # This method returns a user ID given a user name. # # @option options [user] :user # User to get ID for, prefixed with '@'. def users_id(options = {}) name = options[:user] throw ArgumentError.new('Required arguments :user missing') if name.nil? return { 'ok' => true, 'user' => { 'id' => name } } unless name[0] == '@' users_list.tap do |list| list.members.each do |user| return Slack::Messages::Message.new('ok' => true, 'user' => { 'id' => user.id }) if user.name == name[1..-1] end end fail Slack::Web::Api::Error, 'user_not_found' end end end end end end