Add a Reaction
Users can add a reaction to a message by callingaddReaction
with the message ID and the reaction emoji.
You can react on Text, Media and Custom messages.
Remove a Reaction
Removing a reaction from a message can be done using theremoveReaction
method.
Fetch Reactions for a Message
To get all reactions for a specific message, first create aReactionsRequest
using ReactionsRequestBuilder
. You can specify the number of reactions to fetch with setLimit
with max limit 100. For this, you will require the ID of the message. This ID needs to be passed to the setMessageId()
method of the builder class. The set(reaction: String)
will allow you to fetch details for specific reaction or emoji.
Methods | Description |
---|---|
setMessageId(messageId: Int) | Specifies the unique identifier of the message for which you want to fetch reactions. This parameter is mandatory as it tells the SDK which message’s reactions are being requested. |
setReaction(reaction: String) | Filters the reactions fetched by the specified reaction type (e.g., ”😊”, ”😂”, ”👍”). When set, this method will cause the ReactionsRequest to only retrieve details of the provided reaction for the given message. |
Fetch Next Reactions
ThefetchNext()
method fetches the next set of reactions for the message.
Fetch Previous Reactions
ThefetchPrevious()
method fetches the previous set of reactions for the message.
Real-time Reaction Events
Keep the chat interactive with real-time updates for reactions. Register a listener for these events and make your UI responsive.Removing a Reaction Listener
To stop listening for reaction events, remove the listener as follows:Get Reactions List
To retrieve the list of reactions reacted on particular message, you can use themessage.reactions
method. This method will return an array containing the reactions, or an empty array if no one reacted on the message.
Check if Logged-in User has Reacted on Message
To check if the logged-in user has reacted on a particular message or not, You can use thereactedByMe()
method on any ReactionCount
object instance. This method will return a boolean value, true
if the logged-in user has reacted on that message, otherwise false
.
Updated Message With Reaction Info
When a user adds or removes a reaction, you will receive a real-time event. Once you receive the real time event you would want to update the message with the latest reaction information. To do so you can use theupdateMessageWithReactionInfo()
method.
The updateMessageWithReactionInfo()
method provides a seamless way to update the reactions on a message instance (BaseMessage
) in real-time. This method ensures that when a reaction is added or removed from a message, the BaseMessage
object’s reactions
property reflects this change immediately.
When you receive a real-time reaction event (ReactionEvent
), call the updateMessageWithReactionInfo()
method, passing the BaseMessage instance (message
), reaction data from the reaction event (ReactionEvent.reaction
) and reaction event action type (ReactionAction.REACTION_ADDED
or ReactionAction.REACTION_REMOVED
) that corresponds to the message being reacted to.
message
instance’s reactions are updated. You can then use message.reactions
to get the latest reactions and refresh your UI accordingly.