And this scenario:
My user has 11 conversations with messages, then he is invited in a new one (without any message), he fetches the channels and has the conversation where he’s invited (even if it has no messages) at the top of the list, then he accepts the invitation, refetches the channels → The conversation is now not in the current list result he will have to load next page to see the new conversation at the bottom.
This does not makes sense for us, why the conversation is at the top of the first list as long as the user is in an invited state, and then at the bottom of the second page once joined ?
Are you using includeEmptyChannel option with GroupChannelListQuery()?
Using the includeEmptyChannel option of a GroupChannelListQuery instance, you can determine whether to include empty channels in the result. Empty channels are group channels that have been created but don’t contain any messages, and thus aren’t included in the result by default. However, if you turn off the Chat history option in your dashboard, you may retrieve empty channels in the result.
includeEmptyChannel is true by default, which is the behavior we want.
What we found weird is the sorting with pagination, why a channel without message (where i’m invited) is in the first page and when I accept the invitation it appears in the second page.