insertC2CMessageToLocalStorage method
Implementation
Future<V2TimValueCallback<V2TimMessage>> insertC2CMessageToLocalStorage({
required String data,
required String userID,
required String sender,
}) async {
if (!TIMManager.instance.isInitSDK()) {
return V2TimValueCallback<V2TimMessage>(code: TIMErrCode.ERR_SDK_NOT_INITIALIZED.value, desc: "sdk not init");
}
String userData = Tools.generateUserData('insertC2CMessageToLocalStorage');
Completer<V2TimValueCallback<V2TimMessage>> completer = Completer();
NativeLibraryManager.timValueCallback2Future<V2TimMessage>(userData, completer);
V2TimMessage message = createCustomMessage(data: data).messageInfo!;
message.userID = userID;
message.sender = sender;
Pointer<Char> pUserID= Tools.string2PointerChar(userID);
Pointer<Char> pMessage = Tools.string2PointerChar(json.encode(message.toJson()));
Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
NativeLibraryManager.bindings.DartSaveMessage(pUserID, TIMConvType.kTIMConv_C2C, pMessage, pUserData);
return completer.future;
}