CXoneChatError
public enum CXoneChatError : LocalizedError, Equatable
The different types of errors that may be experienced.
-
The method being called is not supported with the current channel configuration.
Some features are available only with multithread channel configuration.
- Source of problem: SDK used incorrectly.
Attention
The channel is configured as a single-thread and called method requires a feature of multi-thread configuration, e.g.create()
.
Declaration
Swift
case unsupportedChannelConfig
- Source of problem: SDK used incorrectly.
-
The conversion from object instance to data failed or when the Data object cannot be successfully converted to a valid UTF-8 string
SDK is converting an object, like
String
, to theData
and vice versa and the conversion failed.- Source of problem: SDK/DFO issue
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case invalidData
-
The provided ID for the thread was invalid, so the action could not be performed.
The SDK tried to find required thread but it does not exist or it is no more available.
- Source of problem: SDK used incorrectly
Attention
Check if thread exists and you are providing correct threadid
which reffers tothreadIdOnExternalPlatform
.Declaration
Swift
case invalidThread
-
There aren’t any other messages, so additional messages could not be loaded.
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case noMoreMessages
-
The provided attachment was unable to be sent.
CXone service does not receive any/all attachments.
- Source of problem: Unstable connection/SDK issue
Attention
Check if channel environment works correctly or gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case attachmentError
-
The size of the attachment exceeds the allowed size
Channel
fileRestrictions
define allowed file size which can be received by the backend- Source of problem: SDK used incorrectly
Attention
Attachments should be validated for correct file size by the host applicationDeclaration
Swift
case invalidFileSize
-
The type of the attachment is not included in the allowed file MIME type
Channel
fileRestrictions
define allowed file MIME types which can be received by the backned- Source of problem: SDK used incorrectly
Attention
Attachments should be validated for correct file type by the host applicationDeclaration
Swift
case invalidFileType
-
The server experienced an internal error and was unable to perform the action.
SDK failed to upload attachment(s).
- Source of problem: Unstable connection/SDK issue
Attention
Check if channel environment works correctly or gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case serverError
-
The server experienced an error during recovering a messaging thread or server does not contain any existing chat thread.
This error indicates that thread recovery failed, either because the thread does not exist or for some other server-specific cause.
- Source of problem: Information error/DFO issue
Warning
The SDK throws this error even in case of empty thread list.Attention
Can be ignored in case of empty thread list. Otherwise, gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case recoveringThreadFailed
-
The parameter has not been set properly or it was unable to unwrap it as a required type.
The SDK tried to unwrap an object but it was missing. Could be internal object or data from the server.
- Source of problem: DFO issue/SDK issue
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case missingParameter(String)
-
A invalid parameter has been passed to a method call.
This is one of:
MessagesProvider.send(message:)
was called with no valid postback, empty text, and no attachments.
Declaration
Swift
case invalidParameter(String)
-
The brand has configured pre-chat survey with contact custom fields which needs to be provided via
create(with:)
method.- Source of problem: SDK used incorrectly
Attention
Fill-up custom fields available in thepreChatSurvey
and pass them as a parameter in thecreate(with:)
method.Declaration
Swift
case missingPreChatCustomFields
-
A provided custom field does not have a definition in the case custom fields.
CXone service handles only those custom fields that are configured in the brand settings and others are ignored.
- Source of problem: SDK used incorrectly
Attention
Check content of thechannelConfiguration
, specificallyChannelConfiguration/contactCustomFieldDefinitions
or your brand settings.Declaration
Swift
case unknownCaseCustomFields
-
A provided custom field does not have a definition in the customer custom fields.
CXone service handles only those custom fields that are configured in the brand settings and others are ignored.
- Source of problem: SDK used incorrectly
Attention
Check content of thechannelConfiguration
, specificallyChannelConfiguration/customerCustomFieldDefinitions
or your brand settings.Declaration
Swift
case unknownCustomerCustomFields
-
The SDK instance could not get customer identity possibly because it may not have been set.
Customer identity is necessary for binding threads to the visitor.
- Source of problem: SDK used incorrectly/SDK issue
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case customerAssociationFailure
-
The WebSocket refused to connect.
This error may occur within connection establishing process and it can relate to several issues - wrong IDs, an internet or CXone service connectivity issue or wrong connection URL.
- Source of problem: SDK used incorrectly/DFO issue
Attention
Check entered BrandID and ChannelID. If you are providing your own chatURL or socketURL, double check that these URLs are correct. Otherwise, Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case webSocketConnectionFailure
-
The channel configuration could not be retrieved.
This error may occur with getting channel configuration and it can relate to several issues - wrong IDs or wrong connection URL.
- Source of problem: SDK used incorrectly
Attention
Check entered BrandID and ChannelID. If you are providing your own chatURL or socketURL, double check that these URLs are correct.Declaration
Swift
case channelConfigFailure
-
The customer was successfully authorized, but an access token wasn’t returned.
The access token is used in case of OAuth authorization process.
- Source of problem: DFO issue
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case missingAccessToken
-
The customer could not be associated with a visitor.
Some events, except customer identity, uses
visitorId
to match an user.- Source of problem: SDK issue
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case customerVisitorAssociationFailure
-
The connection request was invalid and couldn’t be completed.
connect()
orconnect()
may throw this error in case of incorrectly set socket enpoint object.- Source of problem: SDK used incorrectly/SDK issue
Attention
Check entered IDs and URLs. Otherwise, gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case invalidRequest
-
Thread is missing the timestamp of when the message was created.
Every thread message contains timestamp to be able to identify latest message for loading previously created and not yet loaded messages via
loadMore(for:)
method.- Source of problem: DFO issue
Attention
Gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case invalidOldestDate
-
An attached file could not be found.
It has been stored in an unknown location or its location is not accessible from the secure scope and it is not handled.
- Source of problem: SDK used incorrectly/SDK issue
Attention
Store your attachment in the secured scope or in the application documents directory. Otherwise, gather any information about how the error was encountered and contact the CXoneChat SDK team.Declaration
Swift
case noSuchFile(String)
-
An analytics event has been generated when no visit was available.
Attention
viewPage(title:url:)
must be called before any other analytics events are generatedDeclaration
Swift
case missingVisitId
-
connect()
or an analytics event has been generated when no visitor id was available.Attention
prepare(environment:brandId:channelId:)
orprepare(chatURL:socketURL:brandId:channelId:)
must be called beforeconnect()
or any other analytics events are generated.Declaration
Swift
case missingVisitorId
-
Unable to trigger the required method because the SDK is not in the required state.
The SDK has to be in correct state to trigger required operation. For example, connecting to the CXone service for chatting with an agent, it is firstly necessary to
prepare(environment:brandId:channelId:)
channel configuration which leads to theprepared
state and then it’s possible toconnect()
to the websocket.Check
ChatState
for more information.Source of problem
SDK used incorrectly
Declaration
Swift
case illegalChatState
-
Unable to trigger the required method because the chat thread is not in the required state.
The chat thread has to be in correct state to trigger required operation. For example, to update thread name via
updateName(_:for:)
the thread can not be inclosed
state.Check
ChatThreadState
for more information.Source of problem
SDK used incorrectly
Declaration
Swift
case illegalThreadState
-
Declaration
Swift
public var errorDescription: String? { get }
-
Declaration
Swift
public static func == (lhs: `Self`, rhs: `Self`) -> Bool