getMessagesBefore method

Future<List<Message>> getMessagesBefore({
  1. required int index,
  2. required int count,
})

Fetch at most count messages including and prior to the specified index.

Implementation

Future<List<Message>> getMessagesBefore({
  required int index,
  required int count,
}) async {
  if (!hasMessages) {
    return [];
  }
  try {
    final result = await TwilioConversations()
        .conversationApi
        .getMessagesBefore(sid, index, count);

    final messages = result
        .whereNotNull()
        .map<Message>((i) =>
            Message.fromMap(Map<String, dynamic>.from(i.encode() as Map)))
        .toList();

    return messages;
  } on PlatformException catch (err) {
    throw TwilioConversations.convertException(err);
  }
}