Skip to main content

Get Group Chatrooms

The Home Feed is a vital component of many applications, providing users with a centralized hub to discover and engage with various content, including chatrooms, discussions, and other interactive features. In the context of the Flutter SDK, the Home Feed serves as a customizable and dynamic feed that can be tailored to suit your application's needs.

This guide provide step-by-step instructions, code snippets, and best practices for integrating the Home Feed and fetching community chatrooms in your Flutter app.

Let's dive into the world of Home Feed integration with the Flutter SDK and unlock the potential for vibrant chatroom communities within your application.

Steps to Get Group Chatrooms

  1. Create an object of the GetHomeFeedRequest class.
  2. Call the getHomeFeed() function using the instance of the LMChatClient class.
  3. Process the response LMResponse<GetHomeFeedResponse> as per your requirement.
GetHomeFeedRequest request = (GetHomeFeedRequestBuilder()
..page(1) // Specify the page number
..pageSize(20) // Set the page size
..minTimestamp(1627683600) // Minimum timestamp
..maxTimestamp(1627770000) // Maximum timestamp
..chatroomTypes([0, 7]) // Specify chatroom types
..tag('tag_name') // Add a tag filter
..isLocalDb(true)) // Use local database
.build();

final LMResponse<GetHomeFeedResponse> response =
await lmChatClient.getHomeFeed(request);

if (response.success) {
// Handle the home feed response
GetHomeFeedResponse homeFeed = response.data!;
handleHomeFeed(homeFeed);
} else {
// Handle error
handleError(response);
}

Models

GetHomeFeedRequest

List of parameters for the GetHomeFeedRequest class

VariableTypeDescriptionOptional
pageintPage number for paginated response
pageSizeint?Page size for paginated response✔️
minTimestampint?Minimum timestamp for filtering✔️
maxTimestampint?Maximum timestamp for filtering✔️
chatroomTypesList<int>?List of chatroom types to filter✔️
tagString?The tag filter for the home feed✔️
isLocalDbboolFlag to indicate local DB usage✔️

GetHomeFeedResponse

List of parameters for the GetHomeFeedResponse class

VariableTypeDescriptionOptional
communityMetaMap<String, Community>?Map of communities with their ID as the key✔️
chatroomsDataList<ChatRoom>?List of chatrooms✔️
conversationMetaMap<String, Conversation>?Map of conversations with their ID as the key✔️
userMetaMap<int, User>?Map of users with their ID as the key✔️
cardAttachmentsMetaMap<String, Attachment>?Map of card attachments✔️
conversationAttachmentsMetaMap<String, List<Attachment>?Map of conversation attachments with their ID as the key✔️
conversationPollsMetaMap<dynamic, dynamic>?Map of conversation polls✔️