diff --git a/CHANGELOG.md b/CHANGELOG.md index 7db7f52..c1f38be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +## 1.0.7 + +Upgrade sdk to 1.3.4
+New add method setConversationRecvMessageOpt and getConversationRecvMessageOpt + ## 1.0.6 Upgrade sdk to 1.2.9 @@ -8,7 +13,7 @@ Upgrade sdk to 1.2.8 ## 1.0.4 -New add clear c2c message and group message +New add clear c2c message and group message
Update sdk to 1.1.9 ## 1.0.3 diff --git a/android/build.gradle b/android/build.gradle index 9290781..0772a13 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -51,5 +51,5 @@ android { } } dependencies { - implementation 'io.openim:client-sdk:1.2.9@aar' + implementation 'io.openim:client-sdk:1.3.4@aar' } \ No newline at end of file diff --git a/android/src/main/java/io/openim/flutter_openim_sdk/manager/ConversationManager.java b/android/src/main/java/io/openim/flutter_openim_sdk/manager/ConversationManager.java index 294393d..343b53e 100644 --- a/android/src/main/java/io/openim/flutter_openim_sdk/manager/ConversationManager.java +++ b/android/src/main/java/io/openim/flutter_openim_sdk/manager/ConversationManager.java @@ -71,4 +71,19 @@ public class ConversationManager extends BaseManager { value(methodCall, "sourceID"), int2long(methodCall, "sessionType"))); } + + public void setConversationRecvMessageOpt(MethodCall methodCall, MethodChannel.Result result) { + Open_im_sdk.setConversationRecvMessageOpt( + new BaseListener(result), + jsonValue(methodCall, "conversationIDList"), + int2long(methodCall, "status") + ); + } + + public void getConversationRecvMessageOpt(MethodCall methodCall, MethodChannel.Result result) { + Open_im_sdk.getConversationRecvMessageOpt( + new BaseListener(result), + jsonValue(methodCall, "conversationIDList") + ); + } } diff --git a/ios/Classes/Module/ConversationManager.swift b/ios/Classes/Module/ConversationManager.swift index abba0a3..d686603 100644 --- a/ios/Classes/Module/ConversationManager.swift +++ b/ios/Classes/Module/ConversationManager.swift @@ -24,6 +24,8 @@ public class ConversationManager: BaseServiceManager { self["markGroupMessageHasRead"] = markGroupMessageHasRead self["getTotalUnreadMsgCount"] = getTotalUnreadMsgCount self["getConversationIDBySessionType"] = getConversationIDBySessionType + self["setConversationRecvMessageOpt"] = setConversationRecvMessageOpt + self["getConversationRecvMessageOpt"] = getConversationRecvMessageOpt } func setConversationListener(methodCall: FlutterMethodCall, result: @escaping FlutterResult){ @@ -71,6 +73,14 @@ public class ConversationManager: BaseServiceManager { let conversationID = Open_im_sdkGetConversationIDBySessionType(methodCall[string: "sourceID"], methodCall[int: "sessionType"]) callBack(result, conversationID) } + + func setConversationRecvMessageOpt(methodCall: FlutterMethodCall, result: @escaping FlutterResult){ + Open_im_sdkSetConversationRecvMessageOpt(BaseCallback(result: result), methodCall[jsonString: "conversationIDList"], Int(methodCall[int64: "status"])) + } + + func getConversationRecvMessageOpt(methodCall: FlutterMethodCall, result: @escaping FlutterResult){ + Open_im_sdkGetConversationRecvMessageOpt(BaseCallback(result: result), methodCall[jsonString: "conversationIDList"]) + } } diff --git a/ios/Framework/OpenIMCore.framework/Headers/Open_im_sdk.objc.h b/ios/Framework/OpenIMCore.framework/Headers/Open_im_sdk.objc.h index ec638d6..ea436a1 100644 --- a/ios/Framework/OpenIMCore.framework/Headers/Open_im_sdk.objc.h +++ b/ios/Framework/OpenIMCore.framework/Headers/Open_im_sdk.objc.h @@ -941,6 +941,7 @@ - (void)getBlackList:(id _Nullable)callback; // skipped method UserRelated.GetCh with unsupported parameter or return types +- (void)getConversationRecvMessageOpt:(id _Nullable)callback conversationIDList:(NSString* _Nullable)conversationIDList; - (void)getFriendApplicationList:(id _Nullable)callback; - (void)getFriendList:(id _Nullable)callback; - (void)getFriendsInfo:(id _Nullable)callback uidList:(NSString* _Nullable)uidList; @@ -991,6 +992,7 @@ - (NSString* _Nonnull)sendMessageNotOss:(id _Nullable)callback message:(NSString* _Nullable)message receiver:(NSString* _Nullable)receiver groupID:(NSString* _Nullable)groupID onlineUserOnly:(BOOL)onlineUserOnly; - (void)setConversationDraft:(NSString* _Nullable)conversationID draftText:(NSString* _Nullable)draftText callback:(id _Nullable)callback; - (void)setConversationListener:(id _Nullable)listener; +- (void)setConversationRecvMessageOpt:(id _Nullable)callback conversationIDList:(NSString* _Nullable)conversationIDList opt:(long)opt; - (void)setFriendInfo:(NSString* _Nullable)comment callback:(id _Nullable)callback; - (BOOL)setFriendListener:(id _Nullable)listener; - (void)setGroupInfo:(NSString* _Nullable)jsonGroupInfo callback:(id _Nullable)callback; @@ -1206,9 +1208,15 @@ FOUNDATION_EXPORT const int64_t Open_im_sdkMsgStatusSendSuccess; */ FOUNDATION_EXPORT const int64_t Open_im_sdkMsgStatusSending; FOUNDATION_EXPORT const int64_t Open_im_sdkNotRead; +FOUNDATION_EXPORT const int64_t Open_im_sdkNotReceiveMessage; FOUNDATION_EXPORT const int64_t Open_im_sdkPicture; FOUNDATION_EXPORT const int64_t Open_im_sdkQuitGroupTip; FOUNDATION_EXPORT const int64_t Open_im_sdkQuote; +/** + * MsgReceiveOpt + */ +FOUNDATION_EXPORT const int64_t Open_im_sdkReceiveMessage; +FOUNDATION_EXPORT const int64_t Open_im_sdkReceiveNotNotifyMessage; FOUNDATION_EXPORT const int64_t Open_im_sdkRefuseFriendApplicationTip; FOUNDATION_EXPORT const int64_t Open_im_sdkRefuseGroupApplicationTip; FOUNDATION_EXPORT const int64_t Open_im_sdkRevoke; @@ -1528,6 +1536,8 @@ FOUNDATION_EXPORT void Open_im_sdkGetBlackList(id _Nullable cal FOUNDATION_EXPORT NSString* _Nonnull Open_im_sdkGetConversationIDBySessionType(NSString* _Nullable sourceID, long sessionType); +FOUNDATION_EXPORT void Open_im_sdkGetConversationRecvMessageOpt(id _Nullable callback, NSString* _Nullable conversationIDList); + /** * Get the current timestamp by Mill */ @@ -1666,6 +1676,8 @@ FOUNDATION_EXPORT void Open_im_sdkSetConversationDraft(NSString* _Nullable conve FOUNDATION_EXPORT void Open_im_sdkSetConversationListener(id _Nullable listener); +FOUNDATION_EXPORT void Open_im_sdkSetConversationRecvMessageOpt(id _Nullable callback, NSString* _Nullable conversationIDList, long opt); + FOUNDATION_EXPORT void Open_im_sdkSetFriendInfo(NSString* _Nullable comment, id _Nullable callback); FOUNDATION_EXPORT BOOL Open_im_sdkSetFriendListener(id _Nullable listener); diff --git a/ios/Framework/OpenIMCore.framework/OpenIMCore b/ios/Framework/OpenIMCore.framework/OpenIMCore index 67de266..07bed32 100644 Binary files a/ios/Framework/OpenIMCore.framework/OpenIMCore and b/ios/Framework/OpenIMCore.framework/OpenIMCore differ diff --git a/lib/src/manager/im_conversation_manager.dart b/lib/src/manager/im_conversation_manager.dart index 08a0d66..feda350 100644 --- a/lib/src/manager/im_conversation_manager.dart +++ b/lib/src/manager/im_conversation_manager.dart @@ -122,6 +122,34 @@ class ConversationManager { })); } + /// Message Do Not Disturb + /// [ status ] 1: Do not receive messages, 2: Do not notify when messages are received; 0: Normal + Future setConversationRecvMessageOpt({ + required List conversationIDList, + required int status, + }) { + return _channel.invokeMethod( + 'setConversationRecvMessageOpt', + _buildParam({ + "conversationIDList": conversationIDList, + "status": status, + })); + } + + /// Message Do Not Disturb + /// [{"conversationId":"single_13922222222","result":0}] + Future> getConversationRecvMessageOpt({ + required List conversationIDList, + }) { + return _channel + .invokeMethod( + 'getConversationRecvMessageOpt', + _buildParam({ + "conversationIDList": conversationIDList, + })) + .then((value) => _formatJson(value)); + } + static Map _buildParam(Map param) { param["ManagerName"] = "conversationManager"; return param; diff --git a/pubspec.yaml b/pubspec.yaml index b6a28b9..4281b65 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: flutter_openim_sdk description: An instant messaging plug-in that supports Android and IOS. And the server is also all open source. -version: 1.0.6 +version: 1.0.7 homepage: https://www.rentsoft.cn repository: https://github.com/OpenIMSDK/Open-IM-SDK-Flutter