Введение
Минимальный путь интеграции SDK: Установка → Быстрый старт → Авторизация → Отображение чата → Уведомления.
Перед стартом получите у вашего администратора edna Chat Center providerUid и адрес cloudHost — они отображаются на вкладке «Установка» Android-канала (подробнее). Без них инициализация SDK невозможна. Если у вас нет доступа к админке — напишите в поддержку edna.
О продукте
edna Chat Center Android SDK встраивает чат с операторами в Android-приложение: двусторонний обмен сообщениями, push-уведомления, отправка файлов, голосовые сообщения, опросы.
Минимальные требования: Android 5.0+ (API 21), Kotlin 1.9.10+. UI на XML Views (поддержка Jetpack Compose в разработке).
Push-уведомления: FCM включён в SDK (нужны google-services.json и плагин com.google.gms.google-services); HMS подключается отдельно — см. Уведомления. Серверная часть настраивается администратором в админке edna Chat Center: Android, Huawei, шаблон push.
Кастомизация чата
Цвета, типографика, изображения, стили компонентов и flow-сценарии настраиваются через дизайн-систему SDK. Полный список токенов — в разделе Дизайн-система.
Изменяются только токены и стили дизайн-системы. Системные иконки и некоторые сервисные экраны кастомизировать нельзя. Часть полей публичного API в текущей версии игнорируется — список см. в Известных ограничениях.
Быстрый поиск: что я хочу сделать
| Задача | Метод / класс | Раздел |
|---|---|---|
| Подключить SDK к проекту | implementation 'edna.chatcenter.ui.android:release:<version>' (актуальная версия — в Установке) | Установка |
| Инициализировать SDK | ChatCenterUI(context).apply { init(providerUid, config) } | Быстрый старт |
| Авторизовать пользователя | authorize(client: ChatUser, auth: ChatAuth?) | Авторизация |
| Открыть экран чата | getChatFragment() / getChatActivity() | Отображение чата |
| Отправить сообщение программно | send(ChatMessage.TextMessage("...")) | Справочник API → Сообщения |
| Предзаполнить поле ввода | prefill(message) | Справочник API → Сообщения |
| Получить счётчик непрочитанных | UnreadMessagesController.INSTANCE.pushesCount | Справочник API |
| Подписаться на события SDK | setChatCenterUIListener(listener) | Расширенные настройки |
| Настроить push-уведомления | ChatCenterUI.setFCMToken(token, context) | Уведомления |
| Обработать push | handleFCMMessage(data) | Уведомления |
| Кастомизировать внешний вид | theme = ChatTheme(...) | Темы |
| Включить логирование | ChatLoggerConfig(logLevel = ChatLogLevel.DEBUG) | Расширенные настройки |
| Выйти (с отпиской от push) | logout() | Авторизация |
| Выйти (только локально) | deauthorizeUser() | Авторизация |
| Узнать версию SDK | chatCenterUI.version | Справочник API |
| Узнать о разрешениях SDK | Permissions, permissionsDescriptionDialogsEnabled | Разрешения |
Навигация по документации
| Раздел | Описание |
|---|---|
| Установка | Подключение зависимостей, Gradle, ProGuard |
| Быстрый старт | Пошаговая интеграция базового чата |
| Авторизация | ChatUser, ChatAuth, логаут |
| Отображение чата | Fragment vs Activity |
| Уведомления | FCM, HMS, push-обработка |
| Жизненный цикл | Интеграция с жизненным циклом приложения |
| Справочник API | Полный справочник методов SDK |
| Темы | Кастомизация интерфейса |
| Локализация | Строковые ресурсы |
| Обработка ошибок | Диагностика и troubleshooting |
| Решение проблем | Симптомы, чеклисты, типичные ошибки |