Chat methods
Sending a message:
Variable | Type | Description |
---|---|---|
Message | String | Message text |
MessageId | String | Message ID. After sending with the identifier, the loadingMessageId parameter will be filled with the passed identifier in the received message. This will help you match the sent and received messages. |
Example:
usedesk.sendMessage("hi, how are you?", messageId: "123456789")
Sending a file:
Variable | Type | Description |
---|---|---|
fileName | String | Filename |
data | Data | File in the Data format |
MessageId | String | Message ID. After sending with the identifier, the loadingMessageId parameter will be filled with the passed identifier in the received message. This will help you match the sent and received messages. |
Multiple files are sent in separate messages.
Example:
usedesk.sendFile(fileName: "file.png", data: imageData, messageId: "123456789", status: {success, error in })
The block returns the following parameters:
Variable Type | Description |
---|---|
Bool | Sending status |
String | Error description |
The usedesk.sendMessage(_, withFileName: , fileType: , contentBase64: ) method removed.
The history of messages in the current chat:
The message history is available after chat initialization in the historyMess parameter= [Message] is an object that stores all information about the message
Example:
usedesk.historyMess
A maximum number of attachments:
You can change the maximum number of attached files using the maxCountAssets variable.
Example:
usedesk.maxCountAssets = 5
Connection status:
Example:
usedesk.connectBlock = { success, error in }
The block returns the following parameters:
Variable | Type | Description |
---|---|---|
Success | Bool | Сonnection status |
Error | String | Error type |
New incoming message:
Variable | Type | Description |
---|---|---|
incoming | Bool | Incoming message flag |
outgoing | Bool | Outgoing message flag |
text | String | The text of the message |
picture_image | UIImage | The picture |
buttons | [UDMessageButton] |
An array of objects with button parameters |
Error | String | Error type |
Example:
usedesk.newMessageBlock { success, message in }
Submitting CSI Assessment:
Variable | Type |
Description |
---|---|---|
status | Bool | True - like, false - dislike |
message_id | Int | Message ID (UDMessage.messageId) in which the score is given |
Example:
usedesk!.sendMessageFeedBack(true)
Example:
usedesk.errorBlock = {errors in }
The end of the session:
Completely clears all sdk parameters, stops working websockets.
usedesk.releaseChat()
Closing a chat:
Clears message history, terminates WebSockets.
usedesk.closeChat()
Operators ended the call
The block returns the following parameters:
Variable | Type | Description |
---|---|---|
message | UDMessage | Message with type 4 - the user ended the conversation |
Example:
usedesk.feedbackMessageBlock = { message in }
Localization
SDK supports four languages: Russian, English, Portuguese, Spanish. You can transfer your language dictionary. You can view the keys and current locales in the UDLocalizeManager. If you pass your dictionary, it must contain all the keys of the default localization.
Settings
You can restrict the types of content a customer sends, such as blocking videos or photos or both. To do this, select the value of the corresponding variable: isSupportedAttachmentOnlyPhoto (Bool) or isSupportedAttachmentOnlyVideo (Bool).
Example:
usedesk.isSupportedAttachmentOnlyPhoto = true
There is the isOpenSDKUI parameter, which shows whether the SDK windows are currently open.
Example:
usedesk.isOpenSDKUI