Custom Message Content
Custom Normal Message content base class.
Business party Inherits This class from Define Custom Message class type, SDK internal Responsible for Register, Send and Receive Decode. no need to access internal SDK any Type.
Subclass need:
Provides no-argument Constructor (SDK Via reflection Create instance)
Implements messageType, persistentFlag, encodeFields, decodeFields
Usage Example:
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))Message type identifier.
Inherited properties
Functions
Receive message When Call, From JSON Field data restore Custom message's Property.
Send message When Call, Convert Custom message Field Convert to serializable key-value Field.
Not can by "RC:" prefix ("RC:" official reserved prefix).
See MessageFlag Constants:
Used for Message search Feature, Returns need Was/were indexed keyword.
Inherited functions
after reading i.e. burn-after-reading destroy When time (Unit: seconds), message Read after passing This When destroy after time
@ mention Info
Whether after reading i.e. burn message
Whether after reading i.e. burn message
after reading i.e. burn-after-reading destroy When time (Unit: seconds), message Read after passing This When destroy after time
@ mention Info