Transient Messages

Learn how to send transient messages

Transient messages are messages that are sent in real-time only and are not saved or tracked anywhere. The receiver of the message will only receive the message if he is online and these messages cannot be retrieved later.

Send a Transient Message

You can use the sendTransientMessage() 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.

String receiverId = "superhero2";
String receiverType = CometChatConstants.RECEIVER_TYPE_USER;

JSONObject data = new JSONObject();
data.put("LIVE_REACTION", "heart");
TransientMessage transientMessage = new TransientMessage(uid, CometChatConstants.RECEIVER_TYPE_USER, data);
CometChat.sendTransientMessage(transientMessage);

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 the onTransientMessageReceived() method of the registered MessageListener class.

CometChat.addMessageListener("UNIQUE_LISTENER_ID", new CometChat.MessageListener() {
  @Override
    public void onTransientMessageReceived(TransientMessage transientMessage) {
        Log.d(TAG, "Transient message received with data : " + transientMessage.getData());  
  }
 
});

The TransientMessage class consists of the below parameters:

Parameter

Information

sender

An object of the User class holding all the information. related to the sender of the transient message.

receiverId

Unique Id of the receiver. This can be the Id of the group or the user the transient message is sent to.

receiverType

This parameter indicates if the transient message is to be sent to a user or a group. The possible values are:

  1. CometChatConstants.RECEIVER_TYPE_USER
  2. CometChatConstants.RECEIVER_TYPE_GROUP

data

A JSONObject to provide data.


Did this page help you?