no message
This commit is contained in:
101
ios/Classes/Module/ChannelManager.swift
Normal file
101
ios/Classes/Module/ChannelManager.swift
Normal file
@@ -0,0 +1,101 @@
|
||||
import Foundation
|
||||
import OpenIMCore
|
||||
|
||||
public class ChannelManager: BaseServiceManager {
|
||||
|
||||
public override func registerHandlers() {
|
||||
super.registerHandlers()
|
||||
|
||||
// self["changeChannelMemberMute"] = changeChannelMemberMute
|
||||
// self["changeChannelMute"] = changeChannelMute
|
||||
|
||||
// self["getChannelMemberList"] = getChannelMemberList
|
||||
|
||||
|
||||
self["getChannelMembersInfo"] = getChannelMembersInfo
|
||||
self["getChannelsInfo"] = getChannelsInfo
|
||||
|
||||
|
||||
self["getUsersInChannel"] = getUsersInChannel
|
||||
self["isJoinChannel"] = isJoinChannel
|
||||
self["joinChannel"] = joinChannel
|
||||
self["quitChannel"] = quitChannel
|
||||
self["setChannelListener"] = setChannelListener
|
||||
|
||||
}
|
||||
|
||||
// func changeChannelMemberMute(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
// Open_im_sdkChangeChannelMemberMute(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"], methodCall[string:"userID"], methodCall[int:"seconds"])
|
||||
// }
|
||||
//
|
||||
// func changeChannelMute(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
// Open_im_sdkChangeChannelMute(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"], methodCall[bool: "mute"])
|
||||
// }
|
||||
//
|
||||
// func getChannelMemberList(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
// Open_im_sdkGetChannelMemberList(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"], methodCall[int32: "filter"],
|
||||
// methodCall[int32: "offset"], methodCall[int32: "count"])
|
||||
// }
|
||||
|
||||
func getChannelMembersInfo(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkGetSpecifiedChannelMembersInfo(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"], methodCall[jsonString: "userIDList"])
|
||||
}
|
||||
|
||||
func getChannelsInfo(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkGetSpecifiedChannelsInfo(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[jsonString: "channelIDList"])
|
||||
}
|
||||
|
||||
func getUsersInChannel(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkGetUsersInChannel(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"],
|
||||
methodCall[jsonString: "userIDs"])
|
||||
}
|
||||
|
||||
func isJoinChannel(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkIsJoinChannel(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"])
|
||||
}
|
||||
|
||||
func joinChannel(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkJoinChannel(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"], methodCall[string:
|
||||
"reason"], methodCall[int32: "joinSource"], methodCall[jsonString: "ex"])
|
||||
}
|
||||
|
||||
|
||||
func quitChannel(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkQuitChannel(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[string: "channelID"])
|
||||
}
|
||||
|
||||
func setChannelListener(methodCall: FlutterMethodCall, result: @escaping FlutterResult) {
|
||||
Open_im_sdkSetChannelListener(ChannelListener(channel: channel))
|
||||
callBack(result)
|
||||
}
|
||||
}
|
||||
|
||||
public class ChannelListener: NSObject, Open_im_sdk_callbackOnChannelListenerProtocol {
|
||||
|
||||
private let channel: FlutterMethodChannel
|
||||
|
||||
init(channel: FlutterMethodChannel) {
|
||||
self.channel = channel
|
||||
}
|
||||
|
||||
public func onChannelDismissed(_ s: String?) {
|
||||
CommonUtil.emitEvent(channel: channel, method: "channelListener", type: "onChannelDismissed", errCode: nil, errMsg: nil, data: s)
|
||||
}
|
||||
|
||||
public func onChannelInfoChanged(_ s: String?) {
|
||||
CommonUtil.emitEvent(channel: channel, method: "channelListener", type: "onChannelInfoChanged", errCode: nil, errMsg: nil, data: s)
|
||||
}
|
||||
|
||||
public func onChannelMemberAdded(_ s: String?) {
|
||||
CommonUtil.emitEvent(channel: channel, method: "channelListener", type: "onChannelMemberAdded", errCode: nil, errMsg: nil, data: s)
|
||||
}
|
||||
|
||||
public func onChannelMemberDeleted(_ s: String?) {
|
||||
CommonUtil.emitEvent(channel: channel, method: "channelListener", type: "onChannelMemberDeleted", errCode: nil, errMsg: nil, data: s)
|
||||
}
|
||||
|
||||
public func onChannelMemberInfoChanged(_ s: String?) {
|
||||
CommonUtil.emitEvent(channel: channel, method: "channelListener", type: "onChannelMemberInfoChanged", errCode: nil, errMsg: nil, data: s)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -65,7 +65,7 @@ public class MessageManager: BaseServiceManager {
|
||||
func sendMessage(methodCall: FlutterMethodCall, result: @escaping FlutterResult){
|
||||
let sendMsgProgressListener: SendMsgProgressListener = SendMsgProgressListener(channel: channel,result: result,methodCall: methodCall)
|
||||
Open_im_sdkSendMessage(sendMsgProgressListener, methodCall[string: "operationID"], methodCall[jsonString: "message"], methodCall[string: "userID"],
|
||||
methodCall[string: "groupID"], methodCall[jsonString: "offlinePushInfo"], methodCall[bool: "isOnlineOnly"])
|
||||
methodCall[string: "groupID"], methodCall[string: "channelID"],methodCall[jsonString: "offlinePushInfo"], methodCall[bool: "isOnlineOnly"])
|
||||
}
|
||||
|
||||
func revokeMessage(methodCall: FlutterMethodCall, result: @escaping FlutterResult){
|
||||
@@ -95,7 +95,7 @@ public class MessageManager: BaseServiceManager {
|
||||
|
||||
func insertGroupMessageToLocalStorage(methodCall: FlutterMethodCall, result: @escaping FlutterResult){
|
||||
Open_im_sdkInsertGroupMessageToLocalStorage(BaseCallback(result: result), methodCall[string: "operationID"], methodCall[jsonString: "message"],
|
||||
methodCall[string: "groupID"], methodCall[string: "senderID"])
|
||||
methodCall[string: "groupID"], methodCall[string: "channelID"],methodCall[string: "senderID"])
|
||||
}
|
||||
|
||||
func markMessagesAsReadByMsgID(methodCall: FlutterMethodCall, result: @escaping FlutterResult){
|
||||
@@ -227,7 +227,7 @@ public class MessageManager: BaseServiceManager {
|
||||
|
||||
func sendMessageNotOss(methodCall: FlutterMethodCall, result: @escaping FlutterResult){
|
||||
let sendMsgProgressListener: SendMsgProgressListener = SendMsgProgressListener(channel: channel,result: result,methodCall: methodCall)
|
||||
Open_im_sdkSendMessageNotOss(sendMsgProgressListener, methodCall[string: "operationID"], methodCall[jsonString: "message"], methodCall[string: "userID"], methodCall[string: "groupID"], methodCall[jsonString: "offlinePushInfo"], methodCall[bool: "isOnlineOnly"])
|
||||
Open_im_sdkSendMessageNotOss(sendMsgProgressListener, methodCall[string: "operationID"], methodCall[jsonString: "message"], methodCall[string: "userID"], methodCall[string: "groupID"], methodCall[string: "channelID"],methodCall[jsonString: "offlinePushInfo"], methodCall[bool: "isOnlineOnly"])
|
||||
}
|
||||
|
||||
func createImageMessageByURL(methodCall: FlutterMethodCall, result: @escaping FlutterResult){
|
||||
|
||||
@@ -8,13 +8,15 @@ public class SwiftFlutterOpenimSdkPlugin: NSObject, FlutterPlugin {
|
||||
let messageManager: MessageManager
|
||||
let groupManager: GroupManager
|
||||
let userManger: UserManager
|
||||
|
||||
let channelManger: ChannelManager
|
||||
|
||||
init(channel: FlutterMethodChannel) {
|
||||
self.imManager = IMMananger(channel: channel)
|
||||
self.conversationManager = ConversationManager(channel: channel)
|
||||
self.friendshipManager = FriendshipManager(channel: channel)
|
||||
self.messageManager = MessageManager(channel: channel)
|
||||
self.groupManager = GroupManager(channel: channel)
|
||||
self.channelManager = ChannelManager(channel: channel)
|
||||
self.userManger = UserManager(channel: channel)
|
||||
}
|
||||
|
||||
@@ -37,6 +39,8 @@ public class SwiftFlutterOpenimSdkPlugin: NSObject, FlutterPlugin {
|
||||
friendshipManager.handleMethod(call: call, result: result)
|
||||
case "groupManager":
|
||||
groupManager.handleMethod(call: call, result: result)
|
||||
case "channelManager":
|
||||
channelManager.handleMethod(call: call, result: result)
|
||||
case "userManager":
|
||||
userManger.handleMethod(call: call, result: result)
|
||||
default:
|
||||
|
||||
@@ -17,10 +17,15 @@ A new Flutter project.
|
||||
s.dependency 'Flutter'
|
||||
s.platform = :ios, '11.0'
|
||||
|
||||
s.dependency 'OpenIMSDKCore','3.8.1'
|
||||
#s.ios.vendored_frameworks = 'frameworks/*.xcframework'
|
||||
s.vendored_frameworks = 'frameworks/*.xcframework'
|
||||
#s.dependency 'OpenIMSDKCore','3.8.1'
|
||||
s.static_framework = true
|
||||
s.library = 'resolv'
|
||||
|
||||
|
||||
|
||||
|
||||
# s.vendored_frameworks = 'Framework/*.xcframework'
|
||||
# Flutter.framework does not contain a i386 slice.
|
||||
s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386 arm64' }
|
||||
|
||||
Reference in New Issue
Block a user