This enumeration describes the Interactive data type for message.

FormResponseForm response is for message type ‘form’
WebURLData is of type web URL
TemplatePostbackData is of type Template Postback
QuickReplyPostbackData is of type Quick Reply Postback


This enumeration describes the type of templates supported for message.

FormIndicates the form message which will accept a set of form fields
GenericIndicates the templates for display and input


This enumeration describes the type of form fields supported for message type “form”

Validation should be a part of UI as per application requirements

TextText This field is string input
NameThis field is string input
EmailThis field is string input
IntegerThis field is integer input
DecimalThis field is decimal input
DateThis field is integer input
DropdownThis field is a dropdown input
MultiSelectDropdownThis field allows multiple value selection


AudioMedia type is Audio
FileMedia type is file
VideoMedia type is Video
ImageMedia type is Image
UrlMedia type is a URL link
TemplateMedia type is a Form Template


This enumeration describes the status of message

NoneStatus not available
NotSentMessage has not been sent
SentMessage has been sent
DeliveredMessage has been delivered
ReadMessage has been read
ClickedMessage has been clicked


This enumeration describes different error codes of the SDK.

Not InitializedReturned when trying to access a feature without initializing the SDK.
AlreadyInitializedReturned when trying to initialize the SDK when it is already initialized.
ConnectionAlreadyExistsReturned when the connection is already established.
NotRegisteredReturned when trying to access a feature without registering a user.
FeatureNotSupportedReturned when trying to access a feature that is not supported by the app.
InvalidParameterValueReturned when a required parameter is not passed or an invalid value has been passed to a method.
PermissionNotGrantedReturned when access is not granted to a permission that is required for operation.
NotConnectedReturned when trying to communicate with the Live Chat / In-App Messaging server without establishing a connection.
ConnectionFailureReturned when a connection is failed between the SDK and Live Chat / In-App Messaging server.
PublishFailedReturned when a publication of an Live Chat / In-App Messaging message has failed.
SubscribeFailedReturned when a subscription to an Live Chat / In-App Messaging topic has failed.
UnsubscribeFailedReturned when trying to unsubscribe from an Live Chat / In-App Messaging topic has failed.
UnknownReturned when an unknown error occurs.
DeviceIdCurrentlyNotRegistered (code 6006)Returned when the device ID is currently not registered.
DuplicateRegisterListener (code 6026)Duplicate register listener.
InvalidToken (code 6027)Invalid token.
InvalidAuthorizationRequest (code 6028)Invalid authorization request.
TokenExpired (code 6029)Token has expired.
TokenRequired (code 6030)Token is required.
AlreadyProcessingReturned when SDK is already processing a registration or unregistration request.
InvalidContentTypeInvalid content type
InternalErrorReturned in case file upload failure
DeviceIdAlreadyRegisteredReturned when a device is already registered for push.


This enumeration describes different access levels a topic can have. Write access is required to publish to a topic. Read access is required to subscribe to a topic.

ReadUsers are only permitted to receive a message on the topic.
WriteUsers are allowed to publish a message on the topic.
ReadWriteUsers can receive and publish messages on the topic.


This enumeration describes different filters used to fetch topics.

AllUsed to fetch all the topics regardless of access level.
ReadUsed to fetch the topics with Read access.
WriteUsed to fetch the topics with Write access.
ReadWriteUsed to fetch the topics with ReadWrite access.


This enumeration describes different connection statuses between the SDK and the Real-Time Messaging server.

NoneNo connection attempt has been made.
ConnectingThe SDK is attempting to establish a connection to the Real-Time Messaging server.
ConnectedThe SDK is connected and allows you to publish and receive messages.
RefusedThe connection is refused by the server.
Note: Currently this value is not used.
ClosedThe SDK is disconnected from the Real-Time Messaging server.
ErrorA connection error has occurred.


This enumeration describes different connection statuses and their respective error codes.

UserIdSpecifies the value passed in the UserId parameter in DeviceProfileParam.
CustomerIdSpecifies the value passed in the CustomerId parameter in DeviceProfileParam.


This enumeration describes the different types of messages.

MessageThe message is a standard Live Chat / In-App Messaging.
ReadReceiptThe message data is ReadReceipt. Only TransactionId is available and can be used to match receipt to the original message.
MessageNotificationThe message is a notification.
RepublishThe message is a republish of a MO, all data available in the original message is available.
ClickedReceiptMessage is a clicked receipt