diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChannelAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChannelAction.java index f9065848..798bbad5 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChannelAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/CreateChannelAction.java @@ -44,7 +44,8 @@ public class CreateChannelAction extends AdminAction { if (request.getNettyRequest() instanceof FullHttpRequest) { InputCreateChannel inputCreateChannel = getRequestBody(request.getNettyRequest(), InputCreateChannel.class); if (inputCreateChannel != null - && !StringUtil.isNullOrEmpty(inputCreateChannel.getName())) { + && !StringUtil.isNullOrEmpty(inputCreateChannel.getName()) + && !StringUtil.isNullOrEmpty(inputCreateChannel.getOwner())) { if(StringUtil.isNullOrEmpty(inputCreateChannel.getTargetId())) { diff --git a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationGetAction.java b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationGetAction.java index 7c240d21..123ee16b 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationGetAction.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/action/admin/FriendRelationGetAction.java @@ -9,6 +9,7 @@ package com.xiaoleilu.loServer.action.admin; import cn.wildfirechat.common.APIPath; +import cn.wildfirechat.pojos.OutputStringList; import com.google.gson.Gson; import com.xiaoleilu.loServer.RestResult; import com.xiaoleilu.loServer.annotation.HttpMethod; @@ -44,7 +45,7 @@ public class FriendRelationGetAction extends AdminAction { } } response.setStatus(HttpResponseStatus.OK); - RestResult result = RestResult.ok(list); + RestResult result = RestResult.ok(new OutputStringList(list)); response.setContent(new Gson().toJson(result)); } return true; diff --git a/broker/src/main/java/com/xiaoleilu/loServer/handler/ActionHandler.java b/broker/src/main/java/com/xiaoleilu/loServer/handler/ActionHandler.java index 9eaa212b..6f24d6ec 100755 --- a/broker/src/main/java/com/xiaoleilu/loServer/handler/ActionHandler.java +++ b/broker/src/main/java/com/xiaoleilu/loServer/handler/ActionHandler.java @@ -51,6 +51,7 @@ abstract public class ActionHandler extends SimpleChannelInboundHandler list; + + public OutputStringList() { + } + + public OutputStringList(List list) { + this.list = list; + } + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/FriendAdmin.java b/sdk/src/main/java/cn/wildfirechat/sdk/FriendAdmin.java index eaf2fc27..b5bc6f24 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/FriendAdmin.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/FriendAdmin.java @@ -15,12 +15,12 @@ public class FriendAdmin { return AdminHttpUtils.httpJsonPost(path, input, Void.class); } - public static IMResult getFriendStatusList(String userId, int status) throws Exception { + public static IMResult getFriendStatusList(String userId, int status) throws Exception { String path = APIPath.Friend_Get_List; InputGetFriendList input = new InputGetFriendList(); input.setUserId(userId); input.setStatus(status); - return AdminHttpUtils.httpJsonPost(path, input, Void.class); + return AdminHttpUtils.httpJsonPost(path, input, OutputStringList.class); } } diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/Main.java b/sdk/src/main/java/cn/wildfirechat/sdk/Main.java index 62a1ace1..7b69f984 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/Main.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/Main.java @@ -342,7 +342,7 @@ public class Main { System.out.println("multi message failure"); System.exit(-1); } - + IMResult resultGetSystemSetting = GeneralAdmin.getSystemSetting(Group_Max_Member_Count); if (resultGetSystemSetting != null && resultGetSystemSetting.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { System.out.println("success"); @@ -369,6 +369,7 @@ public class Main { InputCreateChannel inputCreateChannel = new InputCreateChannel(); inputCreateChannel.setName("MyChannel"); + inputCreateChannel.setOwner("user1"); IMResult resultCreateChannel = GeneralAdmin.createChannel(inputCreateChannel); if (resultCreateChannel != null && resultCreateChannel.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { System.out.println("success"); @@ -377,6 +378,56 @@ public class Main { System.exit(-1); } + + //*********************************************** + //**** 好友相关功能 + //*********************************************** + //先创建2个用户 + userInfo = new InputOutputUserInfo(); + userInfo.setUserId("ff1"); + userInfo.setName("ff1"); + userInfo.setMobile("13800000000"); + userInfo.setDisplayName("ff1"); + + resultCreateUser = UserAdmin.createUser(userInfo); + if (resultCreateUser != null && resultCreateUser.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("Create user " + resultCreateUser.getResult().getName() + " success"); + } else { + System.out.println("Create user failure"); + System.exit(-1); + } + + userInfo = new InputOutputUserInfo(); + userInfo.setUserId("ff2"); + userInfo.setName("ff2"); + userInfo.setMobile("13800000001"); + userInfo.setDisplayName("ff2"); + + resultCreateUser = UserAdmin.createUser(userInfo); + if (resultCreateUser != null && resultCreateUser.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("Create user " + resultCreateUser.getResult().getName() + " success"); + } else { + System.out.println("Create user failure"); + System.exit(-1); + } + + IMResult updateFriendStatusResult = FriendAdmin.updateFriendStatus("ff1", "ff2", 1); + if (updateFriendStatusResult != null && updateFriendStatusResult.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("update friend status success"); + } else { + System.out.println("update friend status failure"); + System.exit(-1); + } + + IMResult resultGetFriendList = FriendAdmin.getFriendStatusList("ff1", 1); + if (resultGetFriendList != null && resultGetFriendList.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS && resultGetFriendList.getResult().getList().contains("ff2")) { + System.out.println("get friend status success"); + } else { + System.out.println("get friend status failure"); + System.exit(-1); + } + + //初始化机器人API RobotHttpUtils.init("http://localhost", "robot1", "123456"); //***********************************************