module Easemob::Users

Public Instance Methods

activate_user(username) click to toggle source
# File lib/easemob/users.rb, line 82
def activate_user(username)
  UserMessage.new request :post, "users/#{username}/activate"
end
add_to_user_block(owner_username, to_block_usernames:) click to toggle source
# File lib/easemob/users.rb, line 54
def add_to_user_block(owner_username, to_block_usernames:)
  UserMessage.new request :post, "users/#{owner_username}/blocks/users", json: { usernames: [*to_block_usernames] }
end
add_user_friend(owner_username, friend_username:) click to toggle source
# File lib/easemob/users.rb, line 42
def add_user_friend(owner_username, friend_username:)
  UserMessage.new request :post, "users/#{owner_username}/contacts/users/#{friend_username}"
end
create_user(username, password, nickname: nil) click to toggle source
# File lib/easemob/users.rb, line 4
def create_user(username, password, nickname: nil)
  valid_username!(username)
  jd = { username: username, password: password }
  jd[:nickname] = nickname unless nickname.nil?
  UserMessage.new request :post, 'users', json: jd
end
create_users(users) click to toggle source
# File lib/easemob/users.rb, line 11
def create_users(users)
  users.map { |user| valid_username!(user['username'] || user[:username]) }
  UserMessage.new request :post, 'users', json: users
end
deactivate_user(username) click to toggle source
# File lib/easemob/users.rb, line 78
def deactivate_user(username)
  UserMessage.new request :post, "users/#{username}/deactivate"
end
delete_user(username) click to toggle source
# File lib/easemob/users.rb, line 26
def delete_user(username)
  UserMessage.new request :delete, "users/#{username}"
end
delete_users!(number = 100) click to toggle source
# File lib/easemob/users.rb, line 30
def delete_users!(number = 100)
  UserMessage.new request :delete, 'users', params: { limit: number }
end
disconnect_user(username) click to toggle source
# File lib/easemob/users.rb, line 86
def disconnect_user(username)
  UserMessage.new request :get, "users/#{username}/disconnect"
end
get_user(username) click to toggle source
# File lib/easemob/users.rb, line 16
def get_user(username)
  UserMessage.new request :get, "users/#{username}"
end
get_user_offline_msg_count(owner_username) click to toggle source
# File lib/easemob/users.rb, line 70
def get_user_offline_msg_count(owner_username)
  UserMessage.new request :get, "users/#{owner_username}/offline_msg_count"
end
get_user_offline_msg_status(username, msg_id) click to toggle source
# File lib/easemob/users.rb, line 74
def get_user_offline_msg_status(username, msg_id)
  UserMessage.new request :get, "users/#{username}/offline_msg_status/#{msg_id}"
end
get_user_status(username) click to toggle source
# File lib/easemob/users.rb, line 66
def get_user_status(username)
  UserMessage.new request :get, "users/#{username}/status"
end
query_user_blocks(owner_username) click to toggle source
# File lib/easemob/users.rb, line 62
def query_user_blocks(owner_username)
  UserMessage.new request :get, "users/#{owner_username}/blocks/users"
end
query_user_friends(owner_username) click to toggle source
# File lib/easemob/users.rb, line 50
def query_user_friends(owner_username)
  UserMessage.new request :get, "users/#{owner_username}/contacts/users"
end
query_users(limit = 50, cursor: nil) click to toggle source
# File lib/easemob/users.rb, line 20
def query_users(limit = 50, cursor: nil)
  params = { limit: limit }
  params[:cursor] = cursor unless cursor.nil?
  UserMessage.new request :get, 'users', params: params
end
remove_from_user_block(owner_username, blocked_username:) click to toggle source
# File lib/easemob/users.rb, line 58
def remove_from_user_block(owner_username, blocked_username:)
  UserMessage.new request :delete, "users/#{owner_username}/blocks/users/#{blocked_username}"
end
remove_user_friend(owner_username, friend_username:) click to toggle source
# File lib/easemob/users.rb, line 46
def remove_user_friend(owner_username, friend_username:)
  UserMessage.new request :delete, "users/#{owner_username}/contacts/users/#{friend_username}"
end
reset_user_password(username, newpassword:) click to toggle source
# File lib/easemob/users.rb, line 34
def reset_user_password(username, newpassword:)
  UserMessage.new request :put, "users/#{username}/password", json: { newpassword: newpassword }
end
set_user_nickname(username, nickname:) click to toggle source
# File lib/easemob/users.rb, line 38
def set_user_nickname(username, nickname:)
  UserMessage.new request :put, "users/#{username}", json: { nickname: nickname }
end

Private Instance Methods

valid_username!(username) click to toggle source
# File lib/easemob/users.rb, line 92
def valid_username!(username)
  raise UserNameError, "#{username} is invalid for easemob" unless username[/[a-zA-Z0-9_-]*/] == username
end