deleteMessage method

Future<void> deleteMessage(
  1. List<RCIMIWMessage> deleteMessage,
  2. BuildContext context
)

Implementation

Future<void> deleteMessage(
    List<RCIMIWMessage> deleteMessage, BuildContext context) async {
  stopPlayVoiceAndReference(deleteMessage, context);
  await engineProvider.engine?.deleteMessages(
    _con.conversationType ?? RCIMIWConversationType.invalid,
    _con.targetId ?? '',
    _con.channelId,
    deleteMessage,
    callback: IRCIMIWDeleteMessagesCallback(
      onMessagesDeleted: (code, messages) {
        if (code == 0) {
          for (var i = 0; i < messages!.length; i++) {
            for (var j = 0; j < _messages.length; j++) {
              if (_messages[j].messageId == messages[i].messageId) {
                _messages.removeAt(j);
              }
            }
          }
          notifyListeners();
        }
        RCIMWrapperPlatform.instance.writeLog('RCKChatProvider deleteMessage',
            '', code ?? 0, 'onMessagesDeleted: ${messages?.length}');
      },
    ),
  );
}