@ -62,7 +62,6 @@ public class MessageManager:NSObject{
}
func deleteMessages ( methodCall : FlutterMethodCall , result : FlutterResult ) {
}
func insertSingleMessageToLocalStorage ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
@ -70,11 +69,18 @@ public class MessageManager:NSObject{
}
func findMessages ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
Open_im_sdkFindMessages ( BaseImpl ( result : result ) , CommonUtil . getFind MessageIds ( methodCall : methodCall ) )
Open_im_sdkFindMessages ( BaseImpl ( result : result ) , CommonUtil . getMessageIds ( methodCall : methodCall ) )
}
func markSingleMessageHasRead ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
Open_im_sdkMarkSingleMessageHasRead ( BaseImpl ( result : result ) , CommonUtil . getSingleMessageUserid ( methodCall : methodCall ) )
func markC2CMessageAsRead ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
Open_im_sdkMarkC2CMessageAsRead ( BaseImpl ( result : result ) , CommonUtil . getUserid ( methodCall : methodCall ) , CommonUtil . getMessageIds ( methodCall : methodCall ) )
}
func typingStatusUpdate ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
let receiver = CommonUtil . getUserid ( methodCall : methodCall )
let typing = CommonUtil . getTyping ( methodCall : methodCall )
Open_im_sdkTypingStatusUpdate ( receiver , typing )
DispatchQueue . main . async { result ( nil ) }
}
func markGroupMessageHasRead ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
@ -121,76 +127,70 @@ public class MessageManager:NSObject{
DispatchQueue . main . async { result ( prama ) }
}
func getTotalUnreadMsgCount ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
Open_im_sdkGetTotalUnreadMsgCount ( BaseImpl ( result : result ) )
}
func forceSyncMsg ( methodCall : FlutterMethodCall , result : @ escaping FlutterResult ) {
Open_im_sdkForceSyncMsg ( )
}
public class SendMsgProgressListener : NSObject , Open_im_sdkSendMsgCallBackProtocol {
private let channel : FlutterMethodChannel
private var result : FlutterResult ?
private var call : FlutterMethodCall ?
private let values : NSMutableDictionary = NSMutableDictionary ( capacity : 0 )
init ( channel : FlutterMethodChannel ) {
self . channel = channel
}
func setResult ( result : @ escaping FlutterResult ) {
self . result = result
}
func setCall ( methodCall : FlutterMethodCall ) {
self . call = methodCall
}
public func onError ( _ errCode : Int , errMsg : String ? ) {
print ( " =================onError============ \n errcode: \( errCode ) ,errMsg: \( errMsg ! ) " ) ;
DispatchQueue . main . async { self . result ! ( FlutterError ( code : " \( errCode ) " , message : errMsg , details : nil ) ) }
}
public func onProgress ( _ progress : Int ) {
print ( " =================onProgress============ \n progress: \( progress ) " ) ;
values . setValue ( CommonUtil . getSendMessageClientMsgID ( methodCall : self . call ! ) , forKey : " clientMsgID " )
values . setValue ( progress , forKey : " progress " )
CommonUtil . emitEvent ( channel : channel , method : " msgSendProgressListener " , type : " onProgress " , errCode : nil , errMsg : nil , data : values )
}
public func onSuccess ( _ data : String ? ) {
print ( " =================onSuccess============ \n success: \( data ! ) " ) ;
DispatchQueue . main . async { self . result ! ( data ) }
}
}
public class AdvancedMsgListener : NSObject , Open_im_sdkOnAdvancedMsgListenerProtocol {
private let channel : FlutterMethodChannel
private let values : NSMutableDictionary = NSMutableDictionary ( capacity : 0 )
init ( channel : FlutterMethodChannel , id : String ) {
self . channel = channel
values . setValue ( id , forKey : " id " )
}
public func onRecvC2CReadReceipt ( _ msgReceiptList : String ? ) {
values . setValue ( msgReceiptList , forKey : " message " )
CommonUtil . emitEvent ( channel : channel , method : " advancedMsgListener " , type : " onRecvC2CReadReceipt " , errCode : nil , errMsg : nil , data : values )
}
public func onRecvMessageRevoked ( _ msgId : String ? ) {
values . setValue ( msgId , forKey : " message " )
CommonUtil . emitEvent ( channel : channel , method : " advancedMsgListener " , type : " onRecvMessageRevoked " , errCode : nil , errMsg : nil , data : values )
public class SendMsgProgressListener : NSObject , Open_im_sdkSendMsgCallBackProtocol {
private let channel : FlutterMethodChannel
private var result : FlutterResult ?
private var call : FlutterMethodCall ?
private let values : NSMutableDictionary = NSMutableDictionary ( capacity : 0 )
init ( channel : FlutterMethodChannel ) {
self . channel = channel
}
func setResult ( result : @ escaping FlutterResult ) {
self . result = result
}
func setCall ( methodCall : FlutterMethodCall ) {
self . call = methodCall
}
public func onError ( _ errCode : Int , errMsg : String ? ) {
print ( " =================onError============ \n errcode: \( errCode ) ,errMsg: \( errMsg ! ) " ) ;
DispatchQueue . main . async { self . result ! ( FlutterError ( code : " \( errCode ) " , message : errMsg , details : nil ) ) }
}
public func onProgress ( _ progress : Int ) {
print ( " =================onProgress============ \n progress: \( progress ) " ) ;
values . setValue ( CommonUtil . getSendMessageClientMsgID ( methodCall : self . call ! ) , forKey : " clientMsgID " )
values . setValue ( progress , forKey : " progress " )
CommonUtil . emitEvent ( channel : channel , method : " msgSendProgressListener " , type : " onProgress " , errCode : nil , errMsg : nil , data : values )
}
public func onSuccess ( _ data : String ? ) {
print ( " =================onSuccess============ \n success: \( data ! ) " ) ;
DispatchQueue . main . async { self . result ! ( data ) }
}
}
public func onRecvNewMessage ( _ message : String ? ) {
values . setValue ( message , forKey : " message " )
CommonUtil . emitEvent ( channel : channel , method : " advancedMsgListener " , type : " onRecvNewMessage " , errCode : nil , errMsg : nil , data : values )
public class AdvancedMsgListener : NSObject , Open_im_sdkOnAdvancedMsgListenerProtocol {
private let channel : FlutterMethodChannel
private let values : NSMutableDictionary = NSMutableDictionary ( capacity : 0 )
init ( channel : FlutterMethodChannel , id : String ) {
self . channel = channel
values . setValue ( id , forKey : " id " )
}
public func onRecvC2CReadReceipt ( _ msgReceiptList : String ? ) {
values . setValue ( msgReceiptList , forKey : " message " )
CommonUtil . emitEvent ( channel : channel , method : " advancedMsgListener " , type : " onRecvC2CReadReceipt " , errCode : nil , errMsg : nil , data : values )
}
public func onRecvMessageRevoked ( _ msgId : String ? ) {
values . setValue ( msgId , forKey : " message " )
CommonUtil . emitEvent ( channel : channel , method : " advancedMsgListener " , type : " onRecvMessageRevoked " , errCode : nil , errMsg : nil , data : values )
}
public func onRecvNewMessage ( _ message : String ? ) {
values . setValue ( message , forKey : " message " )
CommonUtil . emitEvent ( channel : channel , method : " advancedMsgListener " , type : " onRecvNewMessage " , errCode : nil , errMsg : nil , data : values )
}
}
}
}