Формат ответа
Время ожидания ответа от навыка — 4,5 секунды. Если Диалоги не получат ответ в течение этого времени, сессия навыка завершится. Алиса сообщит пользователю, что навык не отвечает.
Время ответа — это время от начала отправки запроса в навык сервером Алисы до полного получения ответа от навыка. В 4,5 секунды входят:
- установка сетевого соединения;
- время доставки запроса до сервера навыка;
- собственное время работы навыка;
- время доставки ответа до серверов Алисы.
Обработчик навыка должен ответить на полученный от Яндекс Диалогов запрос согласно формату:
{
"response": {
"text": "Здравствуйте! Это мы, хороводоведы.",
"tts": "Здравствуйте! Это мы, хоров+одо в+еды.",
"card": {
"type": "...",
},
"buttons": [
{
"title": "Надпись на кнопке",
"payload": {},
"url": "https://example.com/",
"hide": true
}
],
"end_session": false,
"directives": {}
},
"session_state": {
"value": 10
},
"user_state_update": {
"value": 42
},
"application_state": {
"value": 37
},
"analytics": {
"events": [
{
"name": "custom event"
},
{
"name": "another custom event",
"value": {
"field": "some value",
"second field": {
"third field": "custom value"
}
}
}
]
},
"version": "1.0"
}
Содержимое тела ответа
Свойство | Описание |
---|---|
response | Обязательное свойство. Данные для ответа пользователю. |
session_state | Объект, содержащий состояние навыка для хранения в контексте сессии. |
user_state_update | Объект, содержащий состояние навыка для хранения в контексте авторизованного пользователя. |
application_state | Объект, содержащий состояние навыка для хранения в контексте экземпляра приложения пользователя. |
analytics | Объект с данными для аналитики. Доступен навыкам с подключенным параметром Настройки AppMetrica. Подробнее см. в разделе AppMetrica. |
version | Обязательное свойство. Версия протокола. Текущая версия — 1.0. |
Свойство | Описание |
---|---|
response | Обязательное свойство. Данные для ответа пользователю. |
session_state | Объект, содержащий состояние навыка для хранения в контексте сессии. |
user_state_update | Объект, содержащий состояние навыка для хранения в контексте авторизованного пользователя. |
application_state | Объект, содержащий состояние навыка для хранения в контексте экземпляра приложения пользователя. |
analytics | Объект с данными для аналитики. Доступен навыкам с подключенным параметром Настройки AppMetrica. Подробнее см. в разделе AppMetrica. |
version | Обязательное свойство. Версия протокола. Текущая версия — 1.0. |
response
Данные для ответа пользователю.
Свойство | Описание |
---|---|
text | Обязательное свойство. Текст, который следует показать и озвучить пользователю. Максимум 1024 символа. Может быть пустым ( Текст также используется, если у Алисы не получилось отобразить включенную в ответ карточку (свойство В тексте ответа можно указать переводы строк последовательностью «\n», например: |
tts | Ответ в формате TTS (text-to-speech). Максимум 1024 символа. Советы по использованию этого формата приведены в разделе Настройка генерации речи. Вы также можете проигрывать звуки из библиотеки Алисы и собственные звуки (теги |
card | Описание карточки — сообщения с поддержкой изображений. Если приложению удается отобразить карточку для пользователя, свойство Содержимое зависит от типа карточки, указанного в поле
|
buttons[] | Кнопки, которые следует показать пользователю. Все указанные кнопки выводятся после основного ответа Алисы, описанного в свойствах |
end_session | Обязательное свойство. Признак конца разговора. Допустимые значения:
|
directives | Директивы. Содержимое зависит от типа директивы. Возможные значения:
|
show_item_meta | Обязательный параметр только для сценария утреннего шоу. Параметр историй утреннего шоу Алисы. |
Свойство | Описание |
---|---|
text | Обязательное свойство. Текст, который следует показать и озвучить пользователю. Максимум 1024 символа. Может быть пустым ( Текст также используется, если у Алисы не получилось отобразить включенную в ответ карточку (свойство В тексте ответа можно указать переводы строк последовательностью «\n», например: |
tts | Ответ в формате TTS (text-to-speech). Максимум 1024 символа. Советы по использованию этого формата приведены в разделе Настройка генерации речи. Вы также можете проигрывать звуки из библиотеки Алисы и собственные звуки (теги |
card | Описание карточки — сообщения с поддержкой изображений. Если приложению удается отобразить карточку для пользователя, свойство Содержимое зависит от типа карточки, указанного в поле
|
buttons[] | Кнопки, которые следует показать пользователю. Все указанные кнопки выводятся после основного ответа Алисы, описанного в свойствах |
end_session | Обязательное свойство. Признак конца разговора. Допустимые значения:
|
directives | Директивы. Содержимое зависит от типа директивы. Возможные значения:
|
show_item_meta | Обязательный параметр только для сценария утреннего шоу. Параметр историй утреннего шоу Алисы. |
response.buttons
Кнопки, которые следует показать пользователю. Все указанные кнопки выводятся после основного ответа Алисы, описанного в свойствах response.text
и response.card
. Кнопки можно использовать как релевантные ответу ссылки или подсказки для продолжения разговора.
Свойство | Описание |
---|---|
title | Обязательное свойство для каждой кнопки. Текст кнопки. Максимум 64 символа. Если для кнопки не указано свойство |
url | URL, который должна открывать кнопка. Максимум 1024 байта. Если свойство |
payload | Произвольный JSON-объект, который Яндекс Диалоги должны отправить обработчику, если данная кнопка будет нажата. Максимум 4096 байт. |
hide | Признак того, что кнопку нужно убрать после следующей реплики пользователя. Допустимые значения:
|
Свойство | Описание |
---|---|
title | Обязательное свойство для каждой кнопки. Текст кнопки. Максимум 64 символа. Если для кнопки не указано свойство |
url | URL, который должна открывать кнопка. Максимум 1024 байта. Если свойство |
payload | Произвольный JSON-объект, который Яндекс Диалоги должны отправить обработчику, если данная кнопка будет нажата. Максимум 4096 байт. |
hide | Признак того, что кнопку нужно убрать после следующей реплики пользователя. Допустимые значения:
|
analytics
Объект с данными для аналитики. Доступен навыкам с подключенным параметром Настройки AppMetrica. Подробнее — в разделе о подключении AppMetrica.
analytics.events
Массив событий.
Свойство | Описание |
---|---|
name | Название события. |
value | JSON-объект для многоуровневых событий. Допустимо не более пяти уровней вложенности события. Многоуровневые события передаются через пары Подробнее — в документации AppMetrica. |
Свойство | Описание |
---|---|
name | Название события. |
value | JSON-объект для многоуровневых событий. Допустимо не более пяти уровней вложенности события. Многоуровневые события передаются через пары Подробнее — в документации AppMetrica. |