功能描述
如果您需屏蔽某人的消息,可以把该用户拉入黑名单。
黑名单
拉黑某人
添加用户到黑名单列表。将用户加入黑名单后可以屏蔽来自 TA 的所有消息,因此该接口可以实现“屏蔽该用户消息”的功能。
说明:
1. 您可以在 即时通信 IM 控制台,找到相应 SDKAppID,单击消息服务 Chat > 功能配置 > 登录与消息 > 黑名单检查,配置发送消息后是否展示发送成功。启用此配置项,用户拉黑他人,拉黑后不再收到来自对方的单聊消息;被拉黑用户侧发消息后仍展示发送成功 (实际对方不会收到消息) 。停用此设置项,则被拉黑用户侧发消息后会提示失败,SDK会收到 错误码 20007 。
2. 黑名单列表上限1000,且不可调整。
3. 如果您需要将好友加入黑名单后仍保留好友关系,请在 即时通信 IM 控制台,找到相应 SDKAppID,单击消息服务 Chat > 功能配置 > 好友与关系链 > 拉黑配置,选择【保留好友关系】。
如果用户 A 与用户 B 之间存在好友关系,拉黑时会解除双向好友关系。
如果用户 A 与用户 B 之间存在黑名单关系,二者之间无法发起会话。
如果用户 A 与用户 B 之间存在黑名单关系,二者之间无法发起加好友请求。
接口
chat.addToBlacklist(options);
参数
参数 options 为 Object 类型,包含的属性值如下:
参数 | 类型 | 说明 |
userIDList | Array | 待添加为黑名单的用户 userID 列表,单次请求的 userID 数不得超过1000 |
返回值
Promise
示例
// 请注意:即使只添加一个用户账号到黑名单,也需要用数组类型,例如:userIDList: ['user1']let promise = chat.addToBlacklist({userIDList: ['user1', 'user2']});promise.then(function(imResponse) {console.log(imResponse.data); // 成功添加到黑名单的账号信息,结构为包含用户 userID 的数组 - [userID]}).catch(function(imError) {console.warn('addToBlacklist error:', imError); // 添加用户到黑名单列表失败的相关信息});
解除拉黑
从黑名单中移除对方后可再次接收对方的消息。
接口
chat.removeFromBlacklist(options);
参数
参数 options 为 Object 类型,包含的属性值如下:
参数 | 类型 | 说明 |
userIDList | Array | 待从黑名单中移除的 userID 列表,单次请求的 userID 数不得超过1000 |
返回值
Promise
示例
// 请注意:即使只从黑名单中移除一个用户账号,也需要用数组类型,例如:userIDList: ['user1']let promise = chat.removeFromBlacklist({userIDList: ['user1', 'user2']});promise.then(function(imResponse) {console.log(imResponse.data); // 从黑名单中成功移除的账号列表,结构为包含用户 userID 的数组 - [userID]}).catch(function(imError) {console.warn('removeFromBlacklist error:', imError); // 将用户从黑名单中移除失败的相关信息});
获取黑名单列表
接口
chat.getBlacklist();
参数
无
返回值
Promise
示例
let promise = chat.getBlacklist();promise.then(function(imResponse) {console.log(imResponse.data); // 我的黑名单列表,结构为包含用户 userID 的数组 - [userID]}).catch(function(imError) {console.warn('getBlacklist error:', imError); // 获取黑名单列表失败的相关信息});