getMessageByIndex method

Future<TwilioConversationsMessage?> getMessageByIndex(
  1. String _channelSid,
  2. int _messageIndex,
  3. TwilioConversationsClient _chatClient
)

Implementation

Future<TwilioConversationsMessage?> getMessageByIndex(
    String _channelSid,
    int _messageIndex,
    TwilioWebClient.TwilioConversationsClient _chatClient) async {
  try {
    final channels =
        await promiseToFuture<JSPaginator<TwilioConversationsChannel>>(
      _chatClient.getSubscribedConversations(),
    );

    final messages =
        await promiseToFuture<JSPaginator<TwilioConversationsMessage>>(
            channels.items
                .firstWhere((element) => element.sid == _channelSid)
                .getMessages(2, _messageIndex, "forward"));

    return messages.items[0];
  } catch (e) {
    Logging.debug('error: getMessageByIndex ${e}');
    return null;
  }
}