Инструкции по миграции
Документация в процессе доработки
Переход на версию 5.0.0
Подключение через CocoaPods
Название пода поменялось на ChatCenterUI
, версия 5.0.0
Конфигурация ChatCenterUI
В этой версии изменился API SDK и он не совместим с версиями 4.x. Пример настройки можно посмотреть в демо приложении. (https://github.com/edna-ru/cc-ios-demo)
Основные шаги остались прежними:
- Настройка подключения к серверу
let chatTransportConfig = ChatTransportConfig(rest: "restURL",
webSocket: "webSocketURL",
dataStore: "dataStoreURL")
- Настройка параметров сетевого подключения
var chatNetworkConfig = ChatNetworkConfig()
chatNetworkConfig.sslPinning.allowUntrustedSSLCertificate = true
- Настройка параметров работы чата
var chatConfig = ChatConfig(transportConfig: chatTransportConfig,
networkConfig: chatNetworkConfig)
chatConfig.searchEnabled = searchEnabled
chatConfig.voiceRecordingEnabled = voiceRecordingEnabled
chatConfig.linkPreviewEnabled = linkPreviewEnabled
chatConfig.keepSocketActive = keepWebSocketActive
- Инициализация СДК
let chatCenterSdk = ChatCenterUISDK(providerUid: selectedServer.providerUid,
chatConfig: chatConfig,
loggerConfig: ChatLoggerConfig(logLevel: .all))
- Настройка тем оформления
chatCenterSdk.theme = makeLightTheme()
chatCenterSdk.darkTheme = makeDarkTheme()
Настройка внешнего вида
Настройка UI осуществляется через темы (светлая/темная).
В СДК 3 уровня кастомизации интерфейса:
Минимальный. Настройка цветов, шрифтов и/или изображений (например, под корпоративные цвета)
Покомпонентный. Настройка компонентов дизайн системы СДК (переиспользуемые элементы, например кнопка)
Точечный. Детальная настройка flow (экраны чата или поиска), в этом случае настраивается внешний вид конкретного элемента на экране
Уровни имеют вложенную структуру:
let components = ChatComponents(images: ChatImages(), colors: ChatColors(), typography: ChatTypography())
let flows = ChatFlows(components: components)
let theme = ChatTheme(flows: flows)
Приоритет у нижних выше, т.е если в ChatFlow установить цвет элемента, он заменит цвет заданнный в компоненте ChatColors