Перейти к основному содержимому
Версия: 5.9.0

Сообщить об ошибке

Если что-то сломалось, напишите в службу поддержки. Чтобы быстрее разобраться, приложите:

Перед обращением — сверьтесь с админкой

Если симптом похож на серверную конфигурацию (пуши не приходят, чат уходит в нерабочий режим, тред уходит не тому агенту, не отображаются уведомления о сборе ПД или опрос) — сначала проверьте настройки канала в АРМ администратора. Таблица «симптом → раздел админки» — в Решение проблем.

Общий случай

  1. Описание проблемы
  2. Версия SDK и устройство (не нужно, если приложены логи SDK)
  3. Шаги воспроизведения
  4. Ожидаемый результат
  5. Критичность
Версия SDK

Версию можно получить программно: ChatCenterUISDK.version

Интеграция

Проблема при подключении или настройке SDK/бэкенда:

  • Что меняли или планировали настроить (с примером кода)
  • Минимальная версия iOS проекта (deployment target) и конфигурация сборки (Debug / Release)
  • Логи SDK

Проблемы с UI

Чат отображается некорректно:

  • Скриншот (или видео, если по скриншоту непонятно)
  • Активная тема (светлая / тёмная) и язык интерфейса, если они влияют на воспроизведение
  • Логи SDK, если проблема связана с конкретным сообщением

Проблемы с сервером

Не загружается чат, не отправляются сообщения, обрывается соединение:

  • Логи SDK
  • Время инцидента (с указанием часового пояса), тип сети (Wi-Fi / сотовая / VPN / корпоративный прокси)
  • Состояние сессии: новая после authorize(user:) или продолжение
  • Недавние изменения настроек сервера/SDK или обновление сервера
  • Видео, синхронное с логами, если проблема плавающая или воспроизводится в несколько шагов

Падения

Приложение завершается аварийно:

  • Файл крэш-лога или стек-трейс (см. как достать) — по возможности символизированный (с .dSYM)
  • Шаги воспроизведения, если известны

Как собрать crash log

  • Из Xcode (подключённое устройство или симулятор): Window → Devices and Simulators → выберите устройство → View Device Logs → найдите крэш по времени и имени приложения → Export.
  • С устройства пользователя без Xcode: Settings → Privacy & Security (iOS 16+) / Privacy (iOS 14–15) → Analytics & Improvements → Analytics Data → найдите .ips-файл с именем приложения.
  • Из Crashlytics / App Store Connect: пришлите ссылку на крэш и его ID — dSYM обычно подтягиваются автоматически.
  • Символизация вручную (для .ips/стек-трейса): приложите .dSYM от той же сборки. По умолчанию он лежит в архиве Xcode: Window → Organizer → правый клик на архиве → Show in Finder → Show Package Contents → dSYMs/.
Персональные данные в логах

Содержимое логов по уровням:

  • .all, .rest, .webSocket — тела REST- и WebSocket-сообщений, HTTP-заголовки целиком (включая Authorization, Cookie).
  • .info — содержимое сообщений (текст, координаты геолокации, описание UIImage), URL вложений, имена файлов, payload push-уведомлений, идентификатор пользователя, APNs-токен. Если вы передавали заголовки в dataStoreHTTPHeaders при инициализации ChatTransportConfig, их значения тоже попадают сюда через стартовый SDK init-лог.
  • .userInterface — URL по тапу пользователя, URL для OpenGraph-превью; при нажатии Send с пустым полем туда же может уйти черновик сообщения.
  • .error — в основном тексты ошибок, но при сбое сериализации перед отправкой WebSocket-сообщения в лог попадает дамп его данных.

Перед отправкой логов в поддержку распакуйте архив (если использовали EDNALogger.shareLogs(in:)) или откройте файлы из Documents/Logs/, замаскируйте значения Authorization/Cookie и проверьте содержимое сообщений, URL вложений и push-payload. Подробнее об уровнях — в Настройках логирования.

Шаблон обращения

Скопируйте и заполните:

## Описание
<кратко: что не работает>

## Окружение
- Версия SDK: <напр. 5.8.2>
- Версия iOS: <напр. 17.4>
- Устройство / симулятор: <напр. iPhone 15 Pro, симулятор iOS 17.4>
- Xcode: <напр. 16.4 (16F6)>
- Способ интеграции: <XCFramework / CocoaPods / SPM>

## Шаги воспроизведения
1.
2.
3.

## Ожидаемое поведение
<что должно происходить>

## Фактическое поведение
<что происходит на самом деле>

## Воспроизводимость
<стабильно / периодически / удалось воспроизвести 1 раз>

## Критичность
<блокер / высокая / средняя / низкая>

## Дополнительные материалы
- [ ] Логи SDK (см. options/logger.md)
- [ ] Логи очищены от Authorization / Cookie / текстов сообщений
- [ ] Скриншот / видео
- [ ] Минимальный sample-проект, воспроизводящий проблему
- [ ] Стек-трейс / крэш-лог (для падений)
Sample-проект

За основу можно взять демо-приложение — это сэкономит один-два раунда уточнений с поддержкой.