Как получать информацию о текущем голосе ассистента
Обновлено 1 декабря 2023
Обратите внимание, что все анимации ассистента необходимо заранее загрузить на свой CDN или CDN от SberDevices.
Чтобы в интерфейсе приложения вместо значка Сбера отображался шар выбранного голоса ассистента (Джой, Афины или Сбера), в SDK реализовано API для передачи информации о выбранном голосе.
API для работы с текущим голосом позволяет получить нужную информацию о голосе.
Ниже перечислены интерфейсы и их методы.
Когда ассистент работает в неавторизованном режиме (прелогин-зона), управление сбросом и сохранением голоса, а также истории общения с ассистентом происходит на стороне поверхности.
CharacterObserver
Получает информацию о текущем голосе ассистента. Содержит следующие методы:
fun current(): AssistantCharacter
— синхронный метод, который возвращает текущий голос. Он нужен для инициализации UI, зависящего от выбранного голоса.fun observe(): Observable<AssistantCharacter>
— подписывает на события смены текущего голоса. В момент начала слушания тоже будет возвращен текущий голос.
Получить CharacterObserver
:
private final CharacterObserver observer = ApiRegistry.getApi(CharactersApi.class).getCharacterObserver();
Варианты голосов
Ниже перечислены возможные варианты голосов.
enum class AssistantCharacter(val key: String) {
SBER("sber"),
EVA("eva"),
JOY("joy"),
FRIEND("friend")
}