Методы Чата (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() })