跳到主要内容

黑名单管理

将用户加入黑名单之后,将不再收到对方发来的任何单聊消息。

  • 加入黑名单为单向操作,例如:用户 A 拉黑用户 B,代表 B 无法给 A 发消息(错误码 405)。但 A 向 B 发消息,B 仍然能正常接收。
  • 单个用户的黑名单总人数存在上限,具体与计费套餐有关。IM 旗舰版与 IM 尊享版上限为 3000 人,其他套餐详见功能对照表中的服务限制
  • 调用服务端 API 发送单聊消息默认不受黑名单限制。如需启用限制,请在调用 API 时设置 verifyBlacklist1

加入黑名单

将某个用户加入黑名单。

方法

Future<int> addToBlacklist(String userId, {IRCIMIWAddToBlacklistCallback? callback});

参数说明

参数名参数类型描述
userIdString用户 Id
callbackIRCIMIWAddToBlacklistCallback事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。

返回值

返回值描述
Future<int>当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

回调方法

  • onBlacklistAdded
Function(int? code, String? userId)? onBlacklistAdded;

参数说明

参数名参数类型描述
codeint接口回调的状态码,0 代表成功,非 0 代表出现异常
userIdString用户 ID

代码示例

engine?.onBlacklistAdded = (int? code, String? userId) {
//...
};

移除黑名单

将某个用户从黑名单中移出。

方法

Future<int> removeFromBlacklist(String userId, {IRCIMIWRemoveFromBlacklistCallback? callback});

参数说明

参数名参数类型描述
userIdString用户 Id
callbackIRCIMIWRemoveFromBlacklistCallback事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。

返回值

返回值描述
Future<int>当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

回调方法

  • onBlacklistRemoved
Function(int? code, String? userId)? onBlacklistRemoved;

参数说明

参数名参数类型描述
codeint接口回调的状态码,0 代表成功,非 0 代表出现异常
userIdString用户 ID

代码示例

engine?.onBlacklistRemoved = (int? code, String? userId) {
//...
};

查询用户是否在黑名单中

获取某用户是否在黑名单中。

方法

Future<int> getBlacklistStatus(String userId, {IRCIMIWGetBlacklistStatusCallback? callback});

参数说明

参数名参数类型描述
userIdString用户 Id
callbackIRCIMIWGetBlacklistStatusCallback事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。

返回值

返回值描述
Future<int>当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

回调方法

  • onBlacklistStatusLoaded
Function(int? code, String? userId, RCIMIWBlacklistStatus? status)? onBlacklistStatusLoaded;

参数说明

参数名参数类型描述
codeint接口回调的状态码,0 代表成功,非 0 代表出现异常
userIdString用户 ID
statusRCIMIWBlacklistStatus当前状态

代码示例

engine?.onBlacklistStatusLoaded = (int? code, String? userId, RCIMIWBlacklistStatus? status) {
//...
};

获取黑名单列表

获取当前用户设置的黑名单列表。

方法

Future<int> getBlacklist({IRCIMIWGetBlacklistCallback? callback});

返回值

参数名参数类型描述
callbackIRCIMIWGetBlacklistCallback事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。

回调方法

  • onBlacklistLoaded
Function(int? code, List<String>? userIds)? onBlacklistLoaded;

参数说明

参数名参数类型描述
codeint接口回调的状态码,0 代表成功,非 0 代表出现异常
userIdsList<String>用户 ID 集合

代码示例

engine?.onBlacklistLoaded = (int? code, List<String>? userIds) {
//...
};