Инициализация и настройка SDK
Инициализацию СДК рекомендуется выполнять один раз при запуске приложения (например, в классе AppDelegate).
При инициализации нет долгих операций, сетевых запросов и т.д. (то есть это не влияет на время запуска приложения).
Возможна отложенная или повторная инициализация (например, если в приложении есть смена сервера тест/прод). Пример реализации такой смены есть в нашем демо‑приложении, где инициализация происходит на главном экране в классе MainViewCоntroller, и предусмотрена повторная инициализация при смене сервера.
При интеграции важно учитывать жизненный цикл СДК:
- Инициализация СДК
- Установка пользователя
- Открытие чата
Основные шаги
Для инициализации и подключения к серверу необходимо выполнить минимальную настройку SDK:
Настроить подключение к серверу (данные для подключения выдаются при интеграции, также их можно уточнить в нашей поддержке):
let chatTransportConfig = ChatTransportConfig(rest: "restURL",
webSocket: "webSocketURL",
dataStore: "dataStoreURL")
или упрощённый конструктор для облачных клиентов:
let chatTransportConfig = ChatTransportConfig(cloudHost: "cloudUrl")
Далее нужно создать модель настроек SDK с заданными настройками подключения:
let chatConfig = ChatConfig(transportConfig: chatTransportConfig)
После этого можно инициализировать экземпляр SDK с этой моделью настроек:
let chatCenterSdk = ChatCenterUISDK(providerUid: "providerUid",
chatConfig: chatConfig,
loggerConfig: ChatLoggerConfig(logLevel: .all))
Данный экземпляр необходимо сохранить для последующего доступа на всё время, необходимое для работы чата (обычно совпадает со временем жизни приложения). Для удобства доступа можно использовать синглтон или ваш менеджер DI.