From 49ad4f5eb639048af6eb4f15c4f5988c3bfcde97 Mon Sep 17 00:00:00 2001 From: heavyrian2012 Date: Tue, 26 Dec 2023 09:20:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=BA=E5=99=A8=E4=BA=BAsdk=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=92=A4=E5=9B=9E=E5=92=8C=E6=9B=B4=E6=96=B0=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/wildfirechat/common/APIPath.java | 2 ++ .../main/java/cn/wildfirechat/sdk/Main.java | 35 +++++++++++++++++-- .../cn/wildfirechat/sdk/RobotService.java | 21 +++++++++++ 3 files changed, 56 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/cn/wildfirechat/common/APIPath.java b/common/src/main/java/cn/wildfirechat/common/APIPath.java index 413e182a..9c51cba7 100644 --- a/common/src/main/java/cn/wildfirechat/common/APIPath.java +++ b/common/src/main/java/cn/wildfirechat/common/APIPath.java @@ -116,6 +116,8 @@ public interface APIPath { String Robot_User_Info = "/robot/user_info"; String Robot_Get_Profile = "/robot/profile"; String Robot_Message_Send = "/robot/message/send"; + String Robot_Message_Recall = "/robot/message/recall"; + String Robot_Message_Update = "/robot/message/update"; String Robot_Set_Callback = "/robot/set_callback"; String Robot_Get_Callback = "/robot/get_callback"; String Robot_Delete_Callback = "/robot/delete_callback"; diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/Main.java b/sdk/src/main/java/cn/wildfirechat/sdk/Main.java index ebe95f84..5e1e34b0 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/Main.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/Main.java @@ -982,7 +982,7 @@ public class Main { System.exit(-1); } - IMResult userChatroomIMResult = ChatroomAdmin.getUserChatroom("hygqmws2k"); + IMResult userChatroomIMResult = ChatroomAdmin.getUserChatroom("uygqmws2k"); if(userChatroomIMResult != null && (userChatroomIMResult.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS || userChatroomIMResult.getErrorCode() == ErrorCode.ERROR_CODE_NOT_EXIST)) { System.out.println("get user chatroom success"); } else { @@ -1181,7 +1181,7 @@ public class Main { payload.setType(1); payload.setSearchableContent("hello world"); - IMResult resultRobotSendMessage = robotService.sendMessage("robot1", conversation, payload); + IMResult resultRobotSendMessage = robotService.sendMessage(robotService.getRobotId(), conversation, payload); if (resultRobotSendMessage != null && resultRobotSendMessage.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { System.out.println("robot send message success"); } else { @@ -1189,6 +1189,37 @@ public class Main { System.exit(-1); } + if(commercialServer) { + Thread.sleep(1000); + IMResult recallMessageResult = robotService.recallMessage(resultRobotSendMessage.result.getMessageUid()); + if (recallMessageResult != null && recallMessageResult.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("robot recall message success"); + } else { + System.out.println("robot recall message failure"); + System.exit(-1); + } + + payload.setSearchableContent("hello world, hello world"); + resultRobotSendMessage = robotService.sendMessage(robotService.getRobotId(), conversation, payload); + if (resultRobotSendMessage != null && resultRobotSendMessage.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("robot send message success"); + } else { + System.out.println("robot send message failure"); + System.exit(-1); + } + + Thread.sleep(1000); + payload.setSearchableContent("hello world, updated message content"); + IMResult updateMessageResult = robotService.updateMessage(resultRobotSendMessage.result.getMessageUid(), payload); + if (updateMessageResult != null && updateMessageResult.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("robot update message success"); + } else { + System.out.println("robot update message failure"); + System.exit(-1); + } + } + + IMResult resultRobotGetUserInfo = robotService.getUserInfo("userId1"); if (resultRobotGetUserInfo != null && resultRobotGetUserInfo.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { System.out.println("robot get user info success"); diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/RobotService.java b/sdk/src/main/java/cn/wildfirechat/sdk/RobotService.java index 69e008e0..3d582fdc 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/RobotService.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/RobotService.java @@ -17,6 +17,10 @@ public class RobotService { robotHttpUtils = new RobotHttpUtils(url, robotId, robotSecret); } + public String getRobotId() { + return robotHttpUtils.getRobotId(); + } + public IMResult sendMessage(String sender, Conversation conversation, MessagePayload payload) throws Exception { String path = APIPath.Robot_Message_Send; SendMessageData messageData = new SendMessageData(); @@ -26,6 +30,23 @@ public class RobotService { return robotHttpUtils.httpJsonPost(path, messageData, SendMessageResult.class); } + public IMResult recallMessage(long messageUid) throws Exception { + String path = APIPath.Robot_Message_Recall; + RecallMessageData messageData = new RecallMessageData(); + messageData.setMessageUid(messageUid); + return robotHttpUtils.httpJsonPost(path, messageData, String.class); + } + + public IMResult updateMessage(long messageUid, MessagePayload payload) throws Exception { + String path = APIPath.Robot_Message_Update; + UpdateMessageContentData updateMessageContentData = new UpdateMessageContentData(); + updateMessageContentData.setMessageUid(messageUid); + updateMessageContentData.setPayload(payload); + updateMessageContentData.setUpdateTimestamp(0); + updateMessageContentData.setDistribute(1); + return robotHttpUtils.httpJsonPost(path, updateMessageContentData, Void.class); + } + public IMResult getUserInfo(String userId) throws Exception { String path = APIPath.Robot_User_Info; InputGetUserInfo getUserInfo = new InputGetUserInfo(userId, null, null);