黑名单
更新时间: 2023/11/13 06:19:58
本文将介绍如何使用 NERoom SDK 实现添加指定成员到黑名单。黑名单内的成员被移除出房间且无法重新加入。
管理员无法将房间创建者或其他管理员添加到黑名单。
前提条件
- 已在控制台为指定成员配置房间黑名单管理权限。关于如何设置角色权限,参见 如何修改角色的权限。
添加黑名单
房间创建者或管理员可以通过 addToBlacklist
接口将房间内特定成员添加到黑名单。黑名单内的成员将被移除出房间且无法重新加入房间。
如果已调用 addRoomListener
接口添加了加入黑名单的事件回调,成员被加入黑名单后会触发 onMemberAddToBlacklist
事件回调。
示例代码如下:
java NERoomContext roomContext = NERoomKit.getInstance().getRoomService().getRoomContext(roomUuid);
if (roomContext==null){
return;
}
roomContext.addRoomListener(new NERoomListenerAdapter(){
@Override
public void onMemberAddToBlacklist(@NonNull String userUuid, @Nullable String notifyExt, @Nullable NERoomMember operateBy) {
super.onMemberAddToBlacklist(userUuid, notifyExt, operateBy);
}
});
String targetUserUuid = "userUuid";
String notifyExt = "notifyExt";
roomContext.addToBlacklist(
targetUserUuid,
notifyExt,
new NECallback2<Unit>() {
@Override
public void onSuccess(@Nullable Unit data) {
super.onSuccess(data);
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
}
});
移除黑名单
调用 removeFromBlacklist
将某用户从黑名单中移除,移除后用户可正常加入房间。
如果已调用 addRoomListener
接口添加了移除黑名单的事件回调,成员被移除出黑名单后会触发 onMemberRemoveFromBlacklist
回调。
示例代码如下:
java NERoomContext roomContext = NERoomKit.getInstance().getRoomService().getRoomContext(roomUuid);
if (roomContext==null){
return;
}
roomContext.addRoomListener(new NERoomListenerAdapter(){
@Override
public void onMemberRemoveFromBlacklist(@NonNull String userUuid, @Nullable String notifyExt, @Nullable NERoomMember operateBy) {
super.onMemberRemoveFromBlacklist(userUuid, notifyExt, operateBy);
}
});
String targetUserUuid = "userUuid";
String notifyExt = "notifyExt";
roomContext.removeFromBlacklist(
targetUserUuid,
notifyExt,
new NECallback2<Unit>() {
@Override
public void onSuccess(@Nullable Unit data) {
super.onSuccess(data);
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
}
});
获取黑名单列表
调用 getBlacklist
接口可获取房间黑名单成员列表。
示例代码如下:
java NERoomContext roomContext = NERoomKit.getInstance().getRoomService().getRoomContext(roomUuid);
if (roomContext==null){
return;
}
int pageNum=1;
int pageSize=20;
roomContext.getBlacklist(pageNum, pageSize, new NECallback2<List<NERoomBlacklistMember>>() {
@Override
public void onSuccess(@Nullable List<NERoomBlacklistMember> data) {
super.onSuccess(data);
}
@Override
public void onError(int code, @Nullable String message) {
super.onError(code, message);
}
});
此文档是否对你有帮助?