Методы Чата (3.0.0-3.12.23)
Методы класса UsedeskChatSdk
1. Установка конфигурации Чата
fun setConfiguration(chatConfiguration: UsedeskChatConfiguration)
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| chatConfiguration | UsedeskChatConfiguration | Конфигурация чата |
Пример:
usedeskChat.setConfiguration(chatConfiguration)
2. Получение конфигурации
fun requireConfiguration(): UsedeskChatConfiguration
Пример:
val chatConfiguration = usedeskChat.requireConfiguration()
3. Инициализация Чата
fun init(context: Context): IUsedeskChat
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| context | Context | Контекст |
Пример:
val usedeskChat = UsedeskChatSdk.init(requireContext())
4. Получение экземпляра инициализированного Чата
fun getInstance(): IUsedeskChat
Пример:
val usedeskChat = UsedeskChatSdk.getInstance()
5. Освобождение ресурсов Чата
fun release(force: Boolean = true)
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| force | Boolean | Флаг жёсткого освобождения ресурсов (true - освободит ресурсы немедленно, false - освободит в том случае, если нет ни одного слушателя событий) |
Пример:
UsedeskChatSdk.release(false)
6. Установка фабрики сервиса уведомлений
fun setNotificationsServiceFactory(usedeskNotificationsServiceFactory: UsedeskNotificationsServiceFactory)
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| usedeskNofiticationsServiceFactory | UsedeskNotificationsServiceFactory | Фабрика сервиса |
Пример:
val customNotificationsServiceFactory = object : UsedeskNotificationsServiceFactory{...}
usedeskChat.setNotificationsServiceFactory(customNotificationsServiceFactory)
7. Запуск сервиса уведомлений
fun startService(context: Context)
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| context | Context | Контекст |
Пример:
usedeskChat.startService(requireContext())
8. Остановка сервиса уведомлений
fun stopService(context: Context)
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| context | Context | Контекст |
Пример:
usedeskChat.stopService(requireContext())
Методы класса IUsedeskChat
1. Добавление слушателя событий
fun addActionListener(listener: IUsedeskActionListener) fun addActionListener(listener: IUsedeskActionListenerRx)
Пример:
val listener = object : IUsedeskActionListener{ ... }
usedeskChat.addActionListener(listener)
val listenerRx = object : IUsedeskActionListenerRx{ ... }
usedeskChat.addActionListenerRx(listener)
2. Удаление слушателя событий
fun removeActionListener(listener: IUsedeskActionListener) fun removeActionListener(listener: IUsedeskActionListenerRx)
Пример:
usedeskChat.removeActionListener(listener) usedeskChat.removeActionListener(listenerRx)
3. Проверка на наличие слушателей
fun isNoListeners(): Boolean
Пример:
if (UsedeskKnowledgeBaseSdk.getInstance().isNoListeners()) {...}
4. Подключение к серверу
fun connect() fun connectRx(): Completable
Пример:
usedeskChat.connect()
usedeskChat.connectRx().subscribe({
//completed
}, { throwable->
throwable.printStackTrace()
})
5. Отключение от сервера
fun disconnect() fun disconnectRx(): Completable
Пример:
usedeskChat.disconnect()
usedeskChat.disconnectRx().subscribe({
//completed
}, { throwable->
throwable.printStackTrace()
})
6. Отправить текстовое сообщение
fun send(textMessage: String) fun sendRx(textMessage: String): Completable
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| textMessage | String | Текстовое сообщение |
Пример:
val textMessage = "Hello"
usedeskChat.send(textMessage)
usedeskChat.sendRx(textMessage).subscribe({
//completed
}, { throwable->
throwable.printStackTrace()
})
7. Отправить файлы
fun send(usedeskFileInfoList: List<UsedeskFileInfo>) fun sendRx(usedeskFileInfoList: List<UsedeskFileInfo>): Completable
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| usedeskFileInfoList | List<usedeskfileinfo></usedeskfileinfo> | Список файлов |
Пример:
val usedeskFileInfoList = listOf(UsedeskFileInfo.create(fileUri))
usedeskChat.send(usedeskFileInfoList)
usedeskChat.sendRx(usedeskFileInfoList).subscribe({
//completed
}, { throwable->
throwable.printStackTrace()
})
8. Поставить оценку
fun send(message: UsedeskMessageAgentText, feedback: UsedeskFeedback) fun sendRx(message: UsedeskMessageAgentText, feedback: UsedeskFeedback): Completable
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| agentMessage | UsedeskMessageAgentText | Сообщение агента, которому ставится отзыв |
| feedback | UsedeskFeedback | Оценка отзыва (LIKE, DISLIKE) |
Пример:
fun onFeedbackClick(agentMessage: UsedeskMessageAgentText, like: Boolean){
val feedback = if (like){
UsedeskFeedback.LIKE
} else {
UsedeskFeedback.DISLIKE
}
usedeskChat.send(agentMessage, feedback)
usedeskChat.sendRx(usedeskFileInfoList).subscribe({
//completed
}, { throwable->
throwable.printStackTrace()
})
} 9. Отправить форму обратной связи
fun send(offlineForm: UsedeskOfflineForm) fun sendRx(offlineForm: UsedeskOfflineForm): Completable
Аргументы:
| Название | Тип | Описание |
|---|---|---|
| agentMessage | UsedeskMessageAgentText | Сообщение агента, которому ставится отзыв |
| feedback | UsedeskFeedback | Оценка отзыва (LIKE, DISLIKE) |
Пример:
val offlineForm = UsedeskOfflineForm(
"John Smith",
"john.smith@email.com",
"Hello"
)
usedeskChat.send(offlineForm)
usedeskChat.sendRx(offlineForm).subscribe({
//completed
}, { throwable->
throwable.printStackTrace()
})