1,添加是否允许机器人发生自定义群通知的开关;2,重构部分代码
This commit is contained in:
@@ -157,6 +157,7 @@ public class MemoryMessagesStore implements IMessagesStore {
|
||||
private String mChatroomInfoUpdateCallback;
|
||||
private String mChatroomMemberUpdateCallback;
|
||||
private boolean mGroupAllowClientCustomOperationNotification;
|
||||
private boolean mGroupAllowRobotCustomOperationNotification;
|
||||
private int mGroupVisibleQuitKickoffNotification;
|
||||
private int mSyncDataPartSize = 0;
|
||||
|
||||
@@ -401,6 +402,12 @@ public class MemoryMessagesStore implements IMessagesStore {
|
||||
|
||||
}
|
||||
|
||||
try {
|
||||
mGroupAllowRobotCustomOperationNotification = Boolean.parseBoolean(server.getConfig().getProperty(GROUP_Allow_Robot_Custom_Operation_Notification));
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
|
||||
try {
|
||||
mGroupVisibleQuitKickoffNotification = Integer.parseInt(server.getConfig().getProperty(GROUP_Visible_Quit_Kickoff_Notification, "0"));
|
||||
} catch (Exception e) {
|
||||
@@ -3652,7 +3659,7 @@ public class MemoryMessagesStore implements IMessagesStore {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ErrorCode distoryChannel(String operator, String channelId) {
|
||||
public ErrorCode distoryChannel(String operator, String channelId, boolean isAdmin) {
|
||||
HazelcastInstance hzInstance = m_Server.getHazelcastInstance();
|
||||
IMap<String, WFCMessage.ChannelInfo> mIMap = hzInstance.getMap(CHANNELS);
|
||||
|
||||
@@ -3662,7 +3669,7 @@ public class MemoryMessagesStore implements IMessagesStore {
|
||||
return ErrorCode.ERROR_CODE_NOT_EXIST;
|
||||
}
|
||||
|
||||
if (oldInfo.getOwner() == null || !oldInfo.getOwner().equals(operator)) {
|
||||
if ((oldInfo.getOwner() == null || !oldInfo.getOwner().equals(operator)) && !isAdmin) {
|
||||
return ErrorCode.ERROR_CODE_NOT_RIGHT;
|
||||
}
|
||||
|
||||
@@ -3798,6 +3805,11 @@ public class MemoryMessagesStore implements IMessagesStore {
|
||||
return mGroupAllowClientCustomOperationNotification;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAllowRobotCustomGroupNotification() {
|
||||
return mGroupAllowRobotCustomOperationNotification;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getVisibleQuitKickoffNotification() {
|
||||
return mGroupVisibleQuitKickoffNotification;
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
package io.moquette.persistence;
|
||||
|
||||
import cn.wildfirechat.proto.ProtoConstants;
|
||||
import io.moquette.persistence.remote.*;
|
||||
import io.moquette.server.Server;
|
||||
import org.slf4j.Logger;
|
||||
@@ -37,11 +38,7 @@ public class ServerAPIHelper {
|
||||
Executor getResponseExecutor();
|
||||
}
|
||||
|
||||
public static void sendRequest(String fromUser, String clientId, String request, byte[] message, Callback callback, boolean isAdmin) {
|
||||
sendRequest(fromUser, clientId, request, message, callback, isAdmin, false);
|
||||
}
|
||||
|
||||
public static void sendRequest(String fromUser, String clientId, String request, byte[] message, Callback callback, boolean isAdmin, boolean isRobotOrChannel) {
|
||||
public static void sendRequest(String fromUser, String clientId, String request, byte[] message, Callback callback, ProtoConstants.RequestSourceType requestSourceType) {
|
||||
int requestId = 0;
|
||||
|
||||
if (callback != null) {
|
||||
@@ -54,7 +51,7 @@ public class ServerAPIHelper {
|
||||
requestMap.put(requestId, new RequestInfo(fromUser, clientId, callback, message, requestId, request));
|
||||
}
|
||||
|
||||
server.onApiMessage(fromUser, clientId, message, requestId, "", request, isAdmin, isRobotOrChannel);
|
||||
server.onApiMessage(fromUser, clientId, message, requestId, "", request, requestSourceType);
|
||||
}
|
||||
|
||||
public static void sendResponse(int errorCode, byte[] message, String toUuid, int requestId) {
|
||||
|
||||
Reference in New Issue
Block a user