Set message content
Update the MessageContent of a stored message.
warning
The SDK does not validate the MessageContent you provide. Ensure:
- The
MessageContentconforms to theMessagedefinition. - The
MessageContenttype matches theobjectName.
Incorrect values may cause corrupt data in the local database, affecting message display and search.
Set message content
There is no separate setMessageContent API. Use channel.updateMessage() with UpdateMessageParams to replace a stored message's content.
Parameters (UpdateMessageParams)
| Parameter | Type | Description |
|---|---|---|
messageId | String | The server message ID. |
content | MessageContent | The new message content (e.g., TextMessage, ImageMessage). |
- Kotlin
- Java
kotlin
val channel = DirectChannel("userId")
val newContent = TextMessage("Updated content")
val params = UpdateMessageParams(
messageId = message.messageId ?: "",
content = newContent
)
channel.updateMessage(params) { updatedMessage, error ->
if (error == null && updatedMessage != null) {
Log.d("SetMessageContent", "Message updated successfully")
} else {
Log.e("SetMessageContent", "Update failed: ${error?.code}")
}
}
Java
DirectChannel channel = new DirectChannel("userId");
TextMessage newContent = new TextMessage("Updated content");
UpdateMessageParams params = new UpdateMessageParams(
message.getMessageId(),
newContent
);
channel.updateMessage(params, (updatedMessage, error) -> {
if (error == null && updatedMessage != null) {
Log.d("SetMessageContent", "Message updated successfully");
} else {
Log.e("SetMessageContent", "Update failed: " + (error != null ? error.getCode() : "unknown"));
}
});