insertC2CMessageToLocalStorageV2 method
Implementation
Future<V2TimValueCallback<V2TimMessage>> insertC2CMessageToLocalStorageV2({
required String userID,
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("insertC2CMessageToLocalStorageV2, message not found");
return V2TimValueCallback<V2TimMessage>.fromBool(false, 'message not found');
}
v2timMessage.userID = userID;
v2timMessage.sender = senderID;
String userData = Tools.generateUserData('insertC2CMessageToLocalStorageV2');
Completer<V2TimValueCallback<V2TimMessage>> completer = Completer();
NativeLibraryManager.timValueCallback2Future<V2TimMessage>(userData, completer);
Pointer<Char> pUserID = Tools.string2PointerChar(userID);
Pointer<Char> pMessage = Tools.string2PointerChar(json.encode(v2timMessage.toJson()));
Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
NativeLibraryManager.bindings.DartSaveMessage(pUserID, TIMConvType.kTIMConv_C2C, pMessage, pUserData);
return completer.future;
}