Классы ответа
Основной класс запроса - AliceResponse
.
AliceResponse
response: Response
- Обязательное свойство. Данные для ответа пользователю.session_state: Dict
- объект, содержащий состояние навыка для хранения в контексте сессии.user_state_update: Dict
- объект, содержащий состояние навыка для хранения в контексте авторизованного пользователя.application_state: Dict
- объект, содержащий состояние навыка для хранения в контексте экземпляра приложения пользователя.analytics: Analytics
- объект с данными для аналитики. Доступен навыкам с подключенным параметромНастройки AppMetrica
.version: str
- обязательное свойство. Версия протокола. Текущая версия — 1.0. Значение по умолчанию -1.0
. Не изменять!
В AliceResponse
встроено 3 метода для изменения tts
.
add_custom_audio
Добавляет ваше аудио к существующему tts
(не перезаписывает его).
skill_id: str
- уникальный идентификатор навыка.sound_id: str
- уникальный идентификатор аудиофайла.
add_voice_effect
Добавляет произношение текста с определенным эффектом
(не перезаписывает tts
).
Подробнее: https://yandex.ru/dev/dialogs/alice/doc/speech-effects.html
effect: VoiceEffects
- название эффекта. Значение из перечисленияVoiceEffects
, находящегося вenjalice.response
.text: str
- текст, который надо произнести с заданным эффектом.
add_pause
Добавляет паузу в tts
(не перезаписывает его).
ms: int
- количество миллисекунд паузы.
Response
text: str
- текст, который следует показать и сказать пользователю. Максимум 1024 символа. Не должен быть пустым. Текст также используется, если у Алисы не получилось отобразить включенную в ответ карточку (свойствоresponse.card
). На устройствах, которые поддерживают только голосовое общение с навыком, это будет происходить каждый раз, когда навык присылает карточку в ответе. В тексте ответа можно указать переводы строк последовательностью\n
.tts: Optional[str]
- ответ в формате TTS (text-to-speech). максимум 1024 символа.card: Optional[CT]
- описание карточки — сообщения с поддержкой изображений. Если приложению удается отобразить карточку для пользователя, свойствоresponse.text
не используется.buttons: List[ResponseButton]
- кнопки, которые следует показать пользователю. Все указанные кнопки выводятся после основного ответа Алисы, описанного в свойствахresponse.text
иresponse.card
. Кнопки можно использовать как релевантные ответу ссылки или подсказки для продолжения разговора. По умолчанию - пустой список.directives: Optional[Union[ DirectiveStartPurchase, DirectiveConfirmPurchase ]]
Директива.end_session: bool
- признак конца разговора. Допустимые значения:False
— сессию следует продолжить;True
— сессию следует завершить.show_item_meta: Optional[ShowItemMeta]
- параметр историй утреннего шоу Алисы.
text
Функция, создающая из text
, tts
и end_session
экземпляр AliceResponse
.
msg: str
- обязательное свойство. Текст, который следует показать и сказать пользователю. Максимум 1024 символа. Не должен быть пустым. Текст также используется, если у Алисы не получилось отобразить включенную в ответ карточку (свойствоresponse.card
). На устройствах, которые поддерживают только голосовое общение с навыком, это будет происходить каждый раз, когда навык присылает карточку в ответе. В тексте ответа можно указать переводы строк последовательностью\n
.tts: str
- ответ в формате TTS (text-to-speech). Максимум 1024 символа. Будет произноситься навыком, если строкаtts
не пустой. По умолчанию пустая строка. Подробнее: https://yandex.ru/dev/dialogs/alice/doc/speech-tuning.htmlend_session: bool
- признак конца разговора. Допустимые значения:False
— сессию следует продолжить;True
— сессию следует завершить.
ShowItemMeta
content_id: str
- обязательный параметр. Уникальный идентификатор истории. Формат UUID предпочтителен, но не является обязательным.title: str
- заголовок истории для экрана, необязательный параметр. Если заголовок указан, то на экране покажется: сам заголовок историиtitle
с большой буквы; перенос строки; текст истории из параметраtext
.title_tts: str
- заголовок истории с голосовой разметкой (text-to-speech
), необязательный параметр. Если заголовок указан, то история в шоу будет составлена изtitle_tts <пауза 200 мс> text_tts
.publication_date: str
- обязательный параметр. Дата и время создания истории. Алиса игнорирует истории старше 7 дней. Строка приводится по UTC в формате ISO 8601:YYYY-MM-DDTHH:mm:ss.sssZ
.expiration_date: str
- обязательный параметр. Дата и время, до которого история будет актуальна. Алиса не добавит в шоу историю, у которойexpiration_date
старше, чем время запуска шоу. Строка приводится по UTC в формате ISO 8601:YYYY-MM-DDTHH:mm:ss.sssZ
.