Как отображать шар текущего персонажа

Обратите внимание, что все анимации персонажей необходимо заранее загрузить на свой CDN или CDN от SberDevices.

Чтобы в интерфейсе приложения вместо значка Сбера отображался шар выбранного персонажа (Джой, Афины или Сбера), в SDK реализовано API для передачи информации о выбранном персонаже.

API для работы с текущим персонажем позволяет:

  • получить нужную информацию о персонаже;
  • отправить запрос в ассистента на смену персонажа.

Ниже перечислены интерфейсы и их методы.

CharacterObserver

Получает информацию о текущем персонаже. Содержит следующие методы:

  • fun current(): AssistantCharacter — синхронный метод, который возвращает текущего персонажа. Он нужен для инициализации UI, зависящего от выбранного персонажа.
  • fun observe(): Observable<AssistantCharacter> — подписывает на события смены текущего персонажа. В момент начала слушания тоже будет возвращен текущий персонаж.

Получить CharacterObserver:

private final CharacterObserver observer = ApiHelpers.getApi(CharactersApi.class).getCharacterObserver();

CharacterUpdater

Отправляет запрос на смену текущего персонажа. Содержит следующие методы:

  • fun changeCharacter(newCharacter: AssistantCharacter) — отправялет запрос на смену текущего персонажа;
  • fun restoreDefaults() — возвращает текущего персонажа к значению по умолчанию.

Варианты персонажей

Ниже перечислены возможные варианты персонажей.

enum class AssistantCharacter(val key: String) {
    SBER("sber"),
    EVA("eva"),
    JOY("joy"),
    FRIEND("friend")
}

Заметили ошибку?

Выделите текст и нажмите Ctrl + Enter, чтобы сообщить нам о ней