Module: Easemob::Users

Included in:
Easemob
Defined in:
lib/easemob/users.rb

Instance Method Summary collapse

Instance Method Details

#activate_user(username) ⇒ Object



82
83
84
# 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:) ⇒ Object



54
55
56
# 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:) ⇒ Object



42
43
44
# 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) ⇒ Object



4
5
6
7
8
9
# 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) ⇒ Object



11
12
13
14
# 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) ⇒ Object



78
79
80
# File 'lib/easemob/users.rb', line 78

def deactivate_user(username)
  UserMessage.new request :post, "users/#{username}/deactivate"
end

#delete_user(username) ⇒ Object



26
27
28
# File 'lib/easemob/users.rb', line 26

def delete_user(username)
  UserMessage.new request :delete, "users/#{username}"
end

#delete_users!(number = 100) ⇒ Object



30
31
32
# File 'lib/easemob/users.rb', line 30

def delete_users!(number = 100)
  UserMessage.new request :delete, 'users', params: { limit: number }
end

#disconnect_user(username) ⇒ Object



86
87
88
# File 'lib/easemob/users.rb', line 86

def disconnect_user(username)
  UserMessage.new request :get, "users/#{username}/disconnect"
end

#get_user(username) ⇒ Object



16
17
18
# 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) ⇒ Object



70
71
72
# 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) ⇒ Object



74
75
76
# 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) ⇒ Object



66
67
68
# 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) ⇒ Object



62
63
64
# 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) ⇒ Object



50
51
52
# 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) ⇒ Object



20
21
22
23
24
# 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:) ⇒ Object



58
59
60
# 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:) ⇒ Object



46
47
48
# 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:) ⇒ Object



34
35
36
# 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:) ⇒ Object



38
39
40
# File 'lib/easemob/users.rb', line 38

def set_user_nickname(username, nickname:)
  UserMessage.new request :put, "users/#{username}", json: { nickname: nickname }
end