Quick Reference — Send a transient message:
Available via: SDK
Send a Transient Message
You can use thesendTransientMessage() method to send a transient message to a user or in a group. The receiver will receive this information in the onTransientMessageReceived() method of the MessageListener class. In order to send the transient message, you need to use the TransientMessage class.
- To User
- To Group
- TypeScript (User)
- TypeScript (Group)
Response
Response
On Success —
sendTransientMessage() does not return a value, but the transient message object sent looks like:TransientMessage Object:data Object:Real-time Transient Messages
In other words, as a recipient, how do I know when someone sends a transient message? You will receive the transient message in theonTransientMessageReceived() method of the registered MessageListener class.
- JavaScript
- TypeScript
Response
Response
On Event —
onTransientMessageReceived returns the transient message object with sender info:TransientMessage Object:data Object:sender Object:TransientMessage class consists of the below parameters:
Best Practices
Best Practices
- Use transient messages for ephemeral interactions only — Since transient messages are not stored, they are ideal for features like live reactions, presence pings, or real-time indicators that don’t need to persist.
- Keep the data payload small — Transient messages are designed for lightweight, real-time signals. Avoid sending large JSON objects in the
datafield. - Use unique listener IDs — Each screen or component that registers a
MessageListenershould use a distinctlistenerIdto avoid conflicts with other listeners. - Confirm the receiver is online — Transient messages are only delivered to online users. If guaranteed delivery is required, use a regular message instead.
- Pair with typing indicators for richer UX — Combine transient messages with typing indicators to build expressive, real-time chat experiences.
Troubleshooting
Troubleshooting
- Recipient not receiving transient messages — Verify that the recipient is online and has registered a
MessageListenerwith theonTransientMessageReceivedcallback before the sender dispatches the message. - Listener not firing — Confirm that the
listenerIdused inaddMessageListeneris unique and that the listener has not been removed prematurely. - Messages not arriving in groups — Make sure you are using
CometChat.RECEIVER_TYPE.GROUPwith the correct group ID (GUID), not a user ID. - Cannot retrieve transient messages later — This is expected behavior. Transient messages are never stored. If you need message persistence, use send a message instead.
- Data field appears empty on the receiver side — Ensure you are passing a valid JSON object to the
dataparameter when constructing theTransientMessageinstance.
Next Steps
Typing Indicators
Send and receive real-time typing indicators in conversations.
Send a Message
Send text, media, and custom messages to users and groups.
Receive Messages
Set up real-time and fetch-based message receiving.
Messaging Overview
Explore the full messaging feature set available in the SDK.