deleteMessagesWithMessage method

Future<V2TimCallback> deleteMessagesWithMessage(
  1. {required List<V2TimMessage> messageList}
)

Implementation

Future<V2TimCallback> deleteMessagesWithMessage({required List<V2TimMessage> messageList}) async {
  if (messageList.isEmpty) {
    print('deleteMessagesWithMessage, messageList is empty');
    return V2TimCallback.fromBool(false, 'messageList is empty');
  }

  String userData = Tools.generateUserData('deleteMessagesWithMessage');
  Completer<V2TimCallback> completer = Completer();
  NativeLibraryManager.timCallback2Future(userData, completer);

  V2TimMessage v2timMessage = messageList[0];
  String convID = v2timMessage.messageConvID;
  TIMConvType convType = v2timMessage.messageConvType;
  Pointer<Char> pConvID = Tools.string2PointerChar(convID);
  Pointer<Char> pMessageList = Tools.string2PointerChar(json.encode(messageList.map((e) => e.toJson()).toList));
  Pointer<Void> pUserData = Tools.string2PointerVoid(userData);
  NativeLibraryManager.bindings.DartDeleteMessages(pConvID, convType, pMessageList, pUserData);

  return completer.future;
}