register Custom Messages
Register custom message types.
Business party Via Inherits CustomMessageContent or CustomMediaMessageContent Define Custom message, and In initialize After, connect Before Call This Method Register.
SDK internal will auto-complete:
read objectName, persistentFlag etc. meta Data
direction internal Register Message class type
In Send/Receive When auto-complete encoding Decode
Parameters
identifier
Handle handler unique Identifier, Used for subsequent Remove
// 1. Define Custom message (Inherits CustomMessageContent)
class CardMessage : CustomMessageContent() {
var title: String = ""
var imageUrl: String = ""
var linkUrl: String = ""
override fun messageType(): String = "app:card"
override fun persistentFlag(): Int = MessageFlag.COUNT
override fun encodeFields(): Map<String, Any?> = mapOf(
"title" to title,
"imageUrl" to imageUrl,
"linkUrl" to linkUrl
)
override fun decodeFields(fields: Map<String, Any?>) {
title = fields["title"] as? String ?: ""
imageUrl = fields["imageUrl"] as? String ?: ""
linkUrl = fields["linkUrl"] as? String ?: ""
}
}
NCEngine.registerCustomMessages(listOf(CardMessage::class.java))
NCEngine.registerCustomMessages(listOf(CardMessage::class.java))Content copied to clipboard
CustomMessageContent or CustomMediaMessageContent ========================================