init
This commit is contained in:
parent
3bcc338945
commit
c8a895e925
@ -7,8 +7,8 @@ buildscript {
|
||||
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
|
||||
maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
|
||||
maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
|
||||
// maven { url 'http://47.112.160.66:8081/repository/maven-releases'}
|
||||
maven { url 'http://127.0.0.1:8081/repository/maven-releases' }
|
||||
maven { url 'http://47.112.160.66:8081/repository/maven-releases'}
|
||||
// maven { url 'http://127.0.0.1:8081/repository/maven-releases' }
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
@ -24,8 +24,8 @@ rootProject.allprojects {
|
||||
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
|
||||
maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
|
||||
maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
|
||||
// maven { url 'http://47.112.160.66:8081/repository/maven-releases'}
|
||||
maven { url 'http://127.0.0.1:8081/repository/maven-releases' }
|
||||
maven { url 'http://47.112.160.66:8081/repository/maven-releases'}
|
||||
// maven { url 'http://127.0.0.1:8081/repository/maven-releases' }
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
@ -45,6 +45,6 @@ android {
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
implementation 'io.openim:client:0.0.7@aar'
|
||||
// implementation 'io.openim:client-sdk:1.0.0@aar'//graoupId:artifactId:version@aar
|
||||
// implementation 'io.openim:client:0.0.7@aar'
|
||||
implementation 'io.openim:client-sdk:0.0.2@aar'//graoupId:artifactId:version@aar
|
||||
}
|
@ -54,7 +54,7 @@ public class MessageManager {
|
||||
}
|
||||
|
||||
public void deleteMessages(MethodCall methodCall, MethodChannel.Result result) {
|
||||
// Open_im_sdk.deleteMessages(new BaseImpl(result), CommonUtil.getSDKJsonParam(methodCall));
|
||||
// Open_im_sdk.deleteMessages(new BaseListener(result), CommonUtil.getSDKJsonParam(methodCall));
|
||||
}
|
||||
|
||||
public void insertSingleMessageToLocalStorage(MethodCall methodCall, MethodChannel.Result result) {
|
||||
@ -65,7 +65,7 @@ public class MessageManager {
|
||||
}
|
||||
|
||||
public void findMessages(MethodCall methodCall, MethodChannel.Result result) {
|
||||
Open_im_sdk.findMessages(new BaseListener(result), CommonUtil.getFindMessageIds(methodCall));
|
||||
Open_im_sdk.findMessages(new BaseListener(result), CommonUtil.getMessageIdList(methodCall));
|
||||
}
|
||||
|
||||
public void markSingleMessageHasRead(MethodCall methodCall, MethodChannel.Result result) {
|
||||
@ -77,7 +77,14 @@ public class MessageManager {
|
||||
}
|
||||
|
||||
public void markC2CMessageAsRead(MethodCall methodCall, MethodChannel.Result result) {
|
||||
// Open_im_sdk.markC2CMessageAsRead(new BaseImpl(result), CommonUtil.getSingleMessageUserid(methodCall));
|
||||
Open_im_sdk.markC2CMessageAsRead(new BaseListener(result),
|
||||
CommonUtil.getSingleMessageUserid(methodCall),
|
||||
CommonUtil.getMessageIdList(methodCall));
|
||||
}
|
||||
|
||||
public void typingStatusUpdate(MethodCall methodCall, MethodChannel.Result result) {
|
||||
Open_im_sdk.typingStatusUpdate(CommonUtil.getSingleMessageUserid(methodCall),
|
||||
CommonUtil.getSingleMessageTyping(methodCall));
|
||||
}
|
||||
|
||||
public void createTextMessage(MethodCall methodCall, MethodChannel.Result result) {
|
||||
|
@ -199,7 +199,11 @@ public class CommonUtil {
|
||||
return getParamValue(methodCall, KEY_SINGLE_MESSAGE_SENDER);
|
||||
}
|
||||
|
||||
public static String getFindMessageIds(MethodCall methodCall) {
|
||||
public static String getSingleMessageTyping(MethodCall methodCall) {
|
||||
return getParamValue(methodCall, KEY_SINGLE_MESSAGE_TYPING);
|
||||
}
|
||||
|
||||
public static String getMessageIdList(MethodCall methodCall) {
|
||||
return getSDKJsonParam(methodCall, KEY_FIND_MESSAGE_IDS);
|
||||
}
|
||||
|
||||
@ -288,6 +292,7 @@ public class CommonUtil {
|
||||
final static String KEY_SINGLE_MESSAGE_CONTENT = "message";
|
||||
final static String KEY_SINGLE_MESSAGE_USERID = "userID";
|
||||
final static String KEY_SINGLE_MESSAGE_SENDER = "sender";
|
||||
final static String KEY_SINGLE_MESSAGE_TYPING = "typing";
|
||||
//group chat
|
||||
final static String KEY_GROUP_MESSAGE_GROUPID = "groupID";
|
||||
// find message
|
||||
|
@ -9,7 +9,7 @@ class MessageType {
|
||||
static const merger = 107;
|
||||
static const revoke = 111;
|
||||
static const has_read_receipt = 112;
|
||||
static const typing = 112;
|
||||
static const typing = 113;
|
||||
|
||||
///
|
||||
static const accept_friend = 201;
|
||||
|
@ -9,7 +9,7 @@ class AdvancedMsgListener {
|
||||
|
||||
void onRecvNewMessage(Message msg) {}
|
||||
|
||||
void onRecvC2CReadReceipt(Message msg) {}
|
||||
void onRecvC2CReadReceipt(HaveReadInfo info) {}
|
||||
|
||||
void onRecvMessageRevoked(String msgId) {}
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
import 'dart:convert';
|
||||
import 'dart:developer';
|
||||
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
|
||||
@ -138,11 +139,11 @@ class IMManager {
|
||||
} else if (call.method == ListenerType.advancedMsgListener) {
|
||||
var type = call.arguments['type'];
|
||||
var id = call.arguments['data']['id'];
|
||||
|
||||
var value = call.arguments['data']['message'];
|
||||
log('====================type:$type $value');
|
||||
switch (type) {
|
||||
case 'onRecvNewMessage':
|
||||
var msg = Message.fromJson(
|
||||
_formatJson(call.arguments['data']['message']));
|
||||
var msg = Message.fromJson(_formatJson(value));
|
||||
for (var listener in messageManager.advancedMsgListeners) {
|
||||
if (listener.id == id) {
|
||||
listener.onRecvNewMessage(msg);
|
||||
@ -150,17 +151,17 @@ class IMManager {
|
||||
}
|
||||
break;
|
||||
case 'onRecvMessageRevoked':
|
||||
var msgId = call.arguments['data']['message'];
|
||||
for (var listener in messageManager.advancedMsgListeners) {
|
||||
if (listener.id == id) {
|
||||
listener.onRecvMessageRevoked(msgId);
|
||||
listener.onRecvMessageRevoked(value);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'onRecvC2CReadReceipt':
|
||||
var info = HaveReadInfo.fromJson(_formatJson(value));
|
||||
for (var listener in messageManager.advancedMsgListeners) {
|
||||
if (listener.id == id) {
|
||||
listener.onRecvC2CReadReceipt(Message());
|
||||
listener.onRecvC2CReadReceipt(info);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -36,7 +36,7 @@ class MessageManager {
|
||||
}
|
||||
|
||||
/// send a message to user or to group
|
||||
///
|
||||
/// userID: receiver's user ID
|
||||
Future<dynamic> sendMessage({
|
||||
required Message message,
|
||||
String? userID,
|
||||
@ -55,6 +55,7 @@ class MessageManager {
|
||||
}
|
||||
|
||||
/// find all history message
|
||||
/// userID: the user id of the chat partner
|
||||
Future<List<Message>> getHistoryMessageList({
|
||||
String? userID,
|
||||
String? groupID,
|
||||
@ -93,6 +94,8 @@ class MessageManager {
|
||||
}
|
||||
|
||||
///
|
||||
/// @params userID: receiver's user ID
|
||||
/// @params sender: current user ID
|
||||
Future insertSingleMessageToLocalStorage({
|
||||
String? userID,
|
||||
Message? message,
|
||||
@ -117,6 +120,7 @@ class MessageManager {
|
||||
}
|
||||
|
||||
///
|
||||
/// @params userID: receiver's userID
|
||||
Future<dynamic> markSingleMessageHasRead({required String userID}) {
|
||||
return _channel.invokeMethod(
|
||||
'markSingleMessageHasRead', _buildParam({'userID': userID}));
|
||||
@ -128,6 +132,35 @@ class MessageManager {
|
||||
'markGroupMessageHasRead', _buildParam({'groupID': groupID}));
|
||||
}
|
||||
|
||||
///
|
||||
/// @params userID: receiver's user ID
|
||||
Future markC2CMessageAsRead({
|
||||
required String userID,
|
||||
required List<String> messageIDList,
|
||||
}) {
|
||||
return _channel.invokeMethod(
|
||||
'markC2CMessageAsRead',
|
||||
_buildParam({
|
||||
"messageIDList": messageIDList,
|
||||
"userID": userID,
|
||||
}));
|
||||
}
|
||||
|
||||
///
|
||||
/// @params userID: receiver's user ID
|
||||
/// @params status: default no
|
||||
Future typingStatusUpdate({
|
||||
required String userID,
|
||||
bool typing = false,
|
||||
}) {
|
||||
return _channel.invokeMethod(
|
||||
'typingStatusUpdate',
|
||||
_buildParam({
|
||||
"typing": typing ? 'yes' : 'no',
|
||||
"userID": userID,
|
||||
}));
|
||||
}
|
||||
|
||||
///
|
||||
Future<Message> createTextMessage({required String text}) {
|
||||
return _channel
|
||||
|
@ -368,43 +368,41 @@ class AtElem {
|
||||
}
|
||||
}
|
||||
|
||||
class RevokeMessage {
|
||||
String? serverMsgID;
|
||||
String? sendID;
|
||||
String? senderNickname;
|
||||
String? recvID;
|
||||
String? groupID;
|
||||
class HaveReadInfo {
|
||||
String? uid;
|
||||
List<String>? msgIDList;
|
||||
int? readTime;
|
||||
int? msgFrom;
|
||||
int? contentType;
|
||||
int? sendTime;
|
||||
int? sessionType;
|
||||
|
||||
RevokeMessage(
|
||||
{this.serverMsgID,
|
||||
this.sendID,
|
||||
this.senderNickname,
|
||||
this.recvID,
|
||||
this.groupID,
|
||||
HaveReadInfo(
|
||||
{this.uid,
|
||||
this.msgIDList,
|
||||
this.readTime,
|
||||
this.msgFrom,
|
||||
this.contentType,
|
||||
this.sendTime});
|
||||
this.sessionType});
|
||||
|
||||
RevokeMessage.fromJson(Map<String, dynamic> json) {
|
||||
serverMsgID = json['serverMsgID'];
|
||||
sendID = json['sendID'];
|
||||
senderNickname = json['senderNickname'];
|
||||
recvID = json['recvID'];
|
||||
groupID = json['groupID'];
|
||||
HaveReadInfo.fromJson(Map<String, dynamic> json) {
|
||||
uid = json['uid'];
|
||||
if (json['msgIDList'] is List) {
|
||||
msgIDList = (json['msgIDList'] as List).map((e) => '$e').toList();
|
||||
}
|
||||
readTime = json['readTime'];
|
||||
msgFrom = json['msgFrom'];
|
||||
contentType = json['contentType'];
|
||||
sendTime = json['sendTime'];
|
||||
sessionType = json['sessionType'];
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() {
|
||||
final Map<String, dynamic> data = new Map<String, dynamic>();
|
||||
data['serverMsgID'] = this.serverMsgID;
|
||||
data['sendID'] = this.sendID;
|
||||
data['senderNickname'] = this.senderNickname;
|
||||
data['recvID'] = this.recvID;
|
||||
data['groupID'] = this.groupID;
|
||||
data['uid'] = this.uid;
|
||||
data['msgIDList'] = this.msgIDList;
|
||||
data['readTime'] = this.readTime;
|
||||
data['msgFrom'] = this.msgFrom;
|
||||
data['contentType'] = this.contentType;
|
||||
data['sendTime'] = this.sendTime;
|
||||
data['sessionType'] = this.sessionType;
|
||||
return data;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user