黑名单管理
将用户加入黑名单之后,将不再收到对方发来的任何单聊消息。
- 加入黑名单为单向操作,例如:用户 A 拉黑用户 B,代表 B 无法给 A 发消息(错误码
405
)。但 A 向 B 发消息,B 仍然能正常接收。 - 单个用户的黑名单总人数存在上限,具体与计费套餐有关。IM 旗舰版与 IM 尊享版上限为 3000 人,其他套餐详见功能对照表中的服务限制。
- 调用服务端 API 发送单聊消息默认不受黑名单限制。如需启用限制,请在调用 API 时设置
verifyBlacklist
为1
。
加入黑名单
将某个用户加入黑名单。
方法
Future<int> addToBlacklist(String userId, {IRCIMIWAddToBlacklistCallback? callback});
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
userId | String | 用户 Id |
callback | IRCIMIWAddToBlacklistCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Future<int> | 当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码 |
回调方法
- onBlacklistAdded
Function(int? code, String? userId)? onBlacklistAdded;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | int | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
userId | String | 用户 ID |
代码示例
engine?.onBlacklistAdded = (int? code, String? userId) {
//...
};
移除黑名单
将某个用户从黑名单中移出。
方法
Future<int> removeFromBlacklist(String userId, {IRCIMIWRemoveFromBlacklistCallback? callback});
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
userId | String | 用户 Id |
callback | IRCIMIWRemoveFromBlacklistCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Future<int> | 当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码 |
回调方法
- onBlacklistRemoved
Function(int? code, String? userId)? onBlacklistRemoved;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | int | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
userId | String | 用户 ID |
代码示例
engine?.onBlacklistRemoved = (int? code, String? userId) {
//...
};
查询用户是否在黑名单中
获取某用户是否在黑名单中。
方法
Future<int> getBlacklistStatus(String userId, {IRCIMIWGetBlacklistStatusCallback? callback});
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
userId | String | 用户 Id |
callback | IRCIMIWGetBlacklistStatusCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Future<int> | 当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码 |
回调方法
- onBlacklistStatusLoaded
Function(int? code, String? userId, RCIMIWBlacklistStatus? status)? onBlacklistStatusLoaded;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | int | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
userId | String | 用户 ID |
status | RCIMIWBlacklistStatus | 当前状态 |
代码示例
engine?.onBlacklistStatusLoaded = (int? code, String? userId, RCIMIWBlacklistStatus? status) {
//...
};
获取黑名单列表
获取当前用户设置的黑名单列表。
方法
Future<int> getBlacklist({IRCIMIWGetBlacklistCallback? callback});
返回值
参数名 | 参数类型 | 描述 |
---|---|---|
callback | IRCIMIWGetBlacklistCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
回调方法
- onBlacklistLoaded
Function(int? code, List<String>? userIds)? onBlacklistLoaded;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | int | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
userIds | List<String> | 用户 ID 集合 |
代码示例
engine?.onBlacklistLoaded = (int? code, List<String>? userIds) {
//...
};