module Easemob::Groups

Public Instance Methods

add_to_group_block(group_id, to_block_usernames:) click to toggle source
# File lib/easemob/groups.rb, line 66
def add_to_group_block(group_id, to_block_usernames:)
  GroupMessage.new request :post, "chatgroups/#{group_id}/blocks/users", json: { usernames: [*to_block_usernames] }
end
create_group(groupname, description, owner, members: nil, is_public: true, maxusers: 200, is_approval: false) click to toggle source
# File lib/easemob/groups.rb, line 4
def create_group(groupname, description, owner, members: nil, is_public: true, maxusers: 200, is_approval: false)
  jd = { groupname: groupname, desc: description, public: is_public, owner: owner, maxusers: maxusers, approval: is_approval }
  jd[:members] = members unless members.nil?
  GroupMessage.new request :post, 'chatgroups', json: jd
end
delete_group(group_id) click to toggle source
# File lib/easemob/groups.rb, line 32
def delete_group(group_id)
  GroupMessage.new request :delete, "chatgroups/#{group_id}"
end
get_groups(group_ids) click to toggle source
# File lib/easemob/groups.rb, line 10
def get_groups(group_ids)
  GroupMessage.new request :get, "chatgroups/#{[*group_ids].join(',')}"
end
group_add_users(group_id, usernames:) click to toggle source
# File lib/easemob/groups.rb, line 54
def group_add_users(group_id, usernames:)
  GroupMessage.new request :post, "chatgroups/#{group_id}/users", json: { usernames: [*usernames] }
end
group_remove_users(group_id, usernames:) click to toggle source
# File lib/easemob/groups.rb, line 58
def group_remove_users(group_id, usernames:)
  GroupMessage.new request :delete, "chatgroups/#{group_id}/users/#{[*usernames].join(',')}"
end
group_set_owner(group_id, newowner:) click to toggle source
# File lib/easemob/groups.rb, line 62
def group_set_owner(group_id, newowner:)
  GroupMessage.new request :put, "chatgroups/#{group_id}", json: { newowner: newowner }
end
modify_group(group_id, groupname: nil, description: nil, maxusers: nil, newowner: nil) click to toggle source
# File lib/easemob/groups.rb, line 36
def modify_group(group_id, groupname: nil, description: nil, maxusers: nil, newowner: nil)
  jd = {}
  jd[:groupname] = groupname unless groupname.nil?
  jd[:description] = description unless description.nil?
  jd[:maxusers] = maxusers unless maxusers.nil?
  jd[:newowner] = newowner unless newowner.nil?

  GroupMessage.new request :put, "chatgroups/#{group_id}", json: jd
end
query_group_blocks(group_id) click to toggle source
# File lib/easemob/groups.rb, line 24
def query_group_blocks(group_id)
  GroupMessage.new request :get, "chatgroups/#{group_id}/blocks/users"
end
query_group_users(group_id) click to toggle source
# File lib/easemob/groups.rb, line 20
def query_group_users(group_id)
  GroupMessage.new request :get, "chatgroups/#{group_id}/users"
end
query_groups(limit = 50, cursor: nil) click to toggle source
# File lib/easemob/groups.rb, line 14
def query_groups(limit = 50, cursor: nil)
  params = { limit: limit }
  params[:cursor] = cursor unless cursor.nil?
  GroupMessage.new request :get, 'chatgroups', params: params
end
remove_from_group_block(group_id, blocked_usernames:) click to toggle source
# File lib/easemob/groups.rb, line 70
def remove_from_group_block(group_id, blocked_usernames:)
  GroupMessage.new request :delete, "chatgroups/#{group_id}/blocks/users/#{[*blocked_usernames].join(',')}"
end
user_join_group(group_id, username:) click to toggle source
# File lib/easemob/groups.rb, line 46
def user_join_group(group_id, username:)
  GroupMessage.new request :post, "chatgroups/#{group_id}/users/#{username}"
end
user_joined_chatgroups(username) click to toggle source
# File lib/easemob/groups.rb, line 28
def user_joined_chatgroups(username)
  GroupMessage.new request :get, "users/#{username}/joined_chatgroups"
end
user_leave_group(group_id, username:) click to toggle source
# File lib/easemob/groups.rb, line 50
def user_leave_group(group_id, username:)
  GroupMessage.new request :delete, "chatgroups/#{group_id}/users/#{username}"
end