Enumerations

IMI.ICInteractiveDataType

This enumeration describes the Interactive data type for message.

ValueDescription
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

IMI.ICTemplateType

This enumeration describes the type of templates supported for message.

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

IMI.ICFormFieldType

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

Validation should be a part of UI as per application requirements

ValueDescription
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

IMI.ICContentType

ValueDescription
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

IMI.ICMessageStatus

This enumeration describes the status of message

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

IMI.ICErrorCodes

This enumeration describes different error codes of the SDK.

ValueDescription
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.
SDKVersionNotSupportedIndicates the SDK version not supported

IMI.ICAccessLevel

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.

ValueDescription
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.

IMI.ICAccessLevelFilter

This enumeration describes different filters used to fetch topics.

ValueDescription
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.

IMI.ICConnectionStatus

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

ValueDescription
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.

IMI.ICDeviceProfileParam

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

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

IMI.ICMessageType

This enumeration describes the different types of messages.

ValueDescription
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