Enumerations
The following enumerations are used in imiconnect iOS SDK.
- ICLogType
- ICLogTarget
- ICConnectionStatus
- ICErrorCode
- ICMessageChannel
- ICMessageType
- ICThreadType
- ICMessageSynchronizationMode
- ICMessageStatus
- ICThreadstatus
- ICEnvironment
- ICInAppNotificationType
- ICInteractiveDataType
- ICFormFieldType
- ICTemplateType
- ICTemplateAttachment
- ICFormTemplateAttachment
ICLogType
This enumeration exposes enumeration data with the type of logs that will be logged.
Value | Description |
---|---|
ICLogTypeNone | No log will be displayed/recorded. |
ICLogTypeDebug | A large number of logs will be logged that can help to debug. |
ICLogTypeProduction | Logs will be kept at a minimum level. |
ICLogTarget
This enumeration represents the target on which the logs will be displayed or recorded.
Value | Description |
---|---|
ICLogTargetConsole | Logs will be displayed in the console. |
ICLogTargetFile | Logs will be recorded in a file. |
ICConnectionStatus
This enumeration describes different connection status between the SDK and the Real-Time Messaging server.
Value | Description |
---|---|
ICConnectionStatusNone | No connection attempt has been made. |
ICConnectionStatusConnecting | The SDK is attempting to establish a connection with the Real-Time Messaging server. |
ICConnectionStatusConnected | The SDK is connected and allows you to publish and receive messages. |
ICConnectionStatusRefused | The connection is refused by the Real-Time Messaging server. |
ICConnectionStatusClosed | The SDK is disconnected from the Real-Time Messaging server. |
ICConnectionStatusError | A connection error has occurred while connecting to the Real-Time Messaging server. |
ICDeviceProfileParam
This enumeration describes the different device profile parameters supported for update and remove operations.
Value | Description |
---|---|
ICDeviceProfileParamUserId | Represents the User Id attribute of the device profile. |
ICDeviceProfileParamCustomerId | Represents the Customer Id attribute of the device profile. |
ICErrorCode
This enumeration describes different error codes of the SDK.
Value | Description |
---|---|
ICErrorCodeNotInitialized | Returned when trying to access a feature without initializing the SDK. |
ICErrorCodeAlreadyInitialized | Returned when trying to initialize the SDK when it is already initialized. |
ICErrorCodeNotRegistered | Returned when trying to access a feature without registering a user. |
ICErrorCodeFeatureNotSupported | Returned when trying to access a feature that is not supported by the app. |
ICErrorCodeInvalidParameterValue | Returned when a required parameter is not passed or an invalid value has been passed to a method. |
ICErrorCodeNotConnected | Returned when trying to communicate with the RTM server without establishing a connection. |
ICErrorCodeRegistrationFailure | Returned when registration is failed. |
ICErrorCodeInvalidResponse | Returned when a response from the server is invalid. |
ICErrorCodeTokenInvalid = 38 | The token is not in the expected format. |
ICErrorCodeTokenUnauthorized = 39 | The token does not provide authorization to access the requested resource. |
ICErrorCodeTokenExpired = 40 | The token has expired. |
ICErrorCodeTokenRequired = 41 | The token is required. |
ICMessageChannel
This enumeration describes the supported message channels.
Value | Description |
---|---|
ICMessageChannelPush | The incoming message comes from the Push notification channel. |
ICMessageChannelRealTime | The incoming message comes from Real Time Messaging channel. |
ICMessageType
This enumeration describes the message types.
Value | Description |
---|---|
ICMessageTypeBasic | A standard non-interactive message. |
ICMessageTypeInteractive | A message that contains pre-built out-of-the-box interactive elements. This type of message typically causes actions to occur on the device in response to notification buttons. |
ICMessageTypeAlert | Message data is alert from connect platform. |
ICMessageTypeDeliveryReceipt | Message data is a DeliveryReceipt, TransactionId is available and can be used to match the receipt to the original message. |
ICMessageTypeMessage | Standard Push or Live Chat / In-App Messaging. |
ICMessageTypeNotification | Represents the notification part of an Live Chat / In-App Messaging. |
ICMessageTypeReadReceipt | Message data is a ReadReceipt, only TransactionId is available and can be used to match the receipt to the original message. |
ICMessageTypeRepublish | The message is a republish of a MO, all data from the original message is available. |
ICMessageTypeTypingStart | Message data is a TypingStart from the connect platform end. |
ICMessageTypeTypingStop | Message data is a TypingStop from the connect platform end. |
ICMessageTypeClickedReceipt | Message data is a ClickedReceipt from the connect platform end. |
Note
Message field could be null for below message types:
- ICMessageTypeDeliveryReceipt
- ICMessageTypeReadReceipt
- ICMessageTypeTypingStart
- ICMessageTypeTypingStop
ICThreadType
Value | Description |
---|---|
ICThreadTypeConversation | The thread is a conversation, the users can send messages on this thread. |
ICThreadTypeAnnouncement | The thread is an announcement thread, the users can only receive messages on this thread. |
ICMessageSynchronizationMode
Value | Description |
---|---|
ICMessageSynchronizationModeFull | Synchronization should synchronize all available data. |
ICMessageSynchronizationModeLimited | Synchronization should occur based on policy limits. |
ICMessageSynchronizationModeNone | Synchronization should be disabled. |
ICMessageStatus
Value | Description |
---|---|
ICMessageStatusNone | None is the default message status. |
ICMessageStatusSent | Message sent successfully to connect the platform. |
ICMessageStatusDelivered | Message delivered to the user device. |
ICMessageStatusRead | The message read by the user device. |
ICThreadstatus
Value | Description |
---|---|
ICThreadStatusActive | The thread is active. The user can receive (and send if the thread type is a conversation) messages on this thread |
ICThreadStatusClosed | The thread is closed. The user cannot receive (and send if the thread type is a conversation) any messages on this thread |
iOS SDK Single Binary Changes
The section below describes the changes to convert the SDK to Single Binary which supports all the current environments.
ICEnvironment
This version of SDK has a new enum ICEnvironment
Value | Description |
---|---|
ICEnvironmentUK | It denotes the UK server environment |
ICEnvironmentUS | It denotes the US server environment |
ICEnvironmentCA | It denotes the CANADA server environment |
ICEnvironmentIN | It denotes the INDIA server environment |
ICEnvironmentTC | It denotes the TELECITY server environment |
ICEnvironmentAZURE_US | It denotes the AZURE US server environment |
ICEnvironmentLDN | It denotes the LONDON server environment |
ICInAppNotificationType
This enumeration describes the types of in-app notifications that can be displayed.
Value | Description |
---|---|
ICInAppNotificationTypeBanner | It displays the notification as a banner. |
ICInAppNotificationTypeModal | It displays the notification as a modal. |
ICInAppNotificationTypeNone | It displays none. |
ICInteractiveDataType
This enumeration describes the Interactive data type for message.
Value | Description |
---|---|
ICInteractiveDataTypeFormResponse | It denotes the form response for message type “form” |
ICInteractiveDataTypeWebURL | It denotes the response for “weburl” interactive data |
ICInteractiveDataTypeTemplatePostback | It denotes the response for “postback” Template interactive data |
ICInteractiveDataTypeQuickReplyPostback | It denotes the response for “postback” quick reply interactive data |
Form Template Message Type Changes
The following new enumerations added in this version of SDK.
ICFormFieldType
This enumeration describes the supported Form Fields.
Value | Description |
---|---|
ICFormFieldTypeText | It denotes the Text type form field |
ICFormFieldTypeName | It denotes the Name type form field |
ICFormFieldTypeEmail | It denotes the Email type form field |
ICFormFieldTypeInteger | It denotes the Integer type form field |
ICFormFieldTypeDecimal | It denotes the Decimal type form field |
ICFormFieldTypeDate | It denotes the Date type form field |
ICFormFieldTypeDropdown | It denotes the Dropdown type form field |
typedef enum
{
ICFormFieldTypeText,
ICFormFieldTypeName,
ICFormFieldTypeEmail,
ICFormFieldTypeInteger,
ICFormFieldTypeDecimal,
ICFormFieldTypeDate,
ICFormFieldTypeDropdown,
ICFormFieldTypeMultiSelectDropdown
} ICFormFieldType;
ICTemplateType
This enumeration describes the supported Template Types.
Value | Description |
---|---|
ICInteractiveDataTypeFormResponse | It denotes the Form Response type Interactive data |
ICTemplateTypeGeneric | It denotes the Generic type Interactive data |
Classes
The following new classes added in this version of SDK.
ICTemplateAttachment
This class exposes the data related to a Template Attachment.
Methods:
typeFromString:typeString:
This method Converts the Field Type String to ICTemplateType.
Syntax: + (ICTemplateType)typeFromString:(NSString *)typeString;
Parameters:
Parameter | Type | Description |
---|---|---|
typeString | NSString | Specifies the template type |
Return Value: Returns the ICTemplateType value equals to typeString passed to this method.
Sample Code:
ICTemplateType templateType = [ICTemplateAttachment typeFromString:@”form”];
stringFromType:type:
This method Converts the ICTemplateType to String.
Syntax: + (NSString *)stringFromType:( ICTemplateType)type;
Parameter | Type | Description |
---|---|---|
type | ICTemplateType | Specifies the template type |
Return Value: Returns the string value equals to ICTemplateType passed to this method.
Sample Code:
NSString *templateType = [ICTemplateAttachment stringFromType: ICTemplateTypeForm];
ICFormTemplateAttachment
This class exposes the data related to a Form Template.
Properties:
Property | Description |
---|---|
@property (nonatomic) NSString *formTitle; | The Form Title |
@property (nonatomic) NSArray *formFields; | The Form Fields |
Updated 9 days ago