main
hrxiang 4 years ago
parent 0da677ceac
commit 69e1def1a5
  1. 66
      example/lib/main.dart
  2. 2
      example/pubspec.lock
  3. 8
      lib/src/listener/advanced_msg_listener.dart
  4. 14
      lib/src/listener/conversation_listener.dart
  5. 20
      lib/src/listener/friendship_listener.dart
  6. 53
      lib/src/listener/group_listener.dart
  7. 24
      lib/src/listener/impl/advanced_msg_listener.dart
  8. 51
      lib/src/listener/impl/conversation_listener.dart
  9. 74
      lib/src/listener/impl/friendship_listener.dart
  10. 70
      lib/src/listener/impl/group_listener.dart
  11. 50
      lib/src/listener/impl/init_sdk_listener.dart
  12. 11
      lib/src/listener/impl/msg_send_progress_listener.dart
  13. 14
      lib/src/listener/init_sdk_listener.dart
  14. 4
      lib/src/listener/msg_send_progress_listener.dart
  15. 87
      lib/src/manager/im_manager.dart
  16. 7
      test/flutter_openim_sdk_test.dart

@ -49,60 +49,60 @@ class _MyAppState extends State<MyApp> {
ipWs: '',
dbPath: '',
listener: OnInitSDKListener(
connecting: () {},
connectFailed: (code, error) {},
connectSuccess: () {},
kickedOffline: () {},
userSigExpired: () {},
selfInfoUpdated: (user) {},
onConnecting: () {},
onConnectFailed: (code, error) {},
onConnectSuccess: () {},
onKickedOffline: () {},
onUserSigExpired: () {},
onSelfInfoUpdated: (user) {},
),
)
// Add message listener (remove when not in use)
..messageManager.addAdvancedMsgListener(OnAdvancedMsgListener(
recvMessageRevoked: (msgId) {},
recvC2CReadReceipt: (list) {},
recvNewMessage: (msg) {},
onRecvMessageRevoked: (msgId) {},
onRecvC2CReadReceipt: (list) {},
onRecvNewMessage: (msg) {},
))
// Set up message sending progress listener
..messageManager.setMsgSendProgressListener(OnMsgSendProgressListener(
progressCallback: (msgId, progress) {},
onProgress: (msgId, progress) {},
))
// Set up friend relationship listener
..friendshipManager.setFriendshipListener(OnFriendshipListener(
blackListAdd: (u) {},
blackListDeleted: (u) {},
friendApplicationListAccept: (u) {},
friendApplicationListAdded: (u) {},
friendApplicationListDeleted: (u) {},
friendApplicationListReject: (u) {},
friendInfoChanged: (u) {},
friendListAdded: (u) {},
friendListDeleted: (u) {},
onBlackListAdd: (u) {},
onBlackListDeleted: (u) {},
onFriendApplicationListAccept: (u) {},
onFriendApplicationListAdded: (u) {},
onFriendApplicationListDeleted: (u) {},
onFriendApplicationListReject: (u) {},
onFriendInfoChanged: (u) {},
onFriendListAdded: (u) {},
onFriendListDeleted: (u) {},
))
// Set up conversation listener
..conversationManager.setConversationListener(OnConversationListener(
conversationChanged: (list) {},
newConversation: (list) {},
totalUnreadMsgCountChanged: (count) {},
syncServerFailed: () {},
syncServerFinish: () {},
syncServerStart: () {},
onConversationChanged: (list) {},
onNewConversation: (list) {},
onTotalUnreadMessageCountChanged: (count) {},
onSyncServerFailed: () {},
onSyncServerFinish: () {},
onSyncServerStart: () {},
))
// Set up group listener
..groupManager.setGroupListener(OnGroupListener(
applicationProcessed: (groupId, opUser, agreeOrReject, opReason) {},
groupCreated: (groupId) {},
groupInfoChanged: (groupId, info) {},
memberEnter: (groupId, list) {},
memberInvited: (groupId, opUser, list) {},
memberKicked: (groupId, opUser, list) {},
memberLeave: (groupId, info) {},
receiveJoinApplication: (groupId, info, opReason) {},
onApplicationProcessed: (groupId, opUser, agreeOrReject, opReason) {},
onGroupCreated: (groupId) {},
onGroupInfoChanged: (groupId, info) {},
onMemberEnter: (groupId, list) {},
onMemberInvited: (groupId, opUser, list) {},
onMemberKicked: (groupId, opUser, list) {},
onMemberLeave: (groupId, info) {},
onReceiveJoinApplication: (groupId, info, opReason) {},
));
}
}

@ -68,7 +68,7 @@ packages:
path: ".."
relative: true
source: path
version: "0.0.1"
version: "0.0.2"
flutter_test:
dependency: "direct dev"
description: flutter

@ -1,15 +1,15 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class AdvancedMsgListener {
abstract class AdvancedMsgListener {
/// listener uniquely identifies
final String id;
AdvancedMsgListener() : id = "id_${DateTime.now().microsecondsSinceEpoch}";
void onRecvNewMessage(Message msg) {}
void recvNewMessage(Message msg);
void onRecvC2CReadReceipt(List<HaveReadInfo> list) {}
void recvC2CReadReceipt(List<HaveReadInfo> list);
void onRecvMessageRevoked(String msgId) {}
void recvMessageRevoked(String msgId);
}

@ -1,15 +1,15 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class ConversationListener {
void onConversationChanged(List<ConversationInfo> list) {}
abstract class ConversationListener {
void conversationChanged(List<ConversationInfo> list);
void onNewConversation(List<ConversationInfo> list) {}
void newConversation(List<ConversationInfo> list);
void onSyncServerFailed() {}
void syncServerFailed();
void onSyncServerFinish() {}
void syncServerFinish();
void onSyncServerStart() {}
void syncServerStart();
void onTotalUnreadMessageCountChanged(int i) {}
void totalUnreadMessageCountChanged(int i);
}

@ -1,21 +1,21 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class FriendshipListener {
void onBlackListAdd(UserInfo u) {}
abstract class FriendshipListener {
void blackListAdd(UserInfo u);
void onBlackListDeleted(UserInfo u) {}
void blackListDeleted(UserInfo u);
void onFriendApplicationListAccept(UserInfo u) {}
void friendApplicationListAccept(UserInfo u);
void onFriendApplicationListAdded(UserInfo u) {}
void friendApplicationListAdded(UserInfo u);
void onFriendApplicationListDeleted(UserInfo u) {}
void friendApplicationListDeleted(UserInfo u);
void onFriendApplicationListReject(UserInfo u) {}
void friendApplicationListReject(UserInfo u);
void onFriendInfoChanged(UserInfo u) {}
void friendInfoChanged(UserInfo u);
void onFriendListAdded(UserInfo u) {}
void friendListAdded(UserInfo u);
void onFriendListDeleted(UserInfo u) {}
void friendListDeleted(UserInfo u);
}

@ -1,36 +1,23 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class GroupListener {
void onMemberEnter(String groupId, List<GroupMembersInfo> list) {}
void onMemberLeave(String groupId, GroupMembersInfo info) {}
void onMemberInvited(
String groupId,
GroupMembersInfo opUser,
List<GroupMembersInfo> list,
) {}
void onMemberKicked(
String groupId,
GroupMembersInfo opUser,
List<GroupMembersInfo> list,
) {}
void onGroupCreated(String groupId) {}
void onGroupInfoChanged(String groupId, GroupInfo info) {}
void onReceiveJoinApplication(
String groupId,
GroupMembersInfo info,
String opReason,
) {}
void onApplicationProcessed(
String groupId,
GroupMembersInfo opUser,
int agreeOrReject,
String opReason,
) {}
abstract class GroupListener {
void memberEnter(String groupId, List<GroupMembersInfo> list);
void memberLeave(String groupId, GroupMembersInfo info);
void memberInvited(
String groupId, GroupMembersInfo opUser, List<GroupMembersInfo> list);
void memberKicked(
String groupId, GroupMembersInfo opUser, List<GroupMembersInfo> list);
void groupCreated(String groupId);
void groupInfoChanged(String groupId, GroupInfo info);
void receiveJoinApplication(
String groupId, GroupMembersInfo info, String opReason);
void applicationProcessed(String groupId, GroupMembersInfo opUser,
int agreeOrReject, String opReason);
}

@ -1,28 +1,28 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class OnAdvancedMsgListener extends AdvancedMsgListener {
Function(List<HaveReadInfo> list)? recvC2CReadReceipt;
Function(String msgId)? recvMessageRevoked;
Function(Message msg)? recvNewMessage;
Function(List<HaveReadInfo> list)? onRecvC2CReadReceipt;
Function(String msgId)? onRecvMessageRevoked;
Function(Message msg)? onRecvNewMessage;
OnAdvancedMsgListener({
this.recvC2CReadReceipt,
this.recvMessageRevoked,
this.recvNewMessage,
this.onRecvC2CReadReceipt,
this.onRecvMessageRevoked,
this.onRecvNewMessage,
});
@override
void onRecvC2CReadReceipt(List<HaveReadInfo> list) {
if (null != recvC2CReadReceipt) recvC2CReadReceipt!(list);
void recvC2CReadReceipt(List<HaveReadInfo> list) {
if (null != onRecvC2CReadReceipt) onRecvC2CReadReceipt!(list);
}
@override
void onRecvMessageRevoked(String msgId) {
if (null != recvMessageRevoked) recvMessageRevoked!(msgId);
void recvMessageRevoked(String msgId) {
if (null != onRecvMessageRevoked) onRecvMessageRevoked!(msgId);
}
@override
void onRecvNewMessage(Message msg) {
if (null != recvNewMessage) recvNewMessage!(msg);
void recvNewMessage(Message msg) {
if (null != onRecvNewMessage) onRecvNewMessage!(msg);
}
}

@ -1,49 +1,50 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class OnConversationListener implements ConversationListener {
Function(List<ConversationInfo> list)? conversationChanged;
Function(List<ConversationInfo> list)? newConversation;
Function(int count)? totalUnreadMsgCountChanged;
Function()? syncServerFailed;
Function()? syncServerFinish;
Function()? syncServerStart;
class OnConversationListener extends ConversationListener {
Function(List<ConversationInfo> list)? onConversationChanged;
Function(List<ConversationInfo> list)? onNewConversation;
Function(int count)? onTotalUnreadMessageCountChanged;
Function()? onSyncServerFailed;
Function()? onSyncServerFinish;
Function()? onSyncServerStart;
OnConversationListener({
this.conversationChanged,
this.newConversation,
this.totalUnreadMsgCountChanged,
this.syncServerFailed,
this.syncServerFinish,
this.syncServerStart,
this.onConversationChanged,
this.onNewConversation,
this.onTotalUnreadMessageCountChanged,
this.onSyncServerFailed,
this.onSyncServerFinish,
this.onSyncServerStart,
});
@override
void onConversationChanged(List<ConversationInfo> list) {
if (conversationChanged != null) conversationChanged!(list);
void conversationChanged(List<ConversationInfo> list) {
if (onConversationChanged != null) onConversationChanged!(list);
}
@override
void onNewConversation(List<ConversationInfo> list) {
if (newConversation != null) newConversation!(list);
void newConversation(List<ConversationInfo> list) {
if (onNewConversation != null) onNewConversation!(list);
}
@override
void onSyncServerFailed() {
if (syncServerFailed != null) syncServerFailed!();
void syncServerFailed() {
if (onSyncServerFailed != null) onSyncServerFailed!();
}
@override
void onSyncServerFinish() {
if (syncServerFinish != null) syncServerFinish!();
void syncServerFinish() {
if (onSyncServerFinish != null) onSyncServerFinish!();
}
@override
void onSyncServerStart() {
if (syncServerStart != null) syncServerStart!();
void syncServerStart() {
if (onSyncServerStart != null) onSyncServerStart!();
}
@override
void onTotalUnreadMessageCountChanged(int i) {
if (totalUnreadMsgCountChanged != null) totalUnreadMsgCountChanged!(i);
void totalUnreadMessageCountChanged(int i) {
if (onTotalUnreadMessageCountChanged != null)
onTotalUnreadMessageCountChanged!(i);
}
}

@ -1,70 +1,70 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class OnFriendshipListener implements FriendshipListener {
Function(UserInfo u)? blackListAdd;
Function(UserInfo u)? blackListDeleted;
Function(UserInfo u)? friendApplicationListAccept;
Function(UserInfo u)? friendApplicationListAdded;
Function(UserInfo u)? friendApplicationListDeleted;
Function(UserInfo u)? friendApplicationListReject;
Function(UserInfo u)? friendInfoChanged;
Function(UserInfo u)? friendListAdded;
Function(UserInfo u)? friendListDeleted;
class OnFriendshipListener extends FriendshipListener {
Function(UserInfo u)? onBlackListAdd;
Function(UserInfo u)? onBlackListDeleted;
Function(UserInfo u)? onFriendApplicationListAccept;
Function(UserInfo u)? onFriendApplicationListAdded;
Function(UserInfo u)? onFriendApplicationListDeleted;
Function(UserInfo u)? onFriendApplicationListReject;
Function(UserInfo u)? onFriendInfoChanged;
Function(UserInfo u)? onFriendListAdded;
Function(UserInfo u)? onFriendListDeleted;
OnFriendshipListener({
this.blackListAdd,
this.blackListDeleted,
this.friendApplicationListAccept,
this.friendApplicationListAdded,
this.friendApplicationListDeleted,
this.friendApplicationListReject,
this.friendInfoChanged,
this.friendListAdded,
this.friendListDeleted,
this.onBlackListAdd,
this.onBlackListDeleted,
this.onFriendApplicationListAccept,
this.onFriendApplicationListAdded,
this.onFriendApplicationListDeleted,
this.onFriendApplicationListReject,
this.onFriendInfoChanged,
this.onFriendListAdded,
this.onFriendListDeleted,
});
@override
void onBlackListAdd(UserInfo u) {
if (null != blackListAdd) blackListAdd!(u);
void blackListAdd(UserInfo u) {
if (null != onBlackListAdd) onBlackListAdd!(u);
}
@override
void onBlackListDeleted(UserInfo u) {
if (null != blackListDeleted) blackListDeleted!(u);
void blackListDeleted(UserInfo u) {
if (null != onBlackListDeleted) onBlackListDeleted!(u);
}
@override
void onFriendApplicationListAccept(UserInfo u) {
if (null != friendApplicationListAccept) friendApplicationListAccept!(u);
void friendApplicationListAccept(UserInfo u) {
if (null != onFriendApplicationListAccept) onFriendApplicationListAccept!(u);
}
@override
void onFriendApplicationListAdded(UserInfo u) {
if (null != friendApplicationListAdded) friendApplicationListAdded!(u);
void friendApplicationListAdded(UserInfo u) {
if (null != onFriendApplicationListAdded) onFriendApplicationListAdded!(u);
}
@override
void onFriendApplicationListDeleted(UserInfo u) {
if (null != friendApplicationListDeleted) friendApplicationListDeleted!(u);
void friendApplicationListDeleted(UserInfo u) {
if (null != onFriendApplicationListDeleted) onFriendApplicationListDeleted!(u);
}
@override
void onFriendApplicationListReject(UserInfo u) {
if (null != friendApplicationListReject) friendApplicationListReject!(u);
void friendApplicationListReject(UserInfo u) {
if (null != onFriendApplicationListReject) onFriendApplicationListReject!(u);
}
@override
void onFriendInfoChanged(UserInfo u) {
if (null != friendInfoChanged) friendInfoChanged!(u);
void friendInfoChanged(UserInfo u) {
if (null != onFriendInfoChanged) onFriendInfoChanged!(u);
}
@override
void onFriendListAdded(UserInfo u) {
if (null != friendListAdded) friendListAdded!(u);
void friendListAdded(UserInfo u) {
if (null != onFriendListAdded) onFriendListAdded!(u);
}
@override
void onFriendListDeleted(UserInfo u) {
if (null != friendListDeleted) friendListDeleted!(u);
void friendListDeleted(UserInfo u) {
if (null != onFriendListDeleted) onFriendListDeleted!(u);
}
}

@ -1,75 +1,75 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class OnGroupListener implements GroupListener {
class OnGroupListener extends GroupListener {
Function(String groupId, GroupMembersInfo opUser, int agreeOrReject,
String opReason)? applicationProcessed;
Function(String groupId)? groupCreated;
Function(String groupId, GroupInfo info)? groupInfoChanged;
Function(String groupId, List<GroupMembersInfo> list)? memberEnter;
String opReason)? onApplicationProcessed;
Function(String groupId)? onGroupCreated;
Function(String groupId, GroupInfo info)? onGroupInfoChanged;
Function(String groupId, List<GroupMembersInfo> list)? onMemberEnter;
Function(
String groupId, GroupMembersInfo opUser, List<GroupMembersInfo> list)?
memberInvited;
onMemberInvited;
Function(
String groupId, GroupMembersInfo opUser, List<GroupMembersInfo> list)?
memberKicked;
Function(String groupId, GroupMembersInfo info)? memberLeave;
onMemberKicked;
Function(String groupId, GroupMembersInfo info)? onMemberLeave;
Function(String groupId, GroupMembersInfo info, String opReason)?
receiveJoinApplication;
onReceiveJoinApplication;
OnGroupListener({
this.applicationProcessed,
this.groupCreated,
this.groupInfoChanged,
this.memberEnter,
this.memberInvited,
this.memberKicked,
this.memberLeave,
this.receiveJoinApplication,
this.onApplicationProcessed,
this.onGroupCreated,
this.onGroupInfoChanged,
this.onMemberEnter,
this.onMemberInvited,
this.onMemberKicked,
this.onMemberLeave,
this.onReceiveJoinApplication,
});
@override
void onApplicationProcessed(String groupId, GroupMembersInfo opUser,
void applicationProcessed(String groupId, GroupMembersInfo opUser,
int agreeOrReject, String opReason) {
if (null != applicationProcessed)
applicationProcessed!(groupId, opUser, agreeOrReject, opReason);
if (null != onApplicationProcessed)
onApplicationProcessed!(groupId, opUser, agreeOrReject, opReason);
}
@override
void onGroupCreated(String groupId) {
if (null != groupCreated) groupCreated!(groupId);
void groupCreated(String groupId) {
if (null != onGroupCreated) onGroupCreated!(groupId);
}
@override
void onGroupInfoChanged(String groupId, GroupInfo info) {
if (null != groupInfoChanged) groupInfoChanged!(groupId, info);
void groupInfoChanged(String groupId, GroupInfo info) {
if (null != onGroupInfoChanged) onGroupInfoChanged!(groupId, info);
}
@override
void onMemberEnter(String groupId, List<GroupMembersInfo> list) {
if (null != memberEnter) memberEnter!(groupId, list);
void memberEnter(String groupId, List<GroupMembersInfo> list) {
if (null != onMemberEnter) onMemberEnter!(groupId, list);
}
@override
void onMemberInvited(
void memberInvited(
String groupId, GroupMembersInfo opUser, List<GroupMembersInfo> list) {
if (null != memberInvited) memberInvited!(groupId, opUser, list);
if (null != onMemberInvited) onMemberInvited!(groupId, opUser, list);
}
@override
void onMemberKicked(
void memberKicked(
String groupId, GroupMembersInfo opUser, List<GroupMembersInfo> list) {
if (null != memberKicked) memberKicked!(groupId, opUser, list);
if (null != onMemberKicked) onMemberKicked!(groupId, opUser, list);
}
@override
void onMemberLeave(String groupId, GroupMembersInfo info) {
if (null != memberLeave) memberLeave!(groupId, info);
void memberLeave(String groupId, GroupMembersInfo info) {
if (null != onMemberLeave) onMemberLeave!(groupId, info);
}
@override
void onReceiveJoinApplication(
void receiveJoinApplication(
String groupId, GroupMembersInfo info, String opReason) {
if (null != receiveJoinApplication)
receiveJoinApplication!(groupId, info, opReason);
if (null != onReceiveJoinApplication)
onReceiveJoinApplication!(groupId, info, opReason);
}
}

@ -1,49 +1,49 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class OnInitSDKListener implements InitSDKListener {
Function(int? code, String? errorMsg)? connectFailed;
Function()? connectSuccess;
Function()? connecting;
Function()? kickedOffline;
Function(UserInfo info)? selfInfoUpdated;
Function()? userSigExpired;
class OnInitSDKListener extends InitSDKListener {
Function(int? code, String? errorMsg)? onConnectFailed;
Function()? onConnectSuccess;
Function()? onConnecting;
Function()? onKickedOffline;
Function(UserInfo info)? onSelfInfoUpdated;
Function()? onUserSigExpired;
OnInitSDKListener({
this.connectFailed,
this.connectSuccess,
this.connecting,
this.kickedOffline,
this.selfInfoUpdated,
this.userSigExpired,
this.onConnectFailed,
this.onConnectSuccess,
this.onConnecting,
this.onKickedOffline,
this.onSelfInfoUpdated,
this.onUserSigExpired,
});
@override
void onConnectFailed(int? code, String? errorMsg) {
if (null != connectFailed) connectFailed!(code, errorMsg);
void connectFailed(int? code, String? errorMsg) {
if (null != onConnectFailed) onConnectFailed!(code, errorMsg);
}
@override
void onConnectSuccess() {
if (null != connectSuccess) connectSuccess!();
void connectSuccess() {
if (null != onConnectSuccess) onConnectSuccess!();
}
@override
void onConnecting() {
if (null != connecting) connecting!.call();
void connecting() {
if (null != onConnecting) onConnecting!.call();
}
@override
void onKickedOffline() {
if (null != kickedOffline) kickedOffline!();
void kickedOffline() {
if (null != onKickedOffline) onKickedOffline!();
}
@override
void onSelfInfoUpdated(UserInfo info) {
if (null != selfInfoUpdated) selfInfoUpdated!(info);
void selfInfoUpdated(UserInfo info) {
if (null != onSelfInfoUpdated) onSelfInfoUpdated!(info);
}
@override
void onUserSigExpired() {
if (null != userSigExpired) userSigExpired!();
void userSigExpired() {
if (null != onUserSigExpired) onUserSigExpired!();
}
}

@ -1,11 +1,12 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class OnMsgSendProgressListener implements MsgSendProgressListener {
Function(String msgID, int progress)? progressCallback;
OnMsgSendProgressListener({this.progressCallback});
class OnMsgSendProgressListener extends MsgSendProgressListener {
Function(String msgID, int progress)? onProgress;
void onProgress(String msgID, int progress) {
if (null != progressCallback) progressCallback!(msgID, progress);
OnMsgSendProgressListener({this.onProgress});
void progress(String msgID, int progress) {
if (null != onProgress) onProgress!(msgID, progress);
}
}

@ -1,21 +1,21 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
class InitSDKListener {
abstract class InitSDKListener {
/// SDK
void onConnecting() {}
void connecting();
/// SDK
void onConnectSuccess() {}
void connectSuccess();
/// SDK
void onConnectFailed(int? code, String? errorMsg) {}
void connectFailed(int? code, String? errorMsg);
/// 线 UI IMManager login()
void onKickedOffline() {}
void kickedOffline();
/// 线 userSig IMManager login()
void onUserSigExpired() {}
void userSigExpired();
///
void onSelfInfoUpdated(UserInfo info) {}
void selfInfoUpdated(UserInfo info);
}

@ -1,3 +1,3 @@
class MsgSendProgressListener {
void onProgress(String msgID, int progress) {}
abstract class MsgSendProgressListener {
void progress(String msgID, int progress);
}

@ -35,24 +35,24 @@ class IMManager {
switch (type) {
case 'onSelfInfoUpdated':
uInfo = UserInfo.fromJson(_formatJson(data));
_initSDKListener.onSelfInfoUpdated(uInfo);
_initSDKListener.selfInfoUpdated(uInfo);
break;
case 'onConnectFailed':
int? errCode = call.arguments['errCode'];
String? errMsg = call.arguments['errMsg'];
_initSDKListener.onConnectFailed(errCode, errMsg);
_initSDKListener.connectFailed(errCode, errMsg);
break;
case 'onConnecting':
_initSDKListener.onConnecting();
_initSDKListener.connecting();
break;
case 'onConnectSuccess':
_initSDKListener.onConnectSuccess();
_initSDKListener.connectSuccess();
break;
case 'onKickedOffline':
_initSDKListener.onKickedOffline();
_initSDKListener.kickedOffline();
break;
case 'onUserSigExpired':
_initSDKListener.onUserSigExpired();
_initSDKListener.userSigExpired();
break;
}
} else if (call.method == ListenerType.groupListener) {
@ -61,7 +61,7 @@ class IMManager {
Map<dynamic, dynamic> map = args['data'];
switch (type) {
case 'onMemberEnter':
groupManager.groupListener.onMemberEnter(
groupManager.groupListener.memberEnter(
map['groupId'],
(_formatJson(map['memberList']) as List)
.map((e) => GroupMembersInfo.fromJson(e))
@ -69,13 +69,13 @@ class IMManager {
);
break;
case 'onMemberLeave':
groupManager.groupListener.onMemberLeave(
groupManager.groupListener.memberLeave(
map['groupId'],
GroupMembersInfo.fromJson(_formatJson(map['member'])),
);
break;
case 'onMemberInvited':
groupManager.groupListener.onMemberInvited(
groupManager.groupListener.memberInvited(
map['groupId'],
GroupMembersInfo.fromJson(_formatJson(map['opUser'])),
(_formatJson(map['memberList']) as List)
@ -84,7 +84,7 @@ class IMManager {
);
break;
case 'onMemberKicked':
groupManager.groupListener.onMemberKicked(
groupManager.groupListener.memberKicked(
map['groupId'],
GroupMembersInfo.fromJson(_formatJson(map['opUser'])),
(_formatJson(map['memberList']) as List)
@ -93,25 +93,25 @@ class IMManager {
);
break;
case 'onGroupCreated':
groupManager.groupListener.onGroupCreated(
groupManager.groupListener.groupCreated(
map['groupId'],
);
break;
case 'onGroupInfoChanged':
groupManager.groupListener.onGroupInfoChanged(
groupManager.groupListener.groupInfoChanged(
map['groupId'],
GroupInfo.fromJson(_formatJson(map['groupInfo'])),
);
break;
case 'onReceiveJoinApplication':
groupManager.groupListener.onReceiveJoinApplication(
groupManager.groupListener.receiveJoinApplication(
map['groupId'],
GroupMembersInfo.fromJson(_formatJson(map['member'])),
map['opReason'],
);
break;
case 'onApplicationProcessed':
groupManager.groupListener.onApplicationProcessed(
groupManager.groupListener.applicationProcessed(
map['groupId'],
GroupMembersInfo.fromJson(_formatJson(map['opUser'])),
map['agreeOrReject'],
@ -145,14 +145,14 @@ class IMManager {
var msg = Message.fromJson(_formatJson(value));
for (var listener in messageManager.advancedMsgListeners) {
if (listener.id == id) {
listener.onRecvNewMessage(msg);
listener.recvNewMessage(msg);
}
}
break;
case 'onRecvMessageRevoked':
for (var listener in messageManager.advancedMsgListeners) {
if (listener.id == id) {
listener.onRecvMessageRevoked(value);
listener.recvMessageRevoked(value);
}
}
break;
@ -161,7 +161,7 @@ class IMManager {
var list = l.map((e) => HaveReadInfo.fromJson(e)).toList();
for (var listener in messageManager.advancedMsgListeners) {
if (listener.id == id) {
listener.onRecvC2CReadReceipt(list);
listener.recvC2CReadReceipt(list);
}
}
break;
@ -173,7 +173,7 @@ class IMManager {
int progress = data['progress'] ?? 100;
switch (type) {
case 'onProgress':
messageManager.msgSendProgressListener?.onProgress(
messageManager.msgSendProgressListener?.progress(
msgID,
progress,
);
@ -184,14 +184,14 @@ class IMManager {
dynamic data = call.arguments['data'];
switch (type) {
case 'onSyncServerStart':
conversationManager.conversationListener.onSyncServerStart();
conversationManager.conversationListener.syncServerStart();
break;
case 'onSyncServerFinish':
conversationManager.conversationListener.onSyncServerFinish();
conversationManager.conversationListener.syncServerFinish();
break;
case 'onSyncServerFailed':
conversationManager.conversationListener.onSyncServerFailed();
conversationManager.conversationListener.syncServerFailed();
break;
case 'onNewConversation':
List<ConversationInfo> list = List.empty(growable: true);
@ -200,7 +200,7 @@ class IMManager {
.map((e) => ConversationInfo.fromJson(e))
.toList();
}
conversationManager.conversationListener.onNewConversation(list);
conversationManager.conversationListener.newConversation(list);
break;
case 'onConversationChanged':
List<ConversationInfo> list = List.empty(growable: true);
@ -210,11 +210,11 @@ class IMManager {
.toList();
}
conversationManager.conversationListener
.onConversationChanged(list);
.conversationChanged(list);
break;
case 'onTotalUnreadMessageCountChanged':
conversationManager.conversationListener
.onTotalUnreadMessageCountChanged(data ?? 0);
.totalUnreadMessageCountChanged(data ?? 0);
break;
}
} else if (call.method == ListenerType.friendListener) {
@ -223,35 +223,35 @@ class IMManager {
UserInfo u = UserInfo.fromJson(_formatJson(data));
switch (type) {
case 'onBlackListAdd':
friendshipManager.friendshipListener.onBlackListAdd(u);
friendshipManager.friendshipListener.blackListAdd(u);
break;
case 'onBlackListDeleted':
friendshipManager.friendshipListener.onBlackListDeleted(u);
friendshipManager.friendshipListener.blackListDeleted(u);
break;
case 'onFriendApplicationListAccept':
friendshipManager.friendshipListener
.onFriendApplicationListAccept(u);
.friendApplicationListAccept(u);
break;
case 'onFriendApplicationListAdded':
friendshipManager.friendshipListener
.onFriendApplicationListAdded(u);
.friendApplicationListAdded(u);
break;
case 'onFriendApplicationListDeleted':
friendshipManager.friendshipListener
.onFriendApplicationListDeleted(u);
.friendApplicationListDeleted(u);
break;
case 'onFriendApplicationListReject':
friendshipManager.friendshipListener
.onFriendApplicationListReject(u);
.friendApplicationListReject(u);
break;
case 'onFriendInfoChanged':
friendshipManager.friendshipListener.onFriendInfoChanged(u);
friendshipManager.friendshipListener.friendInfoChanged(u);
break;
case 'onFriendListAdded':
friendshipManager.friendshipListener.onFriendListAdded(u);
friendshipManager.friendshipListener.friendListAdded(u);
break;
case 'onFriendListDeleted':
friendshipManager.friendshipListener.onFriendListDeleted(u);
friendshipManager.friendshipListener.friendListDeleted(u);
break;
}
}
@ -334,8 +334,25 @@ class IMManager {
}
///
Future<String?> setSelfInfo(UserInfo info) {
return _channel.invokeMethod('setSelfInfo', _buildParam(info.toJson()));
Future<String?> setSelfInfo(
{String? name,
String? icon,
int? gender,
String? mobile,
String? birth,
String? email,
String? ex}) {
return _channel.invokeMethod(
'setSelfInfo',
_buildParam({
'name': name,
'icon': icon,
'gender': gender,
'mobile': mobile,
'birth': birth,
'email': email,
'ex': ex,
}));
// .then((value) => UserInfo.fromJson(value));
}

@ -1,8 +1,4 @@
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
import 'package:flutter_openim_sdk/src/openim.dart';
void main() {
/* const MethodChannel channel = MethodChannel('flutter_openim_sdk');
@ -42,7 +38,4 @@ void main() {
// print('${now.millisecond}');
// print('${now.microsecondsSinceEpoch}');
// print('${now.millisecondsSinceEpoch}');
}

Loading…
Cancel
Save