getMessageDetails static method

Future<BaseMessage?> getMessageDetails(
  1. int messageId, {
  2. dynamic onSuccess(
    1. BaseMessage? message
    )?,
  3. dynamic onError(
    1. CometChatException excep
    )?,
})

Implementation

static Future<BaseMessage?> getMessageDetails(
  int messageId, {
  Function(BaseMessage? message)? onSuccess,
  Function(CometChatException excep)? onError,
}) async {
  try {
    final result = await channel.invokeMethod(
      'getMessageDetails',
      {"messageId": messageId},
    );

    if (result != null) {
      BaseMessage message = BaseMessage.fromMap(result);

      // Call the callback if provided
      if (onSuccess != null) onSuccess(message);

      return message;
    } else {
      // still call onSuccess with null if nothing found
      if (onSuccess != null) onSuccess(null);
      return null;
    }
  } on PlatformException catch (p) {
    debugPrint("Error: $p");
    _errorCallbackHandler(null, p, null, onError);
  } catch (e) {
    debugPrint("Error: $e");
    _errorCallbackHandler(null, null, e, onError);
  }
  return null;
}