- JSON-представление
- Конфигурационные файлы
- Конфигурационный файл
- Манифест
- Действия
- CustomAction
- Обручение
- Push-уведомление
- Ежедневное обновление
- ActionLink
- АссистентСсылка
- Настройки
- Категория
- Требования к поверхности
- Требование к возможностям
- ПоверхностьВозможности
- Локализованные настройки
- ТемаКастомизация
- ИзображениеУголокСтиль
- Связывание аккаунтов
- тип ссылки
- Аутгранттипе
- Вебхук
- Обработчик
- HTTPSКонечная точка
- InlineCloudФункция
- Намерение
- IntentParameter
- Ссылка на класс
- EntitySetReferences
- EntitySetReference
- Тип
- Тип синонима
- Тип соответствия
- Сущность
- EntityDisplay
- РегулярноеВыражениеТип
- Сущность
- СвободныйТекстТип
- EntitySet
- Сущность
- GlobalIntentEvent
- Обработчик событий
- СтатикПромпт
- СтатикПромптКандидате
- Селектор
- Возможности поверхности
- Возможность
- СтатикПромптОтклик
- СтатическийПростойПодсказка
- Вариант
- СтатикКонтентПромпт
- СтатическаяКартаПодсказка
- Статическое изображениеПодсказка
- Заполнение изображения
- Статиклинкпромпт
- OpenUrl
- URL-подсказка
- Статиктаблепромпт
- ТаблицаСтолбец
- Горизонтальное выравнивание
- ТаблицаРоу
- Таблеселл
- СтатикМедиаПромпт
- Медиатип
- Необязательные элементы управления медиа
- Медиаобъект
- Медиаизображение
- Режим повторения
- СтатикЛистПромпт
- Листитем
- StaticCollectionPrompt
- КоллекцияЭлемент
- StaticCollectionBrowsePrompt
- КоллекцияОбзорЭлемент
- Предположение
- СтатическийХолстПодсказка
- Сцена
- IntentEvent
- УсловноеСобытие
- Слот
- Подскажите настройки
- CommitBehavior
- Значение по умолчанию
- Файлы данных
- Файл данных
Обертка для списка файлов.
| JSON-представление | |
|---|---|
| { // Union field | |
| Поля | ||
|---|---|---|
| Поле объединения file_type. Одновременно на сервер можно отправлять только один тип файлов: файлы конфигурации или файлы данных.file_typeможет быть только одним из следующих: | ||
| configFiles |   Список конфигурационных файлов. Сюда входят манифест, настройки, пакеты ресурсов модели взаимодействия и многое другое. | |
| dataFiles |   Список файлов данных. Сюда входит изображение, аудиофайл, исходный код облачной функции. | |
Конфигурационные файлы
Обертка для повторяющихся файлов конфигурации. Повторяющиеся поля не могут существовать в одном из них.
| JSON-представление | |
|---|---|
| {
  "configFiles": [
    {
      object ( | |
| Поля | |
|---|---|
| configFiles[] |   Несколько файлов конфигурации. | 
Конфигурационный файл
Представляет один файл, содержащий структурированные данные. Разработчики могут определить большую часть своего проекта, используя структурированную конфигурацию, включая «Действия», «Настройки», «Выполнение».
| JSON-представление | |
|---|---|
| { "filePath": string, // Union field | |
| Поля | ||
|---|---|---|
| filePath |   Относительный путь к файлу конфигурации из корня проекта в файловой структуре SDK. Для каждого типа файлов ниже указан разрешенный путь к файлу. Например: настройки/settings.yaml | |
| fileполя объединения. Каждый тип файла конфигурации должен иметь соответствующее поле в одном из них.fileможет быть только одним из следующих: | ||
| manifest |    Один файл манифеста. Разрешенный путь к файлу:  | |
| actions |    Один файл действий, содержащий все определенные действия. Разрешенные пути к файлам:  | |
| settings |    Конфигурация единых настроек, которая включает нелокализуемые настройки и настройки для локали проекта по умолчанию (если указано). Для файла переопределения локали будет заполнено только поле localizedSettings. Разрешенные пути к файлам:  | |
| webhook |    Определение одного вебхука. Разрешенный путь к файлу:  | |
| intent |    Определение единого намерения. Разрешенные пути к файлам:  | |
| type |    Определение одного типа. Разрешенные пути к файлам:  | |
| entitySet |    Определение набора отдельных сущностей. Разрешенные пути к файлам:  | |
| globalIntentEvent |    Определение единого глобального события намерения. Разрешенные пути к файлам:  | |
| scene |    Определение одной сцены. Разрешенные пути к файлам:  | |
| staticPrompt |    Определение единого статического приглашения. Разрешенные пути к файлам:  | |
| accountLinkingSecret |    Метаданные, соответствующие секрету клиента, используемому при привязке учетной записи. Разрешенный путь к файлу:  | |
| resourceBundle |    Один пакет ресурсов, который представляет собой сопоставление строки со строкой или списком строк. Пакеты ресурсов можно использовать для локализации строк в статических подсказках. Разрешенные пути к файлам:  | |
Манифест
Содержит «переносимую» информацию, т. е. не специфичную для какого-либо конкретного проекта, и ее можно перемещать между проектами.
| JSON-представление | |
|---|---|
| { "version": string } | |
| Поля | |
|---|---|
| version |   Версия формата файла. Текущая версия формата файла — 1.0. Пример: «1.0». | 
Действия
Представляет список действий, определенных в проекте.
| JSON-представление | |
|---|---|
| {
  "custom": {
    string: {
      object ( | |
| Поля | |
|---|---|
| custom |   Сопоставьте намерения с настраиваемыми действиями, чтобы настроить вызов проекта. Намерения вызова могут быть либо системными, либо пользовательскими намерениями, определенными в пакете «custom/intents/». Все намерения, определенные здесь (системные и пользовательские намерения), должны иметь соответствующий файл намерений в пакете «custom/global/».  Объект, содержащий список пар  | 
CustomAction
Подробности о специальном действии.
| JSON-представление | |
|---|---|
| {
  "engagement": {
    object ( | |
| Поля | |
|---|---|
| engagement |   Механизмы взаимодействия, связанные с действием, помогают конечным пользователям подписаться на push-уведомления и ежедневные обновления. Обратите внимание, что имя намерения, указанное в конфигурации слота ежедневных обновлений/push-уведомлений, должно совпадать с намерением, соответствующим этому действию, чтобы конечные пользователи могли подписаться на эти обновления. | 
Обручение
Определяет механизмы взаимодействия, связанные с этим действием. Это позволяет конечным пользователям подписаться на push-уведомления и ежедневные обновления.
| JSON-представление | |
|---|---|
| { "title": string, "pushNotification": { object ( | |
| Поля | |
|---|---|
| title |   Название взаимодействия, которое будет отправлено конечным пользователям с просьбой дать разрешение на получение обновлений. Запрос, отправляемый конечным пользователям для ежедневных обновлений, будет выглядеть так: «В какое время вы хотите, чтобы я отправлял ваши ежедневные уведомления по {title}», а для push-уведомлений — «Ничего, если я отправлю push-уведомления для {title}». Это поле является локализуемым. | 
| pushNotification |   Настройки push-уведомлений, которые поддерживает это взаимодействие. | 
| actionLink |   Конфигурация ссылки для действия, которая определяет, включен ли общий доступ к ссылкам для этого действия, и если да, содержит понятное пользователю отображаемое имя для ссылки. ActionLink устарел. Вместо этого используйте AssistantLink. | 
| assistantLink |   Конфигурация ссылки для действия, которая определяет, включен ли общий доступ к ссылкам для этого действия, и если да, содержит понятное пользователю отображаемое имя для ссылки. | 
| dailyUpdate |   Настройки ежедневного обновления, которые поддерживает это взаимодействие. | 
Push-уведомление
Определяет настройки push-уведомлений, которые поддерживает это взаимодействие.
Ежедневное обновление
Определяет параметры ежедневного обновления, которые поддерживает это взаимодействие.
ActionLink
Указывает, включен ли обмен ссылками для этого действия и соответствующие настройки. Ссылки на действия используются для глубокой ссылки пользователя на конкретное действие. ActionLink устарел. Вместо этого используйте AssistantLink.
| JSON-представление | |
|---|---|
| { "title": string } | |
| Поля | |
|---|---|
| title |   Удобный заголовок для ссылки. | 
АссистентСсылка
Указывает, включен ли обмен ссылками для этого действия и соответствующие настройки. Ссылки помощника используются для глубокой ссылки пользователя на конкретное действие.
| JSON-представление | |
|---|---|
| { "title": string } | |
| Поля | |
|---|---|
| title |   Удобный заголовок для ссылки. | 
Настройки
Представляет параметры проекта Actions, которые не зависят от языкового стандарта. Следующий тег: 22
| JSON-представление | |
|---|---|
| { "projectId": string, "defaultLocale": string, "enabledRegions": [ string ], "disabledRegions": [ string ], "category": enum ( | |
| Поля | |
|---|---|
| projectId |   Идентификатор проекта действий. | 
| defaultLocale |    Языковой стандарт, используемый в проекте по умолчанию. Для всех файлов, кроме  | 
| enabledRegions[] |    Представляет регионы, в которых пользователи могут вызывать ваши действия, в зависимости от местоположения пользователя. Невозможно установить, если установлен  | 
| disabledRegions[] |    Представляет регионы, в которых ваши действия заблокированы, в зависимости от местоположения пользователя. Невозможно установить, если установлен  | 
| category |   Категория для этого проекта Actions. | 
| usesTransactionsApi |   Могут ли Действия использовать транзакции (например, бронирование, прием заказов и т. д.). Если значение false, то попытки использовать API транзакций завершаются неудачей. | 
| usesDigitalPurchaseApi |   Могут ли Действия выполнять транзакции с цифровыми товарами. | 
| usesInteractiveCanvas |   Используют ли действия интерактивный холст. | 
| usesHomeStorage |   Используют ли Действия функцию домашнего хранилища. | 
| designedForFamily |   Предназначен ли контент Actions для всей семьи (DFF). | 
| containsAlcoholOrTobaccoContent |   Содержит ли «Действия» контент, связанный с алкоголем или табаком. | 
| keepsMicOpen |   Могут ли действия оставлять микрофон открытым без явного запроса во время разговора. | 
| surfaceRequirements |   Требования к поверхности, которые клиентская поверхность должна поддерживать для вызова действий в этом проекте. | 
| testingInstructions |   Инструкции по тестированию в свободной форме для рецензента действий (например, инструкции по связыванию аккаунтов). | 
| localizedSettings |   Локализованные настройки для локали проекта по умолчанию. Каждая дополнительная локаль должна иметь собственный файл настроек в своем каталоге. | 
| accountLinking |   Разрешите пользователям создавать или связывать учетные записи с помощью входа в Google и/или вашей собственной службы OAuth. | 
| selectedAndroidApps[] |   Приложения Android, выбранные для доступа к покупкам в Google Play для транзакций. Это подборка приложений для Android, подключенных к проекту действий для подтверждения владения брендом и включения дополнительных функций. Дополнительную информацию см. на странице https://developers.google.com/assistant/console/brand-verification . | 
Категория
Выбор категории для проекта Actions.
| Перечисления | |
|---|---|
| CATEGORY_UNSPECIFIED | Неизвестно/Не указано. | 
| BUSINESS_AND_FINANCE | Категория «Бизнес и финансы». | 
| EDUCATION_AND_REFERENCE | Категория «Образование и справка». | 
| FOOD_AND_DRINK | Категория «Еда и напитки». | 
| GAMES_AND_TRIVIA | Категория «Игры и викторины». | 
| HEALTH_AND_FITNESS | Категория «Здоровье и фитнес». | 
| KIDS_AND_FAMILY | Категория «Дети и семья». | 
| LIFESTYLE | Категория образа жизни. | 
| LOCAL | Местная категория. | 
| MOVIES_AND_TV | Категория «Кино и ТВ». | 
| MUSIC_AND_AUDIO | Категория «Музыка и аудио». | 
| NEWS | Категория новостей, | 
| NOVELTY_AND_HUMOR | Категория «Новинки и Юмор». | 
| PRODUCTIVITY | Категория производительности. | 
| SHOPPING | Категория покупок. | 
| SOCIAL | Социальная категория. | 
| SPORTS | Спортивная категория. | 
| TRAVEL_AND_TRANSPORTATION | Категория «Путешествия и транспорт». | 
| UTILITIES | Категория коммунальных услуг. | 
| WEATHER | Категория погоды. | 
| HOME_CONTROL | Категория «Управление домом». | 
Требования к поверхности
Содержит набор требований, которые клиентская поверхность должна поддерживать для вызова действий в вашем проекте.
| JSON-представление | |
|---|---|
| {
  "minimumRequirements": [
    {
      object ( | |
| Поля | |
|---|---|
| minimumRequirements[] |   Минимальный набор возможностей, необходимый для вызова действий в вашем проекте. Если на поверхности отсутствует какой-либо из них, Действие не будет запущено. | 
Требование к возможностям
Представляет требование о доступности данной возможности.
| JSON-представление | |
|---|---|
| {
  "capability": enum ( | |
| Поля | |
|---|---|
| capability |   Тип возможности. | 
ПоверхностьВозможности
Возможный набор надводных возможностей.
| Перечисления | |
|---|---|
| SURFACE_CAPABILITY_UNSPECIFIED | Неизвестно/Не указано. | 
| AUDIO_OUTPUT | Surface поддерживает вывод звука. | 
| SCREEN_OUTPUT | Surface поддерживает экранный/визуальный вывод. | 
| MEDIA_RESPONSE_AUDIO | Surface поддерживает звук ответа мультимедиа. | 
| WEB_BROWSER | Surface поддерживает веб-браузеры. | 
| ACCOUNT_LINKING | Surface поддерживает привязку учетных записей. | 
| INTERACTIVE_CANVAS | Surface поддерживает интерактивный холст. | 
| HOME_STORAGE | Surface поддерживает домашнее хранение. | 
Локализованные настройки
Представляет настройки проекта Actions, специфичные для языкового стандарта пользователя. В этом случае пользователь означает конечного пользователя, который вызывает ваши действия. Это сообщение можно локализовать.
| JSON-представление | |
|---|---|
| {
  "displayName": string,
  "pronunciation": string,
  "shortDescription": string,
  "fullDescription": string,
  "smallLogoImage": string,
  "largeBannerImage": string,
  "developerName": string,
  "developerEmail": string,
  "termsOfServiceUrl": string,
  "voice": string,
  "voiceLocale": string,
  "privacyPolicyUrl": string,
  "sampleInvocations": [
    string
  ],
  "themeCustomization": {
    object ( | |
| Поля | |
|---|---|
| displayName |   Необходимый. Отображаемое имя по умолчанию для этого проекта Actions (если перевод недоступен). | 
| pronunciation |   Необходимый. Произношение отображаемого имени для вызова его в голосовом (речевом) контексте. | 
| shortDescription |   Необходимый. Краткое описание проекта Actions по умолчанию (если перевод недоступен). Ограничение в 80 символов. | 
| fullDescription |   Необходимый. Полное описание по умолчанию для проекта Actions (если перевод недоступен). Ограничение в 4000 символов. | 
| smallLogoImage |    Необходимый. Небольшое квадратное изображение, 192 x 192 пикселей. Это должно быть указано как ссылка на соответствующее изображение в каталоге  | 
| largeBannerImage |    Необязательный. Большое альбомное изображение, 1920 x 1080 пикселей. Это должно быть указано как ссылка на соответствующее изображение в каталоге  | 
| developerName |   Необходимый. Имя разработчика, которое будет отображаться пользователям. | 
| developerEmail |   Необходимый. Контактный адрес электронной почты разработчика. | 
| termsOfServiceUrl |   Необязательный. Условия использования URL. | 
| voice |   Необходимый. Тип голоса Google Ассистента, который слышат пользователи, когда взаимодействуют с вашими действиями. Поддерживаемые значения: «мужской_1», «мужской_2», «женский_1» и «женский_2». | 
| voiceLocale |   Необязательный. Языковой стандарт для указанного голоса. Если не указано, это соответствует языковому стандарту Ассистента пользователя. Если указано, языковой стандарт голосовой связи должен иметь тот же корневой язык, что и языковой стандарт, указанный в LocalizedSettings. | 
| privacyPolicyUrl |   Необходимый. URL-адрес политики конфиденциальности. | 
| sampleInvocations[] |   Необязательный. Примеры фраз вызова, отображаемые как часть описания вашего проекта Actions в каталоге Assistant. Это поможет пользователям научиться его использовать. | 
| themeCustomization |   Необязательный. Настройки тем для визуальных компонентов ваших действий. | 
ТемаКастомизация
Стили, применяемые к карточкам, представленным пользователям.
| JSON-представление | |
|---|---|
| {
  "backgroundColor": string,
  "primaryColor": string,
  "fontFamily": string,
  "imageCornerStyle": enum ( | |
| Поля | |
|---|---|
| backgroundColor |    Цвет фона карточек. Действует как запасной вариант, если разработчиками не предоставлен  | 
| primaryColor |   Основной цвет темы действия будет использоваться для установки цвета текста заголовка и цвета фона элемента действия для действий на картах Google. Пример использования: #FAFAFA | 
| fontFamily |   Семейство шрифтов, которое будет использоваться для названий карточек. Поддерживаемые шрифты: - Sans Serif - Sans Serif Medium - Sans Serif Bold - Sans Serif Black - Sans Serif Condensed - Sans Serif Condensed Medium - Serif - Serif Bold - Monospace - Cursive - Sans Serif Smallcaps | 
| imageCornerStyle |   Стиль границы изображения карточек на переднем плане. Например, можно нанести на передний план изображение базовой карточки или карточки-карусели. | 
| landscapeBackgroundImage |    Пейзажный режим (минимум 1920х1200 пикселей). Это должно быть указано как ссылка на соответствующее изображение в каталоге  | 
| portraitBackgroundImage |    Портретный режим (минимум 1200х1920 пикселей). Это должно быть указано как ссылка на соответствующее изображение в каталоге  | 
ИзображениеУголокСтиль
Описывает, как должны отображаться границы изображений.
| Перечисления | |
|---|---|
| IMAGE_CORNER_STYLE_UNSPECIFIED | Неопределенный/Неопределенный. | 
| CURVED | Круглый угол для изображения. | 
| ANGLED | Прямоугольный уголок для изображения. | 
Связывание аккаунтов
AccountLinking позволяет Google направлять пользователя для входа в веб-службы Приложения.
Для типов связывания входа в Google и OAuth + входа в Google Google создает идентификатор клиента, идентифицирующий ваше приложение для Google («Идентификатор клиента, выданный Google для ваших действий» в пользовательском интерфейсе консоли). Это поле доступно только для чтения. Его можно проверить, перейдя на страницу привязки учетной записи пользовательского интерфейса консоли. См.: https://developers.google.com/assistant/identity/google-sign-in .
Примечание. Для всех типов настроек привязки учетной записи (кроме входа в Google) вы должны указать имя пользователя и пароль для тестовой учетной записи в Settings.testing_instructions, чтобы группа проверки могла проверить приложение (они не будут видны пользователям).
| JSON-представление | |
|---|---|
| { "enableAccountCreation": boolean, "linkingType": enum ( | |
| Поля | |
|---|---|
| enableAccountCreation |    Необходимый. Если  | 
| linkingType |   Необходимый. Используемый тип ссылки. Дополнительную информацию о типах ссылок см. на странице https://developers.google.com/assistant/identity . | 
| authGrantType |   Необязательный. Указывает тип аутентификации для OAUTH linkingType. | 
| appClientId |   Необязательный. Идентификатор клиента, выданный вашим приложением Google. Это идентификатор клиента OAuth2, идентифицирующий Google для вашего сервиса. Устанавливается только при использовании OAuth. | 
| authorizationUrl |   Необязательный. Конечная точка вашей веб-страницы входа, которая поддерживает код OAuth2 или неявные потоки. URL-адрес должен использовать HTTPS. Устанавливается только при использовании OAuth. | 
| tokenUrl |   Необязательный. Конечная точка OAuth2 для обмена токенами. URL-адрес должен использовать HTTPS. Это значение не устанавливается при использовании OAuth только с грантом IMPLICIT в качестве типа связи. Устанавливается только при использовании OAuth. | 
| scopes[] |   Необязательный. Список разрешений, на которые пользователь должен согласиться, чтобы использовать ваш сервис. Устанавливается только при использовании OAuth. При указании этого поля обязательно укажите Условия обслуживания в информации каталога в разделе LocalizedSettings.terms_of_service_url. | 
| learnMoreUrl |   Необязательный. Это веб-страница вашего сервиса, на которой описаны разрешения, которые пользователь предоставляет Google. Устанавливается только при использовании OAuth и входа в Google. При указании этого поля обязательно укажите Условия обслуживания в информации каталога в разделе LocalizedSettings.terms_of_service_url. | 
| useBasicAuthHeader |   Необязательный. Если это правда, разрешите Google передавать идентификатор клиента и секрет через заголовок базовой аутентификации HTTP. В противном случае Google использует идентификатор клиента и секретный код внутри тела сообщения. Устанавливается только при использовании OAuth. При указании этого поля обязательно укажите Условия обслуживания в информации каталога в разделе LocalizedSettings.terms_of_service_url. | 
тип ссылки
Тип привязки учетной записи, которую необходимо выполнить.
| Перечисления | |
|---|---|
| LINKING_TYPE_UNSPECIFIED | Не указано. | 
| GOOGLE_SIGN_IN | Тип связи для входа в Google. При использовании этого типа связи не нужно задавать ниже поля, связанные с OAuth. | 
| OAUTH_AND_GOOGLE_SIGN_IN | Тип связи OAuth и входа в Google. | 
| OAUTH | Тип связи OAuth. | 
Аутгранттипе
Тип разрешения OAuth2, который Google использует, чтобы помочь пользователю войти в веб-службу вашего приложения.
| Перечисления | |
|---|---|
| AUTH_GRANT_TYPE_UNSPECIFIED | Не указано. | 
| AUTH_CODE | Предоставление кода авторизации. Требуется указать URL-адрес аутентификации и URL-адрес токена доступа. | 
| IMPLICIT | Неявное предоставление кода. Требуется только предоставить URL-адрес аутентификации. | 
Вебхук
 Метаданные для разных типов вебхуков. Если вы используете inlineCloudFunction , ваш исходный код должен находиться в каталоге с тем же именем, что и значение ключа executeFunction . Например, значение my_webhook для ключа executeFunction будет иметь такую структуру кода: - /webhooks/my_webhook.yaml - /webhooks/my_webhook/index.js - /webhooks/my_webhook/package.json 
| JSON-представление | |
|---|---|
| { "handlers": [ { object ( | |
| Поля | ||
|---|---|---|
| handlers[] |   Список обработчиков для этого вебхука. | |
| Поле объединения webhook_type. Поддерживается только один тип вебхука.webhook_typeможет быть только одним из следующих: | ||
| httpsEndpoint |   Пользовательская конечная точка HTTPS веб-перехватчика. | |
| inlineCloudFunction |   Метаданные для облачной функции, развернутые из кода в папке веб-перехватчиков. | |
Обработчик
Объявляет имя обработчика веб-перехватчика. Вебхук может иметь несколько зарегистрированных обработчиков. Эти обработчики можно вызывать из разных мест вашего проекта Actions.
| JSON-представление | |
|---|---|
| { "name": string } | |
| Поля | |
|---|---|
| name |   Необходимый. Имя обработчика. Должно быть уникальным для всех обработчиков проекта Actions. Вы можете проверить имя этого обработчика, чтобы вызвать правильную функцию в исходном коде выполнения. | 
HTTPSКонечная точка
Конечная точка REST для уведомления, если вы не используете встроенный редактор.
| JSON-представление | |
|---|---|
| { "baseUrl": string, "httpHeaders": { string: string, ... }, "endpointApiVersion": integer } | |
| Поля | |
|---|---|
| baseUrl |   Базовый URL-адрес HTTPS для вашей конечной точки выполнения (HTTP не поддерживается). Имена обработчиков добавляются к базовому URL-пути после двоеточия (в соответствии с руководством по стилю в https://cloud.google.com/apis/design/custom_methods) . Например, базовый URL-адрес «https://gactions.service.com/api» будет получать запросы с URL-адресом «https://gactions.service.com/api:{method}». | 
| httpHeaders |   Карта параметров HTTP, которые будут включены в запрос POST.  Объект, содержащий список пар  | 
| endpointApiVersion |   Версия протокола, используемая конечной точкой. Это протокол, общий для всех типов выполнения и не специфичный для типа выполнения Google. | 
InlineCloudФункция
Содержит метаданные встроенной облачной функции, развернутой из папки веб-перехватчиков.
| JSON-представление | |
|---|---|
| { "executeFunction": string } | |
| Поля | |
|---|---|
| executeFunction |   Имя точки входа в облачную функцию. Значение этого поля должно совпадать с именем метода, экспортированного из исходного кода. | 
Намерение
Намерения сопоставляют открытый пользовательский ввод со структурированными объектами. Разговорные фразы сопоставляются с намерениями с помощью функции распознавания естественного языка (NLU) Google. Соответствие намерений может инициировать события в дизайне вашего разговора, способствующие развитию разговора пользователя. Имя намерения указывается в имени файла.
| JSON-представление | |
|---|---|
| {
  "parameters": [
    {
      object ( | |
| Поля | |
|---|---|
| parameters[] |   Список параметров в обучающих фразах. Здесь должны быть определены все параметры, которые будут использоваться в обучающей фразе. | 
| trainingPhrases[] |    Обучающие фразы позволяют NLU Google автоматически сопоставлять намерения с вводом пользователя. Чем больше уникальных фраз будет предоставлено, тем выше вероятность того, что это намерение будет соответствовать. Ниже приведен формат обучающей части фразы, которая снабжена аннотациями. Обратите внимание, что поле  | 
IntentParameter
Определение параметра, который можно использовать внутри обучающих фраз.
| JSON-представление | |
|---|---|
| { "name": string, // Union field | |
| Поля | ||
|---|---|---|
| name |   Необходимый. Уникальное имя параметра намерения. Может использоваться в условиях и ответах для ссылки на параметры намерения, извлеченные NLU с помощью $intent.params.[name].resolved | |
| Поле объединения parameter_type. Тип параметра намерения.parameter_typeможет быть только одним из следующих: | ||
| type |   Необязательный. Объявляет тип данных этого параметра. Это не следует устанавливать для встроенных намерений. | |
| entitySetReferences |   Необязательный. Ссылки на наборы разрешенных сущностей для этого параметра намерения. Действительно только для параметров встроенного намерения. Эти ссылки указывают на наборы сущностей в каталоге custom/entitySets. | |
Ссылка на класс
Ссылка на класс, который используется для объявления типа поля или возвращаемого значения. Перечисления также являются типом класса, на который можно ссылаться с помощью ClassReference.
| JSON-представление | |
|---|---|
| { "name": string, "list": boolean } | |
| Поля | |
|---|---|
| name |    Необходимый. Имя встроенного типа или пользовательского типа параметра. Примеры:  | 
| list |   Необязательный. Указывает, представляет ли тип данных список значений. | 
EntitySetReferences
Ссылки на наборы сущностей для параметра намерения.
| JSON-представление | |
|---|---|
| {
  "entitySetReferences": [
    {
      object ( | |
| Поля | |
|---|---|
| entitySetReferences[] |   Необходимый. Ссылки на наборы сущностей для параметра намерения. | 
EntitySetReference
Ссылка на набор разрешенных объектов для этого параметра намерения.
| JSON-представление | |
|---|---|
| { "entitySet": string } | |
| Поля | |
|---|---|
| entitySet |   Необходимый. Идентифицирует конкретную коллекцию сущностей, которые следует учитывать для данного параметра. Соответствующее определение набора сущностей должно присутствовать в каталоге custom/entitySets/. | 
Тип
Объявление пользовательского типа, в отличие от встроенных типов. Типы могут быть назначены слотам в сцене или параметрам обучающих фраз намерения. Практически типы можно рассматривать как перечисления. Обратите внимание: имя типа указано в имени файла.
| JSON-представление | |
|---|---|
| { "exclusions": [ string ], // Union field | |
| Поля | ||
|---|---|---|
| exclusions[] |   Набор исключительных слов/фраз, которые не должны совпадать по типу. Примечание. Если слово/фраза соответствует типу, но указано как исключение, оно не будет возвращено в результате извлечения параметров. Это поле является локализуемым. | |
| Поле объединения sub_type. Выбор подтипа в зависимости от типа сопоставления, которое необходимо выполнить.sub_typeможет быть только одним из следующих: | ||
| synonym |   Тип Synonyms, который по сути является перечислением. | |
| regularExpression |   Тип Regex, допускает сопоставление регулярных выражений. | |
| freeText |   Тип произвольного текста. | |
Тип синонима
Введите текст, соответствующий тексту по набору синонимов.
| JSON-представление | |
|---|---|
| { "matchType": enum ( | |
| Поля | |
|---|---|
| matchType |   Необязательный. Тип соответствия синонима. | 
| acceptUnknownValues |   Необязательный. Если установлено значение true, это будет соответствовать неизвестным словам или фразам на основе окружающих входных данных и данных обучения намерению, таких как предметы, которые могут быть добавлены в список покупок. | 
| entities |   Необходимый. Именованная карта объектов-синонимов.  Объект, содержащий список пар  | 
Тип соответствия
 Тип соответствия, который будут использовать записи этого типа. Это обеспечит использование для всех типов одного и того же метода сопоставления и позволит варьировать сопоставление для сопоставления синонимов (т. е. нечеткое или точное). Если значение UNSPECIFIED по умолчанию будет EXACT_MATCH . 
| Перечисления | |
|---|---|
| UNSPECIFIED | По умолчанию EXACT_MATCH. | 
| EXACT_MATCH | Ищет точное совпадение синонима или имени. | 
| FUZZY_MATCH | Менее EXACT_MATCH. Ищет похожие совпадения, а также точные совпадения. | 
Сущность
Представляет поле сущности-синонима, содержащее сведения об одной записи внутри типа.
| JSON-представление | |
|---|---|
| {
  "display": {
    object ( | |
| Поля | |
|---|---|
| display |   Необязательный. Подробности отображения сущности. | 
| synonyms[] |   Необязательный. Список синонимов сущности. Это поле является локализуемым. | 
EntityDisplay
Элементы, которые будут отображаться на холсте после извлечения сущности определенного типа из запроса. Актуально только для приложений с поддержкой Canvas. Это сообщение можно локализовать.
| JSON-представление | |
|---|---|
| { "iconTitle": string, "iconUrl": string } | |
| Поля | |
|---|---|
| iconTitle |   Необязательный. Название иконы. | 
| iconUrl |   Необходимый. URL значка. | 
РегулярноеВыражениеТип
Введите текст, соответствующий регулярным выражениям. Это сообщение можно локализовать.
| JSON-представление | |
|---|---|
| {
  "entities": {
    string: {
      object ( | |
| Поля | |
|---|---|
| entities |   Необходимый. Именованная карта сущностей, каждая из которых содержит строки Regex.  Объект, содержащий список пар  | 
Сущность
Представляет объект сущности, содержащий регулярное выражение, используемое для сравнения.
| JSON-представление | |
|---|---|
| {
  "display": {
    object ( | |
| Поля | |
|---|---|
| display |   Необязательный. Элементы, которые будут отображаться на холсте после извлечения сущности из запроса. Актуально только для приложений с поддержкой Canvas. | 
| regularExpressions[] |   Необходимый. Использует синтаксис регулярных выражений RE2 (подробнее см. https://github.com/google/re2/wiki/Syntax ). | 
СвободныйТекстТип
Введите текст, соответствующий любому тексту, если контекст окружающих слов близок к предоставленным обучающим примерам.
| JSON-представление | |
|---|---|
| {
  "display": {
    object ( | |
| Поля | |
|---|---|
| display |   Необязательный. Элементы, которые будут отображаться на холсте после извлечения сущности из запроса. Актуально только для приложений с поддержкой Canvas. | 
EntitySet
Наборы сущностей описывают заранее определенный набор сущностей, из которых могут быть получены значения встроенных параметров намерений. На наборы сущностей можно ссылаться из набора сущностей во встроенных параметрах намерений.
| JSON-представление | |
|---|---|
| {
  "entities": [
    {
      object ( | |
| Поля | |
|---|---|
| entities[] |   Необходимый. Список сущностей, которые поддерживает этот набор сущностей. | 
Сущность
Сущность, из которой может быть получено значение встроенного параметра намерения.
| JSON-представление | |
|---|---|
| { "id": string } | |
| Поля | |
|---|---|
| id |   Необходимый. Идентификатор сущности. Список встроенных параметров намерения и поддерживаемых ими объектов см. на странице https://developers.google.com/assistant/conversational/build/built-in-intents. | 
GlobalIntentEvent
Определяет глобальный обработчик намерений. Глобальные события намерения распространяются на весь проект Actions и могут быть переопределены обработчиками намерений в сцене. Имена намерений должны быть уникальными в рамках проекта Actions.
Глобальные намерения могут быть сопоставлены в любой момент во время сеанса, что позволяет пользователям получить доступ к общим потокам, таким как «получить помощь» или «вернуться домой». Их также можно использовать для глубокого связывания пользователей с определенными потоками при вызове действия.
Обратите внимание: имя намерения указано в имени файла.
| JSON-представление | |
|---|---|
| {
  "transitionToScene": string,
  "handler": {
    object ( | |
| Поля | |
|---|---|
| transitionToScene |   Необязательный. Конечная сцена, к которой должен перейти разговор. Состояние текущей сцены уничтожается при переходе. | 
| handler |   Необязательный. Обработчик событий, который срабатывает при совпадении намерения. Должно выполняться перед переходом к целевой сцене. Полезно для создания подсказок в ответ на события. | 
Обработчик событий
Определяет обработчик, который будет выполняться после события. Примерами событий являются события, основанные на намерениях и условиях, в сцене.
| JSON-представление | |
|---|---|
| { "webhookHandler": string, // Union field | |
| Поля | ||
|---|---|---|
| webhookHandler |   Имя вызываемого обработчика веб-перехватчика. | |
| promptполя объединения. Подсказки могут быть встроены или указаны по имени.promptможет быть только одной из следующих: | ||
| staticPrompt |   Встроенная статическая подсказка. Может содержать ссылки на строковые ресурсы в пакетах. | |
| staticPromptName |   Имя статического приглашения для вызова. | |
СтатикПромпт
Представляет список кандидатов на приглашение, один из которых будет выбран в качестве приглашения, отображаемого в ответе пользователю. Это сообщение можно локализовать.
| JSON-представление | |
|---|---|
| {
  "candidates": [
    {
      object ( | |
| Поля | |
|---|---|
| candidates[] |   Список кандидатов-подсказок для отправки клиенту. У каждого приглашения есть селектор, позволяющий определить, когда его можно использовать. Будет отправлен первый селектор, соответствующий запросу, а остальные будут игнорироваться. | 
СтатикПромптКандидате
Представляет статического кандидата приглашения.
| JSON-представление | |
|---|---|
| { "selector": { object ( | |
| Поля | |
|---|---|
| selector |   Необязательный. Критерии соответствия этого запроса запросу. Если селектор пуст, это приглашение будет активироваться всегда. | 
| promptResponse |   Быстрый ответ, связанный с селектором. | 
Селектор
Определяет критерии соответствия приглашения запросу.
| JSON-представление | |
|---|---|
| {
  "surfaceCapabilities": {
    object ( | |
| Поля | |
|---|---|
| surfaceCapabilities |   Набор необходимых возможностей поверхности. | 
Возможности поверхности
Представляет поверхность, которую пользователь использует для запроса действия.
| JSON-представление | |
|---|---|
| {
  "capabilities": [
    enum ( | |
| Поля | |
|---|---|
| capabilities[] |   Необходимый. Возможности поверхности, делающей запрос к Action. | 
Возможность
Возможности, поддерживаемые поверхностью устройства на момент запроса.
| Перечисления | |
|---|---|
| UNSPECIFIED | Неуказанные возможности поверхности. | 
| SPEECH | Устройство может общаться с пользователем посредством преобразования текста в речь или SSML. | 
| RICH_RESPONSE | Устройство может отображать расширенные ответы, такие как карточки, списки и таблицы. | 
| LONG_FORM_AUDIO | Устройство может воспроизводить длинные аудиофайлы, такие как музыка и подкасты. | 
| INTERACTIVE_CANVAS | Устройство может отображать ответ на интерактивном холсте. | 
| WEB_LINK | Устройство может использовать веб-ссылки в расширенных ответах для открытия веб-браузера. | 
| HOME_STORAGE | Устройство может поддерживать сохранение и выборку данных из домашнего хранилища. | 
СтатикПромптОтклик
Представляет структурированные ответы для отправки пользователю, такие как текст, речь, карточки, данные холста, чипы предложений и т. д.
| JSON-представление | |
|---|---|
| { "firstSimple": { object ( | |
| Поля | |
|---|---|
| firstSimple |   Необязательный. Первый голосовой и текстовый ответ. | 
| content |   Необязательный. Содержимое, такое как карточка, список или медиафайл, который будет отображаться пользователю. | 
| lastSimple |   Необязательный. Последний голосовой и текстовый ответ. | 
| suggestions[] |    Необязательный. Предложения, которые будут отображаться пользователю и всегда будут появляться в конце ответа. Если поле  | 
| link |    Необязательный. Дополнительный чип предложения, который может ссылаться на соответствующее приложение или сайт. Чип будет отображаться с заголовком «Открыть». | 
| override |    Необязательный. Режим объединения этих сообщений с ранее определенными сообщениями.  | 
| canvas |   Ответ, который будет использоваться для интерактивного взаимодействия с холстом. | 
СтатическийПростойПодсказка
Представляет простой запрос, который необходимо отправить пользователю.
| JSON-представление | |
|---|---|
| {
  "variants": [
    {
      object ( | |
| Поля | |
|---|---|
| variants[] |   Список возможных вариантов. | 
Вариант
Представляет вариант, который является частью простого приглашения.
| JSON-представление | |
|---|---|
| { "speech": string, "text": string } | |
| Поля | |
|---|---|
| speech |    Необязательный. Представляет речь, которая будет произнесена пользователю. Это может быть SSML или преобразование текста в речь. По умолчанию речь будет добавлена к речи предыдущей простой подсказки. Если поле  | 
| text |    Необязательный. Текст для отображения в чате. Если не задано, будет использоваться отображение речевого поля выше. Ограничено 640 символами. По умолчанию текст будет добавлен к тексту предыдущего простого приглашения. Если поле  | 
СтатикКонтентПромпт
Заполнитель для части содержимого StaticPrompt.
| JSON-представление | |
|---|---|
| { // Union field | |
| Поля | ||
|---|---|---|
| contentполя объединения. В приглашении может присутствовать только один тип контента.contentможет быть только одним из следующих: | ||
| card |   Базовая карта. | |
| image |   Изображение. | |
| table |   Настольная карта. | |
| media |   Ответ, указывающий набор медиафайлов для воспроизведения. | |
| list |   Карточка для представления списка вариантов на выбор. | |
| collection |   Карточка со списком вариантов для выбора. | |
| collectionBrowse |   Карточка с набором веб-страниц, которые нужно открыть. | |
СтатическаяКартаПодсказка
Базовая карточка для отображения некоторой информации, например изображения и/или текста.
| JSON-представление | |
|---|---|
| { "title": string, "subtitle": string, "text": string, "image": { object ( | |
| Поля | |
|---|---|
| title |   Необязательный. Общее название карты. | 
| subtitle |   Необязательный. Подзаголовок карты. | 
| text |   Необходимый. Основной текст карты, который необходим, если отсутствует изображение. Поддерживает ограниченный набор синтаксиса уценки для форматирования. | 
| image |   Необязательный. Изображение героя для карты. Высота фиксирована и равна 192dp. | 
| imageFill |   Необязательный. Как будет заполнен фон изображения. | 
| button |   Необязательный. Нажимаемая кнопка, которая будет отображаться на карточке. | 
Статическое изображениеПодсказка
Изображение, отображаемое на карточке.
| JSON-представление | |
|---|---|
| { "url": string, "alt": string, "height": integer, "width": integer } | |
| Поля | |
|---|---|
| url |    Необходимый. Исходный URL изображения. Изображения могут быть в формате JPG, PNG и GIF (анимированные и неанимированные). Например,  | 
| alt |   Необходимый. Текстовое описание изображения, которое будет использоваться для обеспечения доступности, например программы чтения с экрана. | 
| height |   Необязательный. Высота изображения в пикселях. | 
| width |   Необязательный. Ширина изображения в пикселях. | 
Заполнение изображения
Возможные варианты отображения изображения, влияющие на представление изображения. Это следует использовать, когда соотношение сторон изображения не соответствует соотношению сторон контейнера изображения.
| Перечисления | |
|---|---|
| UNSPECIFIED | ImageFill не указан. | 
| GRAY | Заполните промежутки между изображением и контейнером изображения серыми полосами. | 
| WHITE | Заполните промежутки между изображением и контейнером изображения белыми полосами. | 
| CROPPED | Изображение масштабируется таким образом, чтобы ширина и высота изображения соответствовали размерам контейнера или превышали их. Это может обрезать верхнюю и нижнюю часть изображения, если масштабированная высота изображения больше высоты контейнера, или обрезать левую и правую часть изображения, если ширина масштабированного изображения больше ширины контейнера. Это похоже на «Режим масштабирования» на широкоэкранном телевизоре при воспроизведении видео с соотношением сторон 4:3. | 
Статиклинкпромпт
Определяет ссылку, которая будет отображаться в виде подсказки и может быть открыта пользователем.
| JSON-представление | |
|---|---|
| {
  "name": string,
  "open": {
    object ( | |
| Поля | |
|---|---|
| name |   Название ссылки | 
| open |   Определяет поведение, когда пользователь открывает ссылку. | 
OpenUrl
Определяет поведение, когда пользователь открывает ссылку.
| JSON-представление | |
|---|---|
| {
  "url": string,
  "hint": enum ( | |
| Поля | |
|---|---|
| url |   Поле URL-адреса, которое может быть любым из: URL-адреса http/https для открытия приложения, связанного с приложением, или веб-страницы. | 
| hint |   Указывает подсказку для типа URL-адреса. | 
URL-подсказка
Различные типы подсказок URL.
| Перечисления | |
|---|---|
| HINT_UNSPECIFIED | Не указано | 
| AMP | URL-адрес, указывающий непосредственно на контент AMP, или канонический URL-адрес, который ссылается на контент AMP через <link rel="amphtml">. | 
Статиктаблепромпт
Карточка таблицы для отображения таблицы текста.
| JSON-представление | |
|---|---|
| { "title": string, "subtitle": string, "image": { object ( | |
| Поля | |
|---|---|
| title |   Необязательный. Общее название таблицы. Должно быть установлено, если установлены субтитры. | 
| subtitle |   Необязательный. Подзаголовок к таблице. | 
| image |   Необязательный. Изображение, связанное с таблицей. | 
| columns[] |   Необязательный. Заголовки и выравнивание столбцов. | 
| rows[] |    Необязательный. Данные строки таблицы. Первые 3 ряда гарантированно будут показаны, но другие могут быть вырезаны на определенных поверхностях. Пожалуйста, проверьте с симулятором, чтобы увидеть, какие строки будут показаны для данной поверхности. На поверхностях, которые поддерживают возможность  | 
| button |   Необязательный. Кнопка. | 
TableColumn
Описывает столбец в таблице.
| JSON-представление | |
|---|---|
| {
  "header": string,
  "align": enum ( | |
| Поля | |
|---|---|
| header |   Текст заголовка для столбца. | 
| align |   Горизонтальное выравнивание содержимого колонки WRT. В случае неопределенности контент будет выровнен с передовым преимуществом. | 
Горизонталинг
Выравнивание содержания в ячейке.
| Перечисления | |
|---|---|
| UNSPECIFIED | Горизонталигенция неуказано. | 
| LEADING | Передний край ячейки. Это значение по умолчанию. | 
| CENTER | Контент выровнен в центр колонны. | 
| TRAILING | Контент выровнен с следами колонны. | 
Таблетка
Описывает строку в таблице.
| JSON-представление | |
|---|---|
| {
  "cells": [
    {
      object ( | |
| Поля | |
|---|---|
| cells[] |   Ячейки в этом ряду. Первые 3 ячейки гарантированно будут показаны, но другие могут быть разрезаны на определенных поверхностях. Пожалуйста, проверьте с симулятором, чтобы увидеть, какие ячейки будут показаны для данной поверхности. | 
| divider |   Указывает, должен ли быть разделитель после каждой строки. | 
Табличка
Описывает ячейку подряд.
| JSON-представление | |
|---|---|
| { "text": string } | |
| Поля | |
|---|---|
| text |   Текстовое содержание ячейки. | 
Staticmediaprompt
Содержит информацию о носите, например, имя, описание, URL и т. Д. Следующий идентификатор: 11
| JSON-представление | |
|---|---|
| { "mediaType": enum ( | |
| Поля | |
|---|---|
| mediaType |   Тип этого ответа. | 
| startOffset |   Начните смещение первого медиа -объекта.  Длительность в секундах, содержащая до девяти дробных цифр, заканчивающаяся символом «  | 
| optionalMediaControls[] |   Необязательные типы управления медиа -управлением. Этот сеанс ответа медиа может поддержать. Если установлен, запрос будет сделан в 3P, когда произойдет определенное событие медиа. Если не установлено, 3P все равно должен обрабатывать два типа управления по умолчанию, законченная и сбой. | 
| mediaObjects[] |   Список медиа -объектов. | 
| repeatMode |   Повторите режим для списка объектов мультимедиа. | 
MediaType
Тип этого ответа.
| Перечисления | |
|---|---|
| MEDIA_TYPE_UNSPECIFIED | Неопределенное значение | 
| AUDIO | Аудиофайл. | 
| MEDIA_STATUS_ACK | Ответ на подтверждение отчета о статусе СМИ. | 
Необходимыемедедиаконтроль
Типы управления медиа, ответ медиа может поддержать необязательно
| Перечисления | |
|---|---|
| OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED | Неопределенное значение | 
| PAUSED | Приостановили мероприятие. Запускается, когда пользователь делает паузу медиа. | 
| STOPPED | Остановлено событие. Запускается, когда пользователь выходит из сеанса 3P во время медиа -игры. | 
Медиаобъект
Представляет единственный медиа -объект.
| JSON-представление | |
|---|---|
| {
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object ( | |
| Поля | |
|---|---|
| name |   Название этого медиа -объекта. | 
| description |   Описание этого медиа -объекта. | 
| url |   URL, указывающий на медиа -контент. | 
| image |   Изображение, чтобы показать с помощью медиа -карты. | 
MediaMage
Изображение будет показано внутри медиапромпта.
| JSON-представление | |
|---|---|
| { // Union field | |
| Поля | ||
|---|---|---|
| Полевое imageСоюза. Разрешен только один тип медиа -майки.imageможет быть только одним из следующих: | ||
| large |   Большое изображение, такое как обложка альбома и т. Д. | |
| icon |   Небольшой значок изображения, отображаемый справа от заголовка. Он изменен до 36x36 DP. | |
Повторныймод
Типы режима повторения для списка объектов мультимедиа.
| Перечисления | |
|---|---|
| REPEAT_MODE_UNSPECIFIED | Эквивалентно отключению. | 
| OFF | Конец медиа -сессии в конце последнего медиа -объекта. | 
| ALL | Цикл до начала первого медиа -объекта, когда достигнут окончание последнего медиа -объекта. | 
StaticListPrompt
Карта для представления списка параметров, которые можно выбрать.
| JSON-представление | |
|---|---|
| {
  "title": string,
  "subtitle": string,
  "items": [
    {
      object ( | |
| Поля | |
|---|---|
| title |   Необязательный. Название списка. | 
| subtitle |   Необязательный. Субтитры списка. | 
| items[] |   Необходимый. Список элементов. | 
Листитем
Пункт в списке.
| JSON-представление | |
|---|---|
| {
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object ( | |
| Поля | |
|---|---|
| key |   Необходимый. Ключ NLU, который соответствует имени клавиши входа в связанном типе. Когда элемент нажат, этот ключ будет размещен в качестве параметра опции выбора. | 
| title |   Необходимый. Название предмета. При нажатии этот текст будет размещен в дословном разговоре, как будто пользователь напечатал его. Каждый заголовок должен быть уникальным среди набора элементов. | 
| description |   Необязательный. Текст тела предмета. | 
| image |   Необязательный. Изображение элемента. | 
StaticCollectionPrompt
Карта для представления набора параметров для выбора.
| JSON-представление | |
|---|---|
| { "title": string, "subtitle": string, "items": [ { object ( | |
| Поля | |
|---|---|
| title |   Необязательный. Название коллекции. | 
| subtitle |   Необязательный. Субтитры коллекции. | 
| items[] |   Необходимый. Сборные предметы. | 
| imageFill |   Необязательный. Тип опции отображения изображения. | 
CollectionItem
Предмет в коллекции.
| JSON-представление | |
|---|---|
| {
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object ( | |
| Поля | |
|---|---|
| key |   Необходимый. Ключ NLU, который соответствует имени клавиши входа в связанном типе. Когда элемент нажат, этот ключ будет размещен в качестве параметра опции выбора. | 
| title |   Необходимый. Название предмета. При нажатии этот текст будет размещен в дословном разговоре, как будто пользователь напечатал его. Каждый заголовок должен быть уникальным среди набора элементов. | 
| description |   Необязательный. Текст тела предмета. | 
| image |   Необязательный. Изображение элемента. | 
StaticCollectionBrowsePrompt
Представляет набор веб-документов в качестве коллекции предметов с большими пленками. Элементы могут быть выбраны для запуска их связанного веб -документа в веб -просмотре.
| JSON-представление | |
|---|---|
| { "items": [ { object ( | |
| Поля | |
|---|---|
| items[] |   Предметы в коллекции просмотра. Размер списка должен быть в диапазоне [2, 10]. | 
| imageFill |   Опция отображения изображения для изображений в коллекции. | 
CollectionBrowSeitem
Предмет в коллекции.
| JSON-представление | |
|---|---|
| { "title": string, "description": string, "footer": string, "image": { object ( | |
| Поля | |
|---|---|
| title |   Необходимый. Название предмета коллекции. | 
| description |   Описание элемента сбора. | 
| footer |   Текст нижнего колонтитула для элемента сбора, отображаемого ниже описания. Одиночная линия текста, усеченная с эллипсисом. | 
| image |   Изображение для предмета коллекции. | 
| openUriAction |   Необходимый. URI, чтобы открыть, если выбранный элемент. | 
Предположение
Представляет собой чип предложения, элемент пользовательского интерфейса, показанный пользователю для удобства.
| JSON-представление | |
|---|---|
| { "title": string } | |
| Поля | |
|---|---|
| title |   Необходимый. Текст, показанный в чипе предложения. При нажатии этот текст будет размещен в дословном разговоре, как будто пользователь напечатал его. Каждый заголовок должен быть уникальным среди набора чипов предложений. Макс. 25 Chars | 
Staticcanvasprompt
 Представляет интерактивный ответ на холст, который будет отправлен пользователю. Это может использоваться в сочетании с firstSimple полем в приглашении, содержащемся для поговорить с пользователем в дополнение к отображению интерактивного ответа на холсте. 
| JSON-представление | |
|---|---|
| { "url": string, "data": [ value ], "suppressMic": boolean, "sendStateDataToCanvasApp": boolean, "enableFullScreen": boolean } | |
| Поля | |
|---|---|
| url |   Необходимый. URL -адрес веб -представления для загрузки. | 
| data[] |    Необязательный. Данные JSON будут переданы на веб -страницу Experive Experience в качестве события. Если поле  | 
| suppressMic |   Необязательный. Истинное значение означает, что микрофон не будет открыт для захвата ввода после того, как этот захватывающий ответ представлен пользователю. | 
| sendStateDataToCanvasApp |    Необязательный. Если  | 
| enableFullScreen |    Необязательный. Если  | 
Сцена
Сцена является основной единицей управления при разработке разговора. Они могут быть прикованы вместе с другими сценами, генерировать подсказки для конечного пользователя и определять слоты. Имя сцены указано во имя файла.
| JSON-представление | |
|---|---|
| { "onEnter": { object ( | |
| Поля | |
|---|---|
| onEnter |   Обработчик называет при переходе на эту сцену. | 
| intentEvents[] |   Список событий, которые запускают на основе намерений. Эти события могут быть вызваны в любое время после того, как обработчик on_load был вызван. Важно - эти события определяют набор намерений, которые подходят к этой сцене и будут иметь приоритет над любыми глобально определенными событиями, которые имеют одинаковые намерения или их запускающие фразы. Имена намерений должны быть уникальными в сцене. | 
| conditionalEvents[] |   Список событий для запуска на основе условных утверждений. Они оцениваются после того, как форма была заполнена или сразу после on_load, если эта сцена не имеет формы (оценка проводится только один раз). Только первое совпадающее событие будет вызвано. | 
| slots[] |   Заказанный список слотов. Каждый слот определяет тип данных, которые он будет разрешать и конфигурацию для настройки опыта этого разрешения (например, подсказок). | 
| onSlotUpdated |   Хэндлер позвонил, когда произошло изменение состояния слота, не вызванного обновлениями в другом обработчике. Это позволяет недействительно слотам, сцена недействительна или другие изменения в состоянии сцены. | 
IntenTevent
Регистрирует события, которые вызывают результат матча намерения.
| JSON-представление | |
|---|---|
| {
  "intent": string,
  "transitionToScene": string,
  "handler": {
    object ( | |
| Поля | |
|---|---|
| intent |   Необходимый. Намерение вызвать событие. | 
| transitionToScene |   Необязательный. Сцена назначения, к которой должен быть разговор. Состояние нынешней сцены разрушено на переходе. | 
| handler |   Необязательный. Обработчик событий, который запускается, когда намерение сопоставлено. Должен выполнить перед переходом на сцену назначения. Полезно для создания подсказок в ответ на события. | 
CondienaleVent
Регистрирует события, которые вызывают результат истинного условия.
| JSON-представление | |
|---|---|
| {
  "condition": string,
  "transitionToScene": string,
  "handler": {
    object ( | |
| Поля | |
|---|---|
| condition |    Необходимый. Условие фильтра для этого события, чтобы запустить. Если условие оценивается в True, то связанный  | 
| transitionToScene |   Необязательный. Сцена назначения, на которую должен переходить к разговору, когда связанное состояние оценивается в истину. Состояние нынешней сцены разрушено на переходе. | 
| handler |    Необязательный. Обработчик событий, который запускается, когда связанное состояние оценивается в  | 
Слот
Конфигурация для слота. Слоты представляют собой отдельные единицы данных, которые могут быть заполнены естественным языком (т.е. параметры намерения), параметры сеанса и другие источники.
| JSON-представление | |
|---|---|
| { "name": string, "type": { object ( | |
| Поля | |
|---|---|
| name |   Необходимый. Название слота. | 
| type |   Необходимый. Объявляет тип данных этого слота. | 
| required |   Необязательный. Указывает, требуется ли слот заполнять перед продвижением. Требуемые слоты, которые не заполнены, вызовут настраиваемую подсказку для пользователя. | 
| promptSettings |   Необязательный. Регистры подсказки для разных этапов наполнения слота. | 
| commitBehavior |   Необязательный. Поведение совершают поведение, связанное с слотом. | 
| config |   Необязательный. Дополнительная конфигурация, связанная с слотом, который используется для заполнения слота. Формат конфигурации специфичен для типа слота. Ссылки на ресурсы на параметр пользователя или сеанса могут быть добавлены в эту конфигурацию. Эта конфигурация необходима для заполнения слотов, связанных с транзакциями и вовлечением пользователей.  Пример: для слота типов Actions.type.completeprechasevalue, в следующем конфигурации предлагается цифровой хороший порядок со ссылкой на определенную клиенту, определенное параметры сеанса,  {"@type": "type.googleapis.com/ google.actions.transactions.v3.completepurchasevaluespec", "skuid": {"skutype": "sku_type_in_app", "id": "$ session.suserseledskuid", " "PackageName": "com.example.company"}} | 
| defaultValue |   Необязательный. Конфигурация для заполнения значения по умолчанию для этого слота. | 
Подсказки
Одно место, где определяются подсказки слота.
| JSON-представление | |
|---|---|
| { "initialPrompt": { object ( | |
| Поля | |
|---|---|
| initialPrompt |   Подсказка для самого значения слота. Пример: "Какой размер вы хотели?" | 
| noMatchPrompt1 |   Запрос о том, когда ввод пользователя не соответствует ожидаемому типу значения для слота впервые. Пример: «Извините, я этого не понял». | 
| noMatchPrompt2 |   Запрос о том, когда вход пользователя не соответствует ожидаемому типу значения для слота во второй раз. Пример: «Извините, я этого не понял». | 
| noMatchFinalPrompt |   Запрос о том, когда ввод пользователя не соответствует ожидаемому типу значения для слота в последний раз. Пример: «Извините, я этого не понял». | 
| noInputPrompt1 |   Подсказка дает, когда пользователь не предоставляет вход в первый раз. Пример: «Извините, я этого не понял». | 
| noInputPrompt2 |   Подсказка, когда пользователь не предоставляет вход во второй раз. Пример: «Извините, я этого не понял». | 
| noInputFinalPrompt |   Подсказка дает, когда пользователь не предоставляет вход в последний раз. Пример: «Извините, я этого не понял». | 
Commitbehavior
Сообщение, описывающее поведение коммита, связанное с слотом, после того, как оно было успешно заполнено.
| JSON-представление | |
|---|---|
| { "writeSessionParam": string } | |
| Поля | |
|---|---|
| writeSessionParam |   Параметр сеанса, чтобы написать значение слота после его заполнения. Обратите внимание, что вложенные пути в настоящее время не поддерживаются. «$$» используется для написания значения слота в параметр сеанса с тем же именем, что и слот. Например: wrisessessionparam = "fruit" соответствует "$ session.params.fruit". wrisessessionparam = "билет" соответствует "$ session.params.ticket". | 
Значение по умолчанию
Конфигурация для заполнения значения по умолчанию для этого слота.
| JSON-представление | |
|---|---|
| { "sessionParam": string, "constant": value } | |
| Поля | |
|---|---|
| sessionParam |    Необязательный. Параметр сеанса, который будет использоваться для инициализации значения слота, если он имеет непутное значение. Тип значения должен соответствовать типу слота. Обратите внимание, что вложенные пути в настоящее время не поддерживаются. Например:  | 
| constant |    Необязательный. Постоянное значение по умолчанию для слота. Это будет использоваться только в том случае, если значение для этого слота не было заполнено через  | 
DATAFILE
Обертка для повторного файла данных. Повторные поля не могут существовать в одном.
| JSON-представление | |
|---|---|
| {
  "dataFiles": [
    {
      object ( | |
| Поля | |
|---|---|
| dataFiles[] |   Несколько файлов данных. | 
DataFile
Представляет один файл, который содержит неструктурированные данные. Примеры включают файлы изображений, аудиофайлы и исходный код облачной функции.
| JSON-представление | |
|---|---|
| { "filePath": string, "contentType": string, "payload": string } | |
| Поля | |
|---|---|
| filePath |    Относительный путь файла данных из корневого проекта в структуре файла SDK. Разрешенные пути файла: - Images:  | 
| contentType |    Необходимый. Тип контента этого актива. Пример:  | 
| payload |   Содержание файла данных. Примерами могут быть необработанные байты изображений, аудиофайлов или формата ZIP облачной функции. Существует 10 МБ строгих ограничений на размер полезной нагрузки. Строка в кодировке Base64. | 
