diff --git a/common/src/main/java/cn/wildfirechat/common/APIPath.java b/common/src/main/java/cn/wildfirechat/common/APIPath.java index 4dd73f9f..b62015a4 100644 --- a/common/src/main/java/cn/wildfirechat/common/APIPath.java +++ b/common/src/main/java/cn/wildfirechat/common/APIPath.java @@ -59,6 +59,7 @@ public interface APIPath { String Msg_RecallMultiCast = "/admin/message/recall_multicast"; String Msg_ConvRead = "/admin/message/conv_read"; String Msg_Delivery = "/admin/message/delivery"; + String Conversation_Delete = "/admin/conversation/delete"; String Create_Group = "/admin/group/create"; String Group_Dismiss = "/admin/group/del"; diff --git a/common/src/main/java/cn/wildfirechat/pojos/InputUserConversation.java b/common/src/main/java/cn/wildfirechat/pojos/InputUserConversation.java new file mode 100644 index 00000000..8deeee78 --- /dev/null +++ b/common/src/main/java/cn/wildfirechat/pojos/InputUserConversation.java @@ -0,0 +1,6 @@ +package cn.wildfirechat.pojos; + +public class InputUserConversation { + public String userId; + public Conversation conversation; +} diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/Main.java b/sdk/src/main/java/cn/wildfirechat/sdk/Main.java index 14c62aa3..bea92107 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/Main.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/Main.java @@ -762,6 +762,17 @@ public class Main { } else { System.out.println("Get message delivery failure"); } + + conversation = new Conversation(); + conversation.setTarget("user1"); + conversation.setType(ProtoConstants.ConversationType.ConversationType_Private); + conversation.setLine(0); + IMResult clearConversationResult = MessageAdmin.clearConversation("user2", conversation); + if (clearConversationResult != null && clearConversationResult.getErrorCode() == ErrorCode.ERROR_CODE_SUCCESS) { + System.out.println("clear conversation success"); + } else { + System.out.println("clear conversation failure"); + } } List multicastReceivers = Arrays.asList("user2", "user3", "user4"); diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/MessageAdmin.java b/sdk/src/main/java/cn/wildfirechat/sdk/MessageAdmin.java index af89b3c5..8b846d2b 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/MessageAdmin.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/MessageAdmin.java @@ -51,6 +51,14 @@ public class MessageAdmin { return AdminHttpUtils.httpJsonPost(path, updateMessageContentData, Void.class); } + public static IMResult clearConversation(String userId, Conversation conversation) throws Exception { + String path = APIPath.Conversation_Delete; + InputUserConversation input = new InputUserConversation(); + input.userId = userId; + input.conversation = conversation; + return AdminHttpUtils.httpJsonPost(path, input, Void.class); + } + /** * 获取单条消息。如果想要更多消息的读取,可以直接读取IM服务的数据库。 * @param messageUid