useChannelMembers for PubNub Chat Components for React

The hook returns a list of members in a channel.

The list will include user metadata for members that have additional metadata stored in the database. Pagination is handled internally. You can adjust the limit of returned members on a single call (max/default 100) and call a function returned by the hook to get another page of results.

This hook also sets up a listener that reacts to removals of already fetched members. Updates and new memberships are not handled due to technical limitations. However, this behavior requires a living subscription to the channel getting updated - this should be handled by the components.

const [members, fetchPage, refetchChannelMembers, total, error, isLoading] = useChannelMembers({
channel: "channel",
});

return (
<Chat {...{ options }}>
<MemberList members={members} />
</Chat>
);

Input

User ID / UUID

User ID is also referred to as UUID/uuid in some APIs and server responses but holds the value of the userId parameter you set during initialization.

ParameterTypeRequiredDefaultsDescription
includeObjectOptionaln/aOption to include respective additional fields in the response.
→ UUIDFieldsBooleanOptionalfalseOption to include fields for User ID metadata.
→ customUUIDFieldsBooleanOptionalfalseOption to include custom fields for User ID metadata.
filterStringOptionaln/aExpression used to filter the results. Only objects whose properties satisfy the given expression are returned. See the App Context Filtering Language Definition for more details.
sortObjectOptionaln/aKey-value pair of a property to sort by and a sort direction.

Available options are id, name, and updated.

Use asc or desc to specify sort direction, or specify null to take the default sort direction (ascending).

Example: {name: 'asc'}
limitNumberOptional100Number of objects to return in response.

Default is 100 which is also the maximum value.

Output

ParameterTypeDescription
array[0]User[]List of returned members.
array[1]FunctionFunction that can be called to fetch another page of members.
array[2]FunctionFunction that can be called to completely reset the hook. This can be used in case of expected members updates.
array[3]NumberTotal number of stored members.
array[4]ErrorIf there's an error fetching members, it will be available here.
array[5]BooleanIndicator that the channel member data is still being loaded.
Last updated on
On this page