insertGroupMessageToLocalStorageV2 method
Implementation
Future<V2TimValueCallback<V2TimMessage>> insertGroupMessageToLocalStorageV2({
required String groupID,
required String senderID,
required String createdMsgID,
}) async {
if (!TIMManager.instance.isInitSDK()) {
return V2TimValueCallback<V2TimMessage>(code: TIMErrCode.ERR_SDK_NOT_INITIALIZED.value, desc: "sdk not init");
}
V2TimMessage? v2timMessage = messageIDMap[createdMsgID];
if (v2timMessage == null) {
print("insertGroupMessageToLocalStorageV2, message not found");
return V2TimValueCallback<V2TimMessage>.fromBool(false, 'message not found');
}
v2timMessage.groupID = groupID;
v2timMessage.sender = senderID;
String userData = Tools.generateUserData('insertGroupMessageToLocalStorageV2');
Completer<V2TimValueCallback<V2TimMessage>> completer = Completer();
NativeLibraryManager.timValueCallback2Future<V2TimMessage>(userData, completer);
Pointer<Char> pGroupID = Tools.string2PointerChar(groupID);
Pointer<Char> pMessage = Tools.string2PointerChar(json.encode(v2timMessage.toJson()));
Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
NativeLibraryManager.bindings.DartSaveMessage(pGroupID, TIMConvType.kTIMConv_Group, pMessage, pUserData);
return completer.future;
}