Package google.apps.card.v1

Индекс

Действие

Действие, описывающее поведение при отправке формы. Например, вы можете вызвать скрипт Apps Script для обработки формы. Если действие срабатывает, значения формы отправляются на сервер.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
function

string

Пользовательская функция, вызываемая при щелчке по содержащемуся элементу или его активации иным образом.

Пример использования см. в разделе Чтение данных формы .

parameters[]

ActionParameter

Список параметров действия.

loadIndicator

LoadIndicator

Указывает индикатор загрузки, который действие отображает при вызове действия.

persistValues

bool

Указывает, сохраняются ли значения формы после действия. Значение по умолчанию — false .

Если true , значения формы сохраняются после запуска действия. Чтобы позволить пользователю вносить изменения во время обработки действия, установите LoadIndicator на NONE . ​​Для сообщений карт в приложениях Chat необходимо также установить ResponseType действия на UPDATE_MESSAGE и использовать тот же card_id из карты, которая содержала действие.

Если false , значения формы очищаются при запуске действия. Чтобы запретить пользователю вносить изменения во время обработки действия, установите LoadIndicator в SPINNER .

interaction

Interaction

Необязательно. Требуется при открытии диалога .

Что делать в ответ на взаимодействие с пользователем, например, когда пользователь нажимает кнопку в сообщении карты.

Если параметр не указан, приложение реагирует, выполняя action (например, открытие ссылки или запуск функции) как обычно.

Указывая interaction , приложение может реагировать особыми интерактивными способами. Например, установив interaction на OPEN_DIALOG , приложение может открыть диалог . Если указано, индикатор загрузки не отображается. Если указано для дополнения, вся карточка удаляется и в клиенте ничего не отображается.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

requiredWidgets[]

string

Необязательно. Заполните этот список именами виджетов, которые требуются этому действию для допустимой отправки.

Если перечисленные здесь виджеты не имеют значения при вызове этого действия, отправка формы прерывается.

Доступно для приложений Google Chat и дополнений Google Workspace.

allWidgetsAreRequired

bool

Необязательно. Если это правда, то все виджеты считаются обязательными для этого действия.

Доступно для приложений Google Chat и дополнений Google Workspace.

ПараметрДействия

Список строковых параметров для предоставления при вызове метода действия. Например, рассмотрим три кнопки повтора: повтор сейчас, повтор на один день или повтор на следующей неделе. Вы можете использовать action method = snooze() , передавая тип повтора и время повтора в списке строковых параметров.

Более подробную информацию см. в разделе CommonEventObject .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
key

string

Имя параметра для сценария действия.

value

string

Значение параметра.

Взаимодействие

Необязательно. Требуется при открытии диалога .

Что делать в ответ на взаимодействие с пользователем, например, когда пользователь нажимает кнопку в сообщении карты.

Если параметр не указан, приложение реагирует, выполняя action (например, открытие ссылки или запуск функции) как обычно.

Указывая interaction , приложение может реагировать особыми интерактивными способами. Например, установив interaction на OPEN_DIALOG , приложение может открыть диалог .

Если указано, индикатор загрузки не отображается. Если указано для дополнения, вся карта удаляется и в клиенте ничего не отображается.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Перечисления
INTERACTION_UNSPECIFIED Значение по умолчанию. action выполняется как обычно.
OPEN_DIALOG

Открывает диалоговое окно — оконный карточный интерфейс, который приложения чата используют для взаимодействия с пользователями.

Поддерживается только приложениями чата в ответ на нажатия кнопок в сообщениях карт. Если указано для дополнения, вся карта удаляется и в клиенте ничего не отображается.

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Индикатор нагрузки

Указывает индикатор загрузки, который действие отображает при вызове действия.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
SPINNER Отображает индикатор загрузки контента.
NONE Ничего не отображается.

Стиль границы

Параметры стиля границы карточки или виджета, включая тип и цвет границы.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
type

BorderType

Тип границы.

strokeColor

Color

Цвета, которые следует использовать, если тип — BORDER_TYPE_STROKE .

Чтобы задать цвет штриха, укажите значение для полей red , green и blue . Значение должно быть числом с плавающей точкой от 0 до 1 на основе значения цвета RGB, где 0 (0/255) представляет отсутствие цвета, а 1 (255/255) представляет максимальную интенсивность цвета.

Например, следующий код устанавливает красный цвет с максимальной интенсивностью:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

Поле alpha недоступно для цвета штриха. Если указано, это поле игнорируется.

cornerRadius

int32

Радиус угла границы.

Тип границы

Представляет типы границ, применяемые к виджетам.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
BORDER_TYPE_UNSPECIFIED Не использовать. Не указано.
NO_BORDER Границы нет.
STROKE Значение по умолчанию. Контур.

Кнопка

Текст, значок или кнопка с текстом и значком, которые могут нажимать пользователи. Пример в приложениях Google Chat см. в разделе Добавить кнопку .

Чтобы сделать изображение кнопкой, на которую можно нажать, укажите Image (не ImageComponent ) и задайте действие onClick .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
text

string

Текст, отображаемый внутри кнопки.

icon

Icon

Значок, отображаемый внутри кнопки. Если заданы и icon , и text , то значок отображается перед текстом.

color

Color

Необязательно. Цвет кнопки. Если установлено, type кнопки устанавливается как FILLED , а цвет полей text и icon устанавливается на контрастный цвет для удобства чтения. Например, если цвет кнопки установлен на синий, любой текст или значки на кнопке устанавливаются на белый цвет.

Чтобы задать цвет кнопки, укажите значение для полей red , green и blue . Значение должно быть числом с плавающей точкой от 0 до 1 на основе значения цвета RGB, где 0 (0/255) представляет отсутствие цвета, а 1 (255/255) представляет максимальную интенсивность цвета.

Например, следующий код устанавливает красный цвет с максимальной интенсивностью:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

Поле alpha недоступно для цвета кнопки. Если указано, это поле игнорируется.

onClick

OnClick

Обязательно. Действие, которое необходимо выполнить, когда пользователь нажимает кнопку, например, открытие гиперссылки или запуск пользовательской функции.

disabled

bool

Если true , кнопка отображается в неактивном состоянии и не реагирует на действия пользователя.

altText

string

Альтернативный текст, используемый для обеспечения доступности.

Установите описательный текст, который позволит пользователям узнать, что делает кнопка. Например, если кнопка открывает гиперссылку, вы можете написать: «Открывает новую вкладку браузера и переходит к документации разработчика Google Chat по адресу https://developers.google.com/workspace/chat» .

type

Type

Необязательно. Тип кнопки. Если не задано, тип кнопки по умолчанию OUTLINED . Если задано поле color , тип кнопки принудительно устанавливается на FILLED , а любое заданное для этого поля значение игнорируется.

Тип

Необязательно. Тип кнопки. Если задано поле color , type принудительно устанавливается на FILLED .

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Перечисления
TYPE_UNSPECIFIED Не использовать. Не указано.
OUTLINED Выделенные кнопки — кнопки средней важности. Обычно они содержат действия, которые важны, но не являются основными в приложении Chat или дополнении.
FILLED Заполненная кнопка имеет контейнер со сплошным цветом. Она имеет наибольшее визуальное воздействие и рекомендуется для важного и основного действия в приложении чата или дополнении.
FILLED_TONAL Заполненная тональная кнопка — это альтернативный средний вариант между заполненными и контурными кнопками. Они полезны в контекстах, где кнопка с более низким приоритетом требует немного большего акцента, чем дала бы контурная кнопка.
BORDERLESS Кнопка не имеет невидимого контейнера в состоянии по умолчанию. Она часто используется для действий с самым низким приоритетом, особенно при представлении нескольких вариантов.

Список кнопок

Список кнопок, расположенных горизонтально. Пример в приложениях Google Chat см. в разделе Добавить кнопку .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
buttons[]

Button

Массив кнопок.

Карточка

Интерфейс карты, отображаемый в сообщении Google Chat или дополнении Google Workspace.

Карточки поддерживают определенную компоновку, интерактивные элементы пользовательского интерфейса, такие как кнопки, и богатые медиа, такие как изображения. Используйте карточки для представления подробной информации, сбора информации от пользователей и направления пользователей к следующему шагу.

Создавайте и просматривайте открытки с помощью Card Builder.

Откройте конструктор карт

Чтобы узнать, как создавать карты, ознакомьтесь со следующей документацией:

Примечание: Вы можете добавить до 100 виджетов на карточку. Любые виджеты сверх этого лимита игнорируются. Этот лимит применяется как к сообщениям карточек и диалогам в приложениях Google Chat, так и к карточкам в дополнениях Google Workspace.

Пример: сообщение в карточке для приложения Google Chat

Пример контактной карточки

Чтобы создать пример сообщения-карточки в Google Chat, используйте следующий JSON:

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
           "title": "Sasha",
           "subtitle": "Software Engineer",
           "imageUrl":
           "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
           "imageType": "CIRCLE",
           "imageAltText": "Avatar for Sasha"
         },
         "sections": [
           {
             "header": "Contact Info",
             "collapsible": true,
             "uncollapsibleWidgetsCount": 1,
             "widgets": [
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "EMAIL"
                   },
                   "text": "sasha@example.com"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PERSON"
                   },
                   "text": "<font color=\"#80e27e\">Online</font>"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PHONE"
                   },
                   "text": "+1 (555) 555-1234"
                 }
               },
               {
                 "buttonList": {
                   "buttons": [
                     {
                       "text": "Share",
                       "onClick": {
                        "openLink": {
                           "url": "https://example.com/share"
                         }
                       }
                     },
                     {
                       "text": "Edit",
                       "onClick": {
                         "action": {
                           "function": "goToView",
                           "parameters": [
                             {
                               "key": "viewType",
                               "value": "EDIT"
                             }
                           ]
                         }
                       }
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
    }
  ]
}
Поля
header

CardHeader

Заголовок карточки. Заголовок обычно содержит начальное изображение и название. Заголовки всегда появляются в верхней части карточки.

sections[]

Section

Содержит коллекцию виджетов. Каждый раздел имеет свой собственный, необязательный заголовок. Разделы визуально разделены разделителем строк. Пример в приложениях Google Chat см. в разделе Определение раздела карточки .

sectionDividerStyle

DividerStyle

Стиль разделителя между заголовком, разделами и нижним колонтитулом.

cardActions[]

CardAction

Действия карты. Действия добавляются в меню панели инструментов карты.

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

Например, следующий JSON создает меню действий карточки с Settings и Send Feedback :

"cardActions": [
  {
    "actionLabel": "Settings",
    "onClick": {
      "action": {
        "functionName": "goToView",
        "parameters": [
          {
            "key": "viewType",
            "value": "SETTING"
         }
        ],
        "loadIndicator": "LoadIndicator.SPINNER"
      }
    }
  },
  {
    "actionLabel": "Send Feedback",
    "onClick": {
      "openLink": {
        "url": "https://example.com/feedback"
      }
    }
  }
]
name

string

Название карты. Используется как идентификатор карты в навигации по карте.

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

fixedFooter

CardFixedFooter

Фиксированный нижний колонтитул показан в нижней части этой карточки.

Установка fixedFooter без указания primaryButton или secondaryButton приводит к ошибке. Для приложений Chat можно использовать фиксированные нижние колонтитулы в диалогах , но не в сообщениях карточек .

Доступно для приложений Google Chat и дополнений Google Workspace.

displayStyle

DisplayStyle

В надстройках Google Workspace задает свойства отображения peekCardHeader .

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

peekCardHeader

CardHeader

При отображении контекстного контента заголовок всплывающей карточки действует как заполнитель, позволяя пользователю перемещаться вперед между карточками домашней страницы и контекстными карточками.

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

Действие карты

Действие карты — это действие, связанное с картой. Например, карточка счета может включать такие действия, как удаление счета, отправка счета по электронной почте или открытие счета в браузере.

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

Поля
actionLabel

string

Метка, отображаемая как элемент меню действий.

onClick

OnClick

Действие onClick для этого элемента действия.

КарточкаФиксированныйНижнийУголок

Постоянный (липкий) нижний колонтитул, который отображается в нижней части карточки.

Установка fixedFooter без указания primaryButton или secondaryButton приводит к ошибке.

Для приложений Chat вы можете использовать фиксированные колонтитулы в диалогах , но не в сообщениях карточек . Пример в приложениях Google Chat см. в разделе Добавить постоянный колонтитул .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
primaryButton

Button

Основная кнопка фиксированного нижнего колонтитула. Кнопка должна быть текстовой кнопкой с текстом и набором цветов.

secondaryButton

Button

Вторичная кнопка фиксированного нижнего колонтитула. Кнопка должна быть текстовой кнопкой с установленным текстом и цветом. Если задана secondaryButton , необходимо также задать primaryButton .

Заголовок карты

Представляет заголовок карточки. Пример в приложениях Google Chat см. в разделе Добавить заголовок .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
title

string

Обязательно. Название заголовка карточки. Заголовок имеет фиксированную высоту: если указаны и заголовок, и подзаголовок, каждый занимает одну строку. Если указан только заголовок, он занимает обе строки.

subtitle

string

Подзаголовок заголовка карточки. Если указано, отображается на отдельной строке под title .

imageType

ImageType

Форма, используемая для обрезки изображения.

Доступно для приложений Google Chat и дополнений Google Workspace.

imageUrl

string

HTTPS URL изображения в заголовке карточки.

imageAltText

string

Альтернативный текст этого изображения, используемый для обеспечения доступности.

DisplayStyle

В дополнениях Google Workspace определяет способ отображения карточки.

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

Перечисления
DISPLAY_STYLE_UNSPECIFIED Не использовать. Не указано.
PEEK Заголовок карты отображается в нижней части боковой панели, частично закрывая текущую верхнюю карту стопки. Щелчок по заголовку помещает карту в стопку карт. Если у карты нет заголовка, вместо него используется сгенерированный заголовок.
REPLACE Значение по умолчанию. Карта отображается путем замены вида верхней карты в стопке карт.

DividerStyle

Разделительный стиль карты. В настоящее время используется только для разделителей между секциями карты.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
DIVIDER_STYLE_UNSPECIFIED Не использовать. Не указано.
SOLID_DIVIDER Параметр по умолчанию. Отобразить сплошной разделитель.
NO_DIVIDER Если установлено, разделитель не отображается. Этот стиль полностью удаляет разделитель из макета. Результат эквивалентен тому, если бы разделитель вообще не добавлялся.

Вложенный виджет

Список виджетов, которые могут отображаться в содержащем макете, например CarouselCard . Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля

data полевых исследований Союза.

data могут быть только одними из следующих:

textParagraph

TextParagraph

Виджет текстового абзаца.

buttonList

ButtonList

Виджет списка кнопок.

image

Image

Виджет изображения.

Раздел

Раздел содержит коллекцию виджетов, которые отображаются вертикально в том порядке, в котором они указаны.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
header

string

Текст, который отображается в верхней части раздела. Поддерживает простой текст в формате HTML. Для получения дополнительной информации о форматировании текста см. Форматирование текста в приложениях Google Chat и Форматирование текста в дополнениях Google Workspace .

widgets[]

Widget

Все виджеты в разделе. Должен содержать хотя бы один виджет.

collapsible

bool

Указывает, является ли этот раздел сворачиваемым.

Сворачиваемые разделы скрывают некоторые или все виджеты, но пользователи могут развернуть раздел, чтобы отобразить скрытые виджеты, нажав Показать больше . Пользователи могут снова скрыть виджеты, нажав Показать меньше .

Чтобы определить, какие виджеты скрыты, укажите uncollapsibleWidgetsCount .

uncollapsibleWidgetsCount

int32

Количество несворачиваемых виджетов, которые остаются видимыми даже при свернутом разделе.

Например, если раздел содержит пять виджетов, а uncollapsibleWidgetsCount установлен на 2 , первые два виджета всегда отображаются, а последние три свернуты по умолчанию. uncollapsibleWidgetsCount учитывается только тогда, когда collapsible равен true .

collapseControl

CollapseControl

Необязательно. Определите кнопку разворачивания и сворачивания раздела. Эта кнопка будет отображаться только в том случае, если раздел сворачиваемый. Если это поле не задано, используется кнопка по умолчанию.

Карусель, также известная как слайдер, вращается и отображает список виджетов в формате слайд-шоу с кнопками перехода к предыдущему или следующему виджету.

Например, это JSON-представление карусели, содержащей три виджета текстовых абзацев.

{
  "carouselCards": [
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "First text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Second text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Third text paragraph in carousel",
          }
        }
      ]
    }
  ]
}

Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля
carouselCards[]

CarouselCard

Список карт, включенных в карусель.

КарусельКарточка

Карточка, которую можно отображать как элемент карусели. Доступно для приложений Google Chat и недоступно для дополнений Google Workspace.

Поля
widgets[]

NestedWidget

Список виджетов, отображаемых в карусели. Виджеты отображаются в том порядке, в котором они указаны.

footerWidgets[]

NestedWidget

Список виджетов, отображаемых в нижней части карточки карусели. Виджеты отображаются в том порядке, в котором они указаны.

Чип

Текст, значок или чип текста и значка, на которые могут нажимать пользователи.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
icon

Icon

Изображение значка. Если заданы и icon , и text , то значок отображается перед текстом.

label

string

Текст, отображаемый внутри чипа.

onClick

OnClick

Необязательно. Действие, которое необходимо выполнить, когда пользователь нажимает на чип, например, открытие гиперссылки или запуск пользовательской функции.

enabled
(deprecated)

bool

Находится ли чип в активном состоянии и реагирует ли на действия пользователя. По умолчанию true . Устарело. Вместо этого используйте disabled .

disabled

bool

Находится ли чип в неактивном состоянии и игнорирует действия пользователя. По умолчанию false .

altText

string

Альтернативный текст, используемый для обеспечения доступности.

Установите описательный текст, который позволит пользователям узнать, что делает чип. Например, если чип открывает гиперссылку, напишите: «Открывает новую вкладку браузера и переходит к документации разработчика Google Chat по адресу https://developers.google.com/workspace/chat» .

ЧипЛист

Список фишек, расположенных горизонтально, который можно либо прокручивать горизонтально, либо переносить на следующую строку.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
layout

Layout

Указанная компоновка списка микросхем.

chips[]

Chip

Массив чипсов.

Макет

Макет списка микросхем.

Перечисления
LAYOUT_UNSPECIFIED Не использовать. Не указано.
WRAPPED Значение по умолчанию. Список фишек переносится на следующую строку, если недостаточно места по горизонтали.
HORIZONTAL_SCROLLABLE Фишки прокручиваются горизонтально, если они не помещаются в отведенное место.

CollapseControl

Представляет собой элемент управления развертыванием и свертыванием.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
horizontalAlignment

HorizontalAlignment

Горизонтальное выравнивание кнопки развернуть и свернуть.

expandButton

Button

Необязательно. Определите настраиваемую кнопку для развертывания раздела. Необходимо задать поля expandButton и collapseButton. Только один набор полей не будет иметь силы. Если это поле не задано, используется кнопка по умолчанию.

collapseButton

Button

Необязательно. Определите настраиваемую кнопку для сворачивания раздела. Оба поля expandButton и collapseButton должны быть установлены. Только один набор полей не будет действовать. Если это поле не установлено, используется кнопка по умолчанию.

Колонны

Виджет Columns отображает до 2 столбцов в карточке или диалоге. Вы можете добавлять виджеты в каждый столбец; виджеты отображаются в том порядке, в котором они указаны. Пример в приложениях Google Chat см. в разделе Отображение карточек и диалогов в столбцах .

Высота каждого столбца определяется более высоким столбцом. Например, если первый столбец выше второго столбца, оба столбца будут иметь высоту первого столбца. Поскольку каждый столбец может содержать разное количество виджетов, вы не можете определять строки или выравнивать виджеты между столбцами.

Столбцы отображаются бок о бок. Вы можете настроить ширину каждого столбца с помощью поля HorizontalSizeStyle . Если ширина экрана пользователя слишком узкая, второй столбец переносится под первый:

  • На веб-сайтах второй столбец переносится, если ширина экрана меньше или равна 480 пикселям.
  • На устройствах iOS второй столбец переносится, если ширина экрана меньше или равна 300 пт.
  • На устройствах Android второй столбец переносится, если ширина экрана меньше или равна 320 dp.

Чтобы включить более двух столбцов или использовать строки, используйте виджет Grid .

Доступно для приложений Google Chat и дополнений Google Workspace. Пользовательские интерфейсы дополнений, которые поддерживают столбцы, включают:

  • Диалоговое окно, отображаемое, когда пользователи открывают дополнение из черновика электронного письма.
  • Диалоговое окно, отображаемое, когда пользователи открывают дополнение из меню «Добавить вложение» в событии Календаря Google.
Поля
columnItems[]

Column

Массив столбцов. Вы можете включить до 2 столбцов в карточку или диалог.

Столбец

Колонна.

Дополнения Google Workspace и приложения Chat

Поля
horizontalSizeStyle

HorizontalSizeStyle

Указывает, как столбец заполняет ширину карточки.

horizontalAlignment

HorizontalAlignment

Указывает, будут ли виджеты выравниваться по левому краю, правому краю или по центру столбца.

verticalAlignment

VerticalAlignment

Указывает, будут ли виджеты выравниваться по верху, низу или центру столбца.

widgets[]

Widgets

Массив виджетов, включенных в столбец. Виджеты отображаются в том порядке, в котором они указаны.

ГоризонтальныйРазмерСтиль

Указывает, как столбец заполняет ширину карточки. Ширина каждого столбца зависит как от HorizontalSizeStyle , так и от ширины виджетов в столбце.

Дополнения Google Workspace и приложения Chat

Перечисления
HORIZONTAL_SIZE_STYLE_UNSPECIFIED Не использовать. Не указано.
FILL_AVAILABLE_SPACE Значение по умолчанию. Столбец заполняет доступное пространство, до 70% ширины карточки. Если оба столбца установлены на FILL_AVAILABLE_SPACE , каждый столбец заполняет 50% пространства.
FILL_MINIMUM_SPACE Столбец заполняет минимально возможное пространство и не более 30% ширины карточки.

ВертикальноеВыравнивание

Указывает, будут ли виджеты выравниваться по верху, низу или центру столбца.

Дополнения Google Workspace и приложения Chat

Перечисления
VERTICAL_ALIGNMENT_UNSPECIFIED Не использовать. Не указано.
CENTER Значение по умолчанию. Выравнивает виджеты по центру столбца.
TOP Выравнивает виджеты по верху столбца.
BOTTOM Выравнивает виджеты по низу столбца.

Виджеты

Поддерживаемые виджеты, которые можно включить в столбец.

Дополнения Google Workspace и приложения Chat

Поля

data полевых исследований Союза.

data могут быть только одними из следующих:

textParagraph

TextParagraph

Виджет TextParagraph .

image

Image

Виджет Image .

decoratedText

DecoratedText

Виджет DecoratedText .

buttonList

ButtonList

Виджет ButtonList .

textInput

TextInput

Виджет TextInput .

selectionInput

SelectionInput

Виджет SelectionInput .

dateTimePicker

DateTimePicker

Виджет DateTimePicker .

chipList

ChipList

Виджет ChipList .

ДанныеДействия

Дополнительное действие , обновляющее данные Google Workspace.

Поля
hostAppDataAction

HostAppDataActionMarkup

Определяет, как обновлять данные Google Workspace.

DateTimePicker

Позволяет пользователям вводить дату, время или и дату, и время. Поддерживает проверку отправки формы. Если Action.all_widgets_are_required установлен в true или этот виджет указан в Action.required_widgets , действие отправки блокируется, если не выбрано значение. Пример в приложениях Google Chat см. в разделе Позвольте пользователю выбрать дату и время .

Пользователи могут вводить текст или использовать пикер для выбора даты и времени. Если пользователи вводят недопустимую дату или время, пикер показывает ошибку, которая предлагает пользователям ввести информацию правильно.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
name

string

Имя, по которому DateTimePicker идентифицируется в событии ввода формы.

Подробную информацию о работе с полями формы см. в разделе Получение данных формы .

label

string

Текст, который предлагает пользователям ввести дату, время или дату и время. Например, если пользователи планируют встречу, используйте метку, такую ​​как Appointment date или Appointment date and time .

type

DateTimePickerType

Поддерживает ли виджет ввод даты, времени или даты и времени.

valueMsEpoch

int64

Значение по умолчанию, отображаемое в виджете, в миллисекундах с момента начала эпохи Unix .

Укажите значение на основе типа выбора ( DateTimePickerType ):

  • DATE_AND_TIME : календарная дата и время в формате UTC. Например, чтобы обозначить 1 января 2023 года в 12:00 по UTC, используйте 1672574400000 .
  • DATE_ONLY : календарная дата в 00:00:00 UTC. Например, для представления 1 января 2023 года используйте 1672531200000 .
  • TIME_ONLY : время в формате UTC. Например, для представления 12:00 PM используйте 43200000 (или 12 * 60 * 60 * 1000 ).
timezoneOffsetDate

int32

Число, представляющее смещение часового пояса от UTC в минутах. Если установлено, value_ms_epoch отображается в указанном часовом поясе. Если не установлено, значение по умолчанию соответствует настройке часового пояса пользователя.

onChangeAction

Action

Срабатывает, когда пользователь нажимает кнопку «Сохранить» или «Очистить» в интерфейсе DateTimePicker .

DateTimePickerType

Формат даты и времени в виджете DateTimePicker . Определяет, могут ли пользователи вводить дату, время или и дату, и время.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
DATE_AND_TIME Пользователи вводят дату и время.
DATE_ONLY Пользователи вводят дату.
TIME_ONLY Пользователи вводят время.

DecoratedText

Виджет, который отображает текст с дополнительными украшениями, такими как метка над или под текстом, значок перед текстом, виджет выбора или кнопка после текста. Пример в приложениях Google Chat см. в разделе Отображение текста с декоративным текстом .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
icon
(deprecated)

Icon

Устарело в пользу startIcon .

startIcon

Icon

Значок, отображаемый перед текстом.

topLabel

string

Текст, который отображается над text . Всегда обрезается.

text

string

Обязательно. Основной текст.

Поддерживает простое форматирование. Для получения дополнительной информации о форматировании текста см. Форматирование текста в приложениях Google Chat и Форматирование текста в дополнениях Google Workspace .

wrapText

bool

Настройка переноса текста. Если true , текст переносится и отображается на нескольких строках. В противном случае текст обрезается.

Применимо только к text , но не к topLabel и bottomLabel .

bottomLabel

string

Текст, который отображается под text . Всегда переносится.

onClick

OnClick

Это действие запускается, когда пользователи нажимают topLabel или bottomLabel .

control полем объединения. Кнопка, переключатель, флажок или изображение, которые отображаются справа от текста в виджете decoratedText . control может быть только одним из следующих:
button

Button

Кнопка, нажав которую пользователь может запустить действие.

switchControl

SwitchControl

Виджет-переключатель, на который пользователь может нажать, чтобы изменить его состояние и запустить действие.

endIcon

Icon

Значок, отображаемый после текста.

Поддерживает встроенные и пользовательские значки.

SwitchControl

Либо переключатель в виде тумблера, либо флажок внутри виджета decoratedText .

Доступно для приложений Google Chat и дополнений Google Workspace.

Поддерживается только в виджете decoratedText .

Поля
name

string

Имя, по которому виджет-переключатель идентифицируется в событии ввода формы.

Подробную информацию о работе с полями формы см. в разделе Получение данных формы .

value

string

Значение, введенное пользователем, возвращается как часть события ввода формы.

Подробную информацию о работе с полями формы см. в разделе Получение данных формы .

selected

bool

Если true , переключатель выбран.

onChangeAction

Action

Действие, которое необходимо выполнить при изменении состояния переключателя, например, какую функцию следует запустить.

controlType

ControlType

Как переключатель выглядит в пользовательском интерфейсе.

Доступно для приложений Google Chat и дополнений Google Workspace.

Тип управления

Как переключатель выглядит в пользовательском интерфейсе.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
SWITCH Переключатель тумблерного типа.
CHECKBOX Устарело в пользу CHECK_BOX .
CHECK_BOX Флажок.

Разделитель

Этот тип не имеет полей.

Отображает разделитель между виджетами в виде горизонтальной линии. Пример в приложениях Google Chat см. в разделе Добавление горизонтального разделителя между виджетами .

Доступно для приложений Google Chat и дополнений Google Workspace.

Например, следующий JSON создает разделитель:

"divider": {}

КонецНавигации

Для дополнений в Google Chat закрывает диалоговое окно .

Поля
action

Action

Для дополнений в Google Chat — действие, закрывающее диалог .

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat.

Действие

Для дополнений в Google Chat , действия по закрытию диалога .

Перечисления
ACTION_UNSPECIFIED Действие не указано.
CLOSE_DIALOG Закрывает диалоговое окно.
CLOSE_DIALOG_AND_EXECUTE Закрывает диалоговое окно и обновляет карточку, открывшую диалоговое окно.

ПолучитьАвтозаполнениеОтвет

Ответ на получение контейнера автозаполнения, который включает элементы, необходимые для отображения элементов автозаполнения для текстового поля.

Доступно для дополнений Google Workspace и недоступно для приложений Google Chat. Например:

{
  "autoComplete": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
Поля
autoComplete

Suggestions

schema

string

Это пустое поле схемы, которое может присутствовать в разметке для проверки синтаксиса.

Сетка

Отображает сетку с коллекцией элементов. Элементы могут включать только текст или изображения. Для адаптивных столбцов или для включения чего-то большего, чем текст или изображения, используйте Columns . Пример в приложениях Google Chat см. в разделе Отображение сетки с коллекцией элементов .

Сетка поддерживает любое количество столбцов и элементов. Количество строк определяется количеством элементов, деленных на столбцы. Сетка с 10 элементами и 2 столбцами имеет 5 строк. Сетка с 11 элементами и 2 столбцами имеет 6 строк.

Доступно для приложений Google Chat и дополнений Google Workspace.

Например, следующий JSON-код создает сетку из двух столбцов с одним элементом:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
Поля
title

string

Текст, отображаемый в заголовке сетки.

items[]

GridItem

Элементы для отображения в сетке.

borderStyle

BorderStyle

Стиль границы, применяемый к каждому элементу сетки.

columnCount

int32

Количество столбцов для отображения в сетке. Если это поле не указано, используется значение по умолчанию, и это значение по умолчанию отличается в зависимости от того, где отображается сетка (диалоговое окно или сопутствующее).

onClick

OnClick

Этот обратный вызов повторно используется каждым отдельным элементом сетки, но с добавлением идентификатора элемента и индекса в списке элементов к параметрам обратного вызова.

Элемент сетки

Представляет элемент в макете сетки. Элементы могут содержать текст, изображение или и текст, и изображение.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
id

string

Указанный пользователем идентификатор для этого элемента сетки. Этот идентификатор возвращается в параметрах обратного вызова onClick родительской сетки.

image

ImageComponent

Изображение, отображаемое в элементе сетки.

title

string

Заголовок элемента сетки.

subtitle

string

Подзаголовок элемента сетки.

layout

GridItemLayout

Макет, используемый для элемента сетки.

GridItemLayout

Представляет различные варианты макета, доступные для элемента сетки.

Доступно для приложений Google Chat и дополнений Google Workspace.

Перечисления
GRID_ITEM_LAYOUT_UNSPECIFIED Не использовать. Не указано.
TEXT_BELOW Заголовок и подзаголовок отображаются под изображением элемента сетки.
TEXT_ABOVE Заголовок и подзаголовок отображаются над изображением элемента сетки.

Икона

Значок, отображаемый в виджете на карточке. Пример в приложениях Google Chat см. в разделе Добавить значок .

Поддерживает встроенные и пользовательские значки.

Доступно для приложений Google Chat и дополнений Google Workspace.

Поля
altText

string

Необязательно. Описание значка, используемого для обеспечения доступности. Если не указано, предоставляется значение по умолчанию Button . В качестве наилучшей практики следует задать полезное описание того, что отображает значок, и, если применимо, что он делает. Например, A user's account portrait или Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat .

Если значок установлен в Button , altText отображается как вспомогательный текст, когда пользователь наводит курсор на кнопку. Однако, если кнопка также устанавливает text , altText значка игнорируется.

imageType

ImageType

Стиль обрезки, примененный к изображению. В некоторых случаях применение обрезки CIRCLE приводит к тому, что изображение становится больше встроенного значка.

icons полей объединения. Значок, отображаемый в виджете на карте. icons могут быть только одними из следующих:
knownIcon

string

Отобразите один из встроенных значков, предоставляемых Google Workspace.

Например, чтобы отобразить значок самолета, укажите AIRPLANE . Для автобуса укажите BUS .

Полный список поддерживаемых значков см. в разделе встроенные значки .

iconUrl

string

Отображение пользовательского значка, размещенного по URL-адресу HTTPS.

Например:

"iconUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png"

Поддерживаемые типы файлов включают .png и .jpg .

materialIcon

MaterialIcon

Отобразите одну из иконок Google Material .

Например, чтобы отобразить значок флажка , используйте

"materialIcon": {
  "name": "check_box"
}

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace.

Изображение

Изображение, которое указано URL и может иметь действие onClick . Для примера см. Добавьте изображение .

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
imageUrl

string

HTTPS URL, который размещает изображение.

Например:

https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
onClick

OnClick

Когда пользователь нажимает на изображение, щелчок запускает это действие.

altText

string

Альтернативный текст этого изображения, который используется для доступности.

ImageComponent

Представляет собой изображение.

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
imageUri

string

Изображение URL.

altText

string

Метка доступности для изображения.

cropStyle

ImageCropStyle

Стиль обрезки, чтобы применить к изображению.

borderStyle

BorderStyle

Стиль границы, чтобы применить к изображению.

ImageCropstyle

Представляет стиль обрезки, применяемый к изображению.

Доступно для приложений Google Chat и надстройки Google Workspace.

Например, вот как применить соотношение сторон 16: 9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}
Поля
type

ImageCropType

Тип урожая.

aspectRatio

double

Соотношение сторон для использования, если тип урожая RECTANGLE_CUSTOM .

Например, вот как применить соотношение сторон 16: 9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}

ImageCroptype

Представляет стиль обрезки, применяемый к изображению.

Доступно для приложений Google Chat и надстройки Google Workspace.

Перечисления
IMAGE_CROP_TYPE_UNSPECIFIED Не используйте. Неуказано.
SQUARE Значение по умолчанию. Применяет квадратный урожай.
CIRCLE Применяет круговой урожай.
RECTANGLE_CUSTOM Применяет прямоугольную культуру с пользовательским соотношением сторон. Установите пользовательское соотношение сторон с помощью aspectRatio .
RECTANGLE_4_3 Применяет прямоугольную культуру с соотношением сторон 4: 3.

СсылкаПредпросмотр

Действие карты, которое предварительно просмотрит стороннюю ссылку, отображая карту и интеллектуального чипа. Чтобы узнать больше, см. Предварительные ссылки с интеллектуальными чипсами .

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Например, следующий JSON возвращает уникальный заголовок для предварительного просмотра ссылки и его интеллектуального чипа, а также предварительного просмотра с описанием заголовка и текста:

{
  "action": {
    "linkPreview": {
      "title": "Smart chip title",
      "linkPreviewTitle": "Link preview title",
      "previewCard": {
        "header": {
          "title": "Preview card header",
        },
        "sections": [
          {
            "widgets": [
              {
                "textParagraph": {
                  "text": "Description of the link."
                }
              }
            ]
          }
        ]
      }
    }
  }
}

Пример возвращает предварительный просмотр следующей ссылки:

Пример предварительного просмотра ссылки

Поля
previewCard

Card

Карта, которая отображает информацию о ссылке из сторонней службы.

title

string

Заголовок, который отображается в Smart Chip для предварительного просмотра ссылки. Если нет, Smart Chip отображает заголовок previewCard .

linkPreviewTitle

string

Заголовок, который отображается в предварительном просмотре ссылки. Если USET, предварительный просмотр ссылки отображает заголовок previewCard .

Материал

Значок материала Google , который включает в себя более 2500 опций.

Например, чтобы отобразить значок флажки с индивидуальным весом и оценкой, напишите следующее:

{
  "name": "check_box",
  "fill": true,
  "weight": 300,
  "grade": -25
}

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace.

Поля
name

string

Имя значка, определенное в значке материала Google , например, check_box . Любые неверные имена заброшены и заменены пустой строкой и приводят к тому, что значок не смог рендерина.

fill

bool

Будь то иконка заполненной. Значение по умолчанию неверно.

Чтобы предварительно просмотреть различные настройки значка, перейдите на значки шрифта Google и настройте настройки настройки .

weight

int32

Вес инсульта иконы. Выберите из {100, 200, 300, 400, 500, 600, 700}. Если отсутствует, значение по умолчанию составляет 400. Если указано какое -либо другое значение, используется значение по умолчанию.

Чтобы предварительно просмотреть различные настройки значка, перейдите на значки шрифта Google и настройте настройки настройки .

grade

int32

Вес и оценка влияют на толщину символа. Корректировки к оценке более детализируют, чем корректировки веса, и оказывают небольшое влияние на размер символа. Выберите из {-25, 0, 200}. Если отсутствие, значение по умолчанию равно 0. Если указано какое -либо другое значение, используется значение по умолчанию.

Чтобы предварительно просмотреть различные настройки значка, перейдите на значки шрифта Google и настройте настройки настройки .

ModifyCard

Для дополнений в Google Chat обновляет карту на основе взаимодействия с пользователем. Массив должен содержать только один объект.

Поля

Полевой operation Союза.

operation может быть только одним из следующих:

updateWidget

UpdateWidget

Для дополнений в Google Chat обновляет виджет в карте или диалоговом окне.

UpdateWidget

Для дополнений в Google Chat обновляет виджет в карте или диалоговом окне. Он используется для предоставления автоматических предложений, когда пользователи типы ввода в поле ввода. См. Предложите многосекционные элементы для более подробной информации.

Поля
Поле Союза updated_widget . Обновления виджета. updated_widget может быть только одним из следующих:
selectionInputWidgetSuggestions

SelectionInputWidgetSuggestions

Для виджетов selectionInput , множество предлагаемых предметов в многосекционном меню. Когда в меню MultiSelect используется внешний источник данных для заполнения своих элементов, виджет может динамически заполнять предложения, основанные на том, что они вводят в меню. Для получения дополнительной информации см. Соберите информацию от пользователей Google Chat .

SelectionInputWidgetSuggestions

Для виджета selectionInput , в котором используется многоселекционное меню, возвращает элементы выбора из внешнего источника динамических данных.

Поля
suggestions[]

SelectionItem

Массив выбираемых элементов, которые появляются пользователю после того, как они вводят в многосекционное меню.

Обновления или перемещаться между картами в стеке карт.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Например:

1) вернуть новую карту (перейдите вперед).

 navigations : {
    pushCard : CARD
  }

2) Обновите карту в верхней части стека (обновление на месте).

  navigations : {
    popCard : true,
  }, {
    pushCard : CARD
  }

3) вернуться на один шаг без обновления.

  navigations : {
    popCard : true,
  }

4) вернуться к нескольким шагам и обновить эту карту.

  navigations : {
    popCard : true,
  }, ... {
    pushCard : CARD
  }

5) Вернитесь назад несколько шагов к определенной CARD_NAME .

  navigations : {
    popToCardName : CARD_NAME,
  }, {
    pushCard : CARD
  }

6) Вернитесь к корне и обновите эту карту.

  navigations : {
    popToRoot : true
  }, {
    pushCard : CARD
  }

7) Поднимите указанную карту, а также выпейте ее.

navigations : { popToCardName : CARD_NAME }, { popCard : true, }

8) Замените верхнюю карту новой картой.

  navigations : {
    updateCard : CARD
  }
Поля

Поле Союза navigate_action .

navigate_action может быть только одним из следующих:

popToRoot

bool

Высасывает все карты, кроме корневой карты.

pop

bool

Высаживает одну карту.

popToCard

string

Выскакивает все карты над указанной картой с данным именем карты.

pushCard

Card

Толкает карту на стек карты.

Предварительный просмотр разработчика : для диалогов в Google Chat , открывает или обновляет диалог.

updateCard

Card

Обновляет верхнюю карту с новой картой и сохраняет значения полей заполненных форм. Для неквалентного поля значение сброшено.

Предварительный просмотр разработчика : для диалогов в Google Chat , открывает или обновляет диалог.

endNavigation

EndNavigation

Для дополнений в Google Chat закрывает диалог .

Уведомление

Действие, которое отображает уведомление в приложении Google Workspace, когда пользователь взаимодействует с картой.

Предварительный просмотр разработчика : для надстройки в Google Chat отображает уведомление, когда пользователи отправляют и закрывают диалог .

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Поля
text

string

Простой текст для отображения для уведомления, без тегов HTML.

OnClick

Представляет, как ответить, когда пользователи нажимают интерактивный элемент на карте, такой как кнопка.

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля

Объединенные полевые data .

data могут быть только одним из следующих:

action

Action

Если указано, действие запускается этим onClick .

openDynamicLinkAction

Action

Дополнительное действие запускает это действие, когда действие должно открыть ссылку. Это отличается от open_link выше, так как это должно поговорить с сервером, чтобы получить ссылку. Таким образом, для веб -клиента требуется некоторая подготовительная работа, прежде чем возвращается ответ на действие открытой ссылки.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

card

Card

Новая карта перемещается в стек карт после нажатия, если указано.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

overflowMenu

OverflowMenu

Если указано, этот onClick открывает меню переполнения.

OnClose

То, что делает клиент, когда ссылка, открываемая действием OnClick , закрыта.

Реализация зависит от возможностей клиентской платформы. Например, веб-браузер может открыть ссылку во всплывающем окне с помощью обработчика OnClose .

Если установлены как OnOpen , так и OnClose Handlers, и клиентская платформа не может поддерживать оба значения, OnClose имеет приоритет.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Перечисления
NOTHING Значение по умолчанию. Карта не перезагружается; ничего не происходит.
RELOAD

Перезагружает карту после закрытия детского окна.

При использовании в сочетании с OpenAs.OVERLAY , детское окно действует как модальный диалог, а родительская карта заблокирована до закрытия детского окна.

OpenS

Когда действие OnClick открывает ссылку, тогда клиент может открыть его в качестве полноразмерного окна (если это кадр, используемый клиентом), либо наложением (например, всплывающее окно). Реализация зависит от возможностей клиентской платформы, и выбранное значение может быть проигнорировано, если клиент не поддерживает ее. FULL_SIZE поддерживается всеми клиентами.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Перечисления
FULL_SIZE Ссылка открывается как полноразмерное окно (если это кадр, используемый клиентом).
OVERLAY Ссылка открывается как наложение, например, всплывающее окно.

Overflowmenu

Виджет, который представляет всплывающее меню с одним или несколькими действиями, которые могут вызвать пользователи. Например, показывая невидимые действия в карте. Вы можете использовать этот виджет, когда действия не вписываются в доступное пространство. Чтобы использовать, укажите этот виджет в OnClick виджетов, которые его поддерживают. Например, в Button .

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
items[]

OverflowMenuItem

Требуется Список вариантов меню.

Overflowmenuitem

Вариант, который пользователи могут вызвать в меню переполнения.

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
startIcon

Icon

Значок отображается перед текстом.

text

string

Требуется Текст, который идентифицирует или описывает элемент для пользователей.

onClick

OnClick

Требуется Действие вызвано, когда выбрана опция меню. Этот OnClick не может содержать OverflowMenu , любой указанный OverflowMenu отбрасывается, а пункт меню отключен.

disabled

bool

Отключен ли параметр меню. По умолчанию ложно.

Рендеринги

Набор инструкций по рендеринге, в котором сообщает хост приложения, как отображать карту или выполнить действие в ответ на взаимодействие с пользователем.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Поля
action

Action

Действие, которое надстройки могут использовать для обновления пользовательского интерфейса.

Предварительный просмотр разработчика : надстройки в чате Google .

hostAppAction

HostAppActionMarkup

Действия, выполняемые отдельными приложениями хоста.

schema

string

Это поле схемы NO-OP, которое может присутствовать в наценке для проверки синтаксиса.

Действие

Действия , которые надстройки могут использовать в картах или приложении хоста.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

Поля
navigations[]

Navigation

Толкает, всплывает или обновляет карту.

Предварительный просмотр разработчика : надстройки в чате Google .

notification

Notification

Отображает уведомление в приложении Google Workspace, когда пользователь взаимодействует с картой.

Предварительный просмотр разработчика : для надстройки в Google Chat отображает уведомление, когда пользователи отправляют и закрывают диалог .

linkPreview

LinkPreview

Доступно в Google Docs, Google Sheets и Google Slides. Предварительный просмотр ссылок с интеллектуальными чипсами и картой. Для получения подробной информации см. Предварительные ссылки с интеллектуальными чипсами .

modifyOperations[]

ModifyCard

Для дополнений в Google Chat обновляет карту на основе взаимодействия с пользователем. Массив должен содержать только один объект.

SelectionInput

Виджет, который создает один или несколько элементов пользовательского интерфейса, которые могут выбрать пользователи. Поддерживает проверку подачи формы только для dropdown и multiselect меню. Когда Action.all_widgets_are_required устанавливается на true или этот виджет указан в Action.required_widgets , действие подачи блокировки, если не выбрано значение. Например, выпадающее меню или флажки. Вы можете использовать этот виджет для сбора данных, которые могут быть предсказаны или перечислены. Для примера в приложениях Google Chat см. «Добавить выбранные элементы пользовательского интерфейса» .

Приложения чата могут обрабатывать значение элементов, которые пользователи выбирают или вводятся. Для получения подробной информации о работе с входами формы см. Данные формы приема .

Чтобы собрать неопределенные или абстрактные данные от пользователей, используйте виджет TextInput .

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
name

string

Требуется Имя, которое идентифицирует ввод выбора в событии ввода формы.

Для получения подробной информации о работе с входами формы см. Данные формы приема .

label

string

Текст, который появляется над полем ввода выбора в пользовательском интерфейсе.

Укажите текст, который помогает пользователю ввести информацию, необходимую вашему приложению. Например, если пользователи выбирают срочность рабочего билета из раскрывающегося меню, этикетка может быть «срочно» или «выберите срочность».

type

SelectionType

Тип элементов, которые отображаются пользователям в виджете SelectionInput . Типы выбора поддерживают различные типы взаимодействий. Например, пользователи могут выбрать один или несколько флажков, но они могут выбрать только одно значение в раскрывающемся меню.

items[]

SelectionItem

Массив выбранных элементов. Например, массив радиопроизводств или флажок. Поддерживает до 100 предметов.

onChangeAction

Action

Если указано, форма отправляется при изменении выбора. Если не указано, вы должны указать отдельную кнопку, которая подчиняет форму.

Для получения подробной информации о работе с входами формы см. Данные формы приема .

multiSelectMaxSelectedItems

int32

Для MultiSelect Menus максимальное количество элементов, которые пользователь может выбрать. Минимальное значение - 1 элемент. Если не указано, по умолчанию 3 пункта.

multiSelectMinQueryLength

int32

Для MultiSelect Menus количество текстовых символов, которые пользователь вводит до того, как меню возвращает предлагаемые элементы выбора.

Если вы не вытекают, в меню MultiSelect используется следующие значения по умолчанию:

  • Если в меню используется статический массив элементов SelectionInput , по умолчанию до 0 символов и немедленно заполняет элементы из массива.
  • Если в меню используется динамический источник данных ( multi_select_data_source ), по умолчанию до 3 символов перед запросом источника данных для возврата предлагаемых элементов.

Поле Союза multi_select_data_source . Для многосекционного меню источник данных, который динамически населяет элементы выбора.

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace. multi_select_data_source может быть только одним из следующих:

externalDataSource

Action

Внешний источник данных, такой как реляционная база данных.

platformDataSource

PlatformDataSource

Источник данных из Google Workspace.

PlatformDatasource

Для виджета SelectionInput , в котором используется многоселекное меню, источник данных из Google Workspace. Используется для заполнения предметов в многосекционном меню.

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace.

Поля
Поле Союза data_source . Источник данных. data_source может быть только одним из следующих:
commonDataSource

CommonDataSource

Источник данных, разделяемый всеми приложениями Google Workspace, таких как пользователи в организации Google Workspace.

hostAppDataSource

HostAppDataSourceMarkup

Источник данных, уникальный для приложения Google Workspace Host, таких пространств в Google Chat.

Это поле поддерживает клиентские библиотеки Google API, но не доступно в библиотеках Cloud Client. Чтобы узнать больше, см. Установите клиентские библиотеки .

Commondatasource

Источник данных, разделяемый всеми приложениями Google Workspace .

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace.

Перечисления
UNKNOWN Значение по умолчанию. Не используйте.
USER Пользователи Google Workspace. Пользователь может просматривать и выбирать пользователей только из своей организации Google Workspace.

SelectionItem

Элемент, который пользователи могут выбрать во входе выбора, например, флажок или коммутатор. Поддерживает до 100 предметов.

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
text

string

Текст, который идентифицирует или описывает элемент для пользователей.

value

string

Значение, связанное с этим элементом. Клиент должен использовать это в качестве входного значения формы.

Для получения подробной информации о работе с входами формы см. Данные формы приема .

selected

bool

Будет ли элемент выбран по умолчанию. Если ввод выбора принимает только одно значение (например, для радиопроизводительных кнопок или раскрывающегося меню), установите это поле только для одного элемента.

bottomText

string

Для MultiSelect Menus текстовое описание или этикетку, отображаемое ниже text поля элемента.

Юнион Филд startIcon . Для MultiSelect Menus URL -адрес для значка, отображаемого рядом с text полем элемента. Поддерживает файлы PNG и JPEG. Должен быть HTTPS URL. Например, https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png . startIcon может быть только одним из следующих:
startIconUri

string

ВыборТип

Формат для элементов, которые пользователи могут выбрать. Различные параметры поддерживают различные типы взаимодействий. Например, пользователи могут выбрать несколько флажков, но могут выбрать только один элемент из раскрывающегося меню.

Каждый ввод выбора поддерживает один тип выбора. Например, смешивание флажок и коммутаторов не поддерживается.

Доступно для приложений Google Chat и надстройки Google Workspace.

Перечисления
CHECK_BOX Набор флажок. Пользователи могут выбрать один или несколько флажков.
RADIO_BUTTON Набор радиопроизводств. Пользователи могут выбрать одну радиопроизводительную кнопку.
SWITCH Набор переключателей. Пользователи могут включать один или несколько коммутаторов.
DROPDOWN Выпадающее меню. Пользователи могут выбрать один элемент из меню.
MULTI_SELECT

Меню с текстовым поле. Пользователи могут вводить и выбрать один или несколько элементов. Для надстройки Google Workspace вы должны заполнять элементы, используя статический массив объектов SelectionItem .

Для приложений Google Chat вы также можете заполнять элементы, используя динамический источник данных и Autosuggestement, как пользователи вводят в меню. Например, пользователи могут начать набирать имя пространства чата Google, а виджет автоматически использует пространство. Для динамического заполнения элементов для многосекционного меню используйте один из следующих типов источников данных:

  • Данные Google Workspace: элементы заполняются с использованием данных из Google Workspace, таких как пользователи Google Workspace или Google Chat Spaces.
  • Внешние данные: элементы заполняются из внешнего источника данных за пределами Google Workspace.

Примеры того, как реализовать MultiSelect Menus для приложений для чата, см. MultiSelect Menu .

Доступно для приложений Google Chat и надстройки Google Workspace.

Отправить формулируйте

Ответ на отправку формы, кроме получения контейнера с автозаполнением, который содержит действия, которые должна выполнять карту, и/или приложение Add-Host должно выполнять, и изменилось ли состояние карты.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat. Например:

{
  "renderActions": {
    "action": {
      "notification": {
        "text": "Email address is added: salam.heba@example.com"
      }
    },
    "hostAppAction": {
      "gmailAction": {
        "openCreatedDraftAction": {
          "draftId": "msg-a:r-79766936926021702",
          "threadServerPermId": "thread-f:15700999851086004"
        }
      }
    }
  }
}
Поля
renderActions

RenderActions

Набор инструкций по рендерингу, который сообщает карте выполнить действие и/или сообщает приложению Add-Host для выполнения специфического приложения действие.

stateChanged

bool

Изменилось ли состояние карт, и данные в существующих картах устареют.

schema

string

Это поле схемы NO-OP, которое может присутствовать в наценке для проверки синтаксиса.

Предложения

Предлагаемые значения, в которые пользователи могут ввести. Эти значения появляются, когда пользователи нажимают внутри поля ввода текста. Как вводит пользователи, предлагаемые значения динамически фильтровали, чтобы соответствовать тому, что напечатали пользователи.

Например, поле ввода текста для языка программирования может предложить Java, JavaScript, Python и C ++. Когда пользователи начнут печатать Jav , список предложений фильтровал, чтобы показать Java и JavaScript .

Предлагаемые значения помогают пользователям вводить значения, которые может понять ваше приложение. При ссылке на JavaScript некоторые пользователи могут ввести javascript , а другие java script . Предложение JavaScript может стандартизировать, как пользователи взаимодействуют с вашим приложением.

Когда указано, TextInput.type всегда SINGLE_LINE , даже если он устанавливается на MULTIPLE_LINE .

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
items[]

SuggestionItem

Список предложений, используемых для рекомендаций автозаполнения в полях ввода текста.

Предложение

Одно предложенное значение, которое пользователи могут ввести в поле текстового ввода.

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля

Полевой content союза.

content может быть только одним из следующих:

text

string

Значение предлагаемого ввода в поле ввода текста. Это эквивалентно тому, что пользователи вводят себя.

Ввод текста

Поле, в которое пользователи могут вводить текст. Поддерживает предложения и действия по изменению. Поддерживает проверку подчинения формы. Когда Action.all_widgets_are_required устанавливается на true или этот виджет указан в Action.required_widgets , действие подачи блокировки, если не введено значение. Для примера в приложениях Google Chat см. Добавьте поле, в которое пользователь может ввести текст .

Приложения чата получают и могут обрабатывать значение введенного текста во время событий ввода формы. Для получения подробной информации о работе с входами формы см. Данные формы приема .

Когда вам нужно собирать неопределенные или абстрактные данные от пользователей, используйте текстовый ввод. Для сбора определенных или перечисленных данных от пользователей используйте виджет SelectionInput .

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
name

string

Имя, с помощью которого текстовый ввод идентифицируется в событии ввода формы.

Для получения подробной информации о работе с входами формы см. Данные формы приема .

label

string

Текст, который появляется над полем ввода текста в пользовательском интерфейсе.

Укажите текст, который помогает пользователю ввести информацию, необходимую вашему приложению. Например, если вы спрашиваете чье -то имя, но особенно нужна их фамилия, напишите surname вместо name .

Требуется, если hintText не определен. В противном случае, необязательно.

hintText

string

Текст, который появляется под полем ввода текста, предназначенным для помощи пользователям, побуждая их ввести определенное значение. Этот текст всегда виден.

Требуется, если label не определен. В противном случае, необязательно.

value

string

Значение, введенное пользователем, возвращенное как часть события ввода формы.

Для получения подробной информации о работе с входами формы см. Данные формы приема .

type

Type

Как ввод текстового ввода появляется в пользовательском интерфейсе. Например, является ли поле одиночным или многострочным.

onChangeAction

Action

Что делать, когда изменение происходит в поле ввода текста. Например, пользователь, добавляющий в поле или удаляет текст.

Примеры действий, которые необходимо предпринять, включают запуск пользовательской функции или открытие диалога в чате Google.

initialSuggestions

Suggestions

Предлагаемые значения, в которые пользователи могут ввести. Эти значения появляются, когда пользователи нажимают внутри поля ввода текста. Как вводит пользователи, предлагаемые значения динамически фильтровали, чтобы соответствовать тому, что напечатали пользователи.

Например, поле ввода текста для языка программирования может предложить Java, JavaScript, Python и C ++. Когда пользователи начинают печатать Jav , список предложений фильтровал, чтобы показать Java и JavaScript .

Предлагаемые значения помогают пользователям вводить значения, которые может понять ваше приложение. При ссылке на JavaScript некоторые пользователи могут ввести javascript , а другие java script . Предложение JavaScript может стандартизировать, как пользователи взаимодействуют с вашим приложением.

Когда указано, TextInput.type всегда SINGLE_LINE , даже если он устанавливается на MULTIPLE_LINE .

Доступно для приложений Google Chat и надстройки Google Workspace.

autoCompleteAction

Action

Необязательный. Укажите, какое действие предпринять, когда поле Text Inpult предоставляет предложения пользователям, которые взаимодействуют с ним.

В случае неопределенности предложения устанавливаются initialSuggestions и обрабатываются клиентом.

Если указано, приложение принимает указанное здесь действие, например, запуск пользовательской функции.

Доступно для Google Workspace Adsons и недоступно для приложений Google Chat.

validation

Validation

Укажите проверку ввода формата, необходимую для этого текстового поля.

Доступно для приложений Google Chat и надстройки Google Workspace.

placeholderText

string

Текст, который появляется в поле ввода текста, когда поле пустое. Используйте этот текст, чтобы попросить пользователей ввести значение. Например, Enter a number from 0 to 100 .

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace.

Тип

Как ввод текстового ввода появляется в пользовательском интерфейсе. Например, будь то поле ввода одной линии или многострочный вход. Если указаны initialSuggestions , type всегда является SINGLE_LINE , даже если он установлен на MULTIPLE_LINE .

Доступно для приложений Google Chat и надстройки Google Workspace.

Перечисления
SINGLE_LINE Поле ввода текста имеет фиксированную высоту одной линии.
MULTIPLE_LINE Поле ввода текста имеет фиксированную высоту нескольких линий.

ТекстовыйАбзац

Абзац текста, который поддерживает форматирование. Для примера в приложениях Google Chat см. Добавьте абзац форматированного текста . Для получения дополнительной информации о форматировании текста см. Форматирование текста в приложениях Google Chat и форматирование текста в надстройках Google Workspace .

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
text

string

Текст, который показан в виджет.

maxLines

int32

Максимальное количество строк текста, которые отображаются в виджете. Если текст превышает указанное максимальное количество строк, избыточное содержание скрывается за кнопкой Show Better . Если текст одинаково или короче, чем указанное максимальное количество строк, кнопка «Показать больше» не отображается.

Значение по умолчанию равно 0, и в этом случае отображается весь контекст. Отрицательные значения игнорируются.

Проверка

Представляет необходимые данные для проверки виджета, к которому он прикреплен.

Доступно для приложений Google Chat и надстройки Google Workspace.

Поля
characterLimit

int32

Укажите ограничение символа для виджетов ввода текста. Обратите внимание, что это используется только для ввода текста и игнорируется для других виджетов.

Доступно для приложений Google Chat и надстройки Google Workspace.

inputType

InputType

Укажите тип входных виджетов.

Доступно для приложений Google Chat и надстройки Google Workspace.

Тип ввода

Тип входного виджета.

Перечисления
INPUT_TYPE_UNSPECIFIED Неопределенный тип. Не используйте.
TEXT Регулярный текст, который принимает всех символов.
INTEGER Целочисленное значение.
FLOAT Значение поплавки.
EMAIL Адрес электронной почты.
EMOJI_PICKER Эмодзи, отобранный из предоставленного системой сборщика смайликов.

Виджет

Каждая карта состоит из виджетов.

Виджет - это композитный объект, который может представлять один из текста, изображений, кнопок и других типов объектов.

Поля
horizontalAlignment

HorizontalAlignment

Определяет, выровняются ли виджеты влево, справа или центр столбца.

Объединенные полевые data . Виджет может иметь только один из следующих элементов. Вы можете использовать несколько полей виджетов для отображения большего количества элементов. data могут быть только одним из следующих:
textParagraph

TextParagraph

Отображает текстовый абзац. Поддерживает простой HTML -форматированный текст. Для получения дополнительной информации о форматировании текста см. Форматирование текста в приложениях Google Chat и форматирование текста в надстройках Google Workspace .

Например, следующий JSON создает жирный жирный текст:

"textParagraph": {
  "text": "  <b>bold text</b>"
}
image

Image

Отображает изображение.

Например, следующий JSON создает изображение с альтернативным текстом:

"image": {
  "imageUrl":
  "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
  "altText": "Chat app avatar"
}
decoratedText

DecoratedText

Отображает украшенный текстовый элемент.

Например, следующий JSON создает украшенный виджет текста, показывающий адрес электронной почты:

"decoratedText": {
  "icon": {
    "knownIcon": "EMAIL"
  },
  "topLabel": "Email Address",
  "text": "sasha@example.com",
  "bottomLabel": "This is a new Email address!",
  "switchControl": {
    "name": "has_send_welcome_email_to_sasha",
    "selected": false,
    "controlType": "CHECKBOX"
  }
}
buttonList

ButtonList

Список кнопок.

Например, следующий JSON создает две кнопки. Первый - это синяя текстовая кнопка, а вторая - это кнопка изображения, которая открывает ссылку:

"buttonList": {
  "buttons": [
    {
      "text": "Edit",
      "color": {
        "red": 0,
        "green": 0,
        "blue": 1,
      },
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}
textInput

TextInput

Отображает текстовое поле, в которое пользователи могут ввести.

Например, следующий JSON создает текстовый ввод для адреса электронной почты:

"textInput": {
  "name": "mailing_address",
  "label": "Mailing Address"
}

В качестве другого примера, следующий JSON создает текстовый ввод для языка программирования со статическими предложениями:

"textInput": {
  "name": "preferred_programing_language",
  "label": "Preferred Language",
  "initialSuggestions": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
selectionInput

SelectionInput

Отображает элемент управления выбором, который позволяет пользователям выбирать элементы. Элементы управления выбором могут быть флажками, радионотоками, переключателями или раскрывающимися меню.

Например, следующее JSON создает выпадающее меню, которое позволяет пользователям выбирать размер:

"selectionInput": {
  "name": "size",
  "label": "Size"
  "type": "DROPDOWN",
  "items": [
    {
      "text": "S",
      "value": "small",
      "selected": false
    },
    {
      "text": "M",
      "value": "medium",
      "selected": true
    },
    {
      "text": "L",
      "value": "large",
      "selected": false
    },
    {
      "text": "XL",
      "value": "extra_large",
      "selected": false
    }
  ]
}
dateTimePicker

DateTimePicker

Отображает виджет, который позволяет пользователям вводить дату, время или дату и время.

Например, следующий JSON создает сборщик даты, чтобы назначить встречу:

"dateTimePicker": {
  "name": "appointment_time",
  "label": "Book your appointment at:",
  "type": "DATE_AND_TIME",
  "valueMsEpoch": "796435200000"
}
divider

Divider

Отображает горизонтальную линейную разделитель между виджетами.

Например, следующий JSON создает делитель:

"divider": {
}
grid

Grid

Отображает сетку с коллекцией предметов.

Сетка поддерживает любое количество столбцов и элементов. Количество строк определяется верхними границами числа элементов, деленных на количество столбцов. Сетка с 10 пунктами и 2 столбцами имеет 5 строк. Сетка с 11 элементами и 2 столбцами имеет 6 строк.

Доступно для приложений Google Chat и надстройки Google Workspace.

Например, следующий JSON создает сетку из 2 столбцов с одним элементом:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
columns

Columns

Отображает до 2 столбцов.

Чтобы включить более 2 столбцов или для использования строк, используйте виджет Grid .

Например, следующий JSON создает по 2 столбца, каждый из которых содержит текстовые абзацы:

"columns": {
  "columnItems": [
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "First column text paragraph"
          }
        }
      ]
    },
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "Second column text paragraph"
          }
        }
      ]
    }
  ]
}
carousel

Carousel

Карусель содержит коллекцию вложенных виджетов. Например, это представление JSON карусели, которая содержит два текстовых параграфа.

{
  "widgets": [
    {
      "textParagraph": {
        "text": "First text paragraph in the carousel."
      }
    },
    {
      "textParagraph": {
        "text": "Second text paragraph in the carousel."
      }
    }
  ]
}
chipList

ChipList

Список чипсов.

Например, следующий JSON создает две фишки. Первый - это текстовый чип, а второй - это микросхема, который открывает ссылку:

"chipList": {
  "chips": [
    {
      "text": "Edit",
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}

ГоризонтальноеВыравнивание

Определяет, выровняются ли виджеты влево, справа или центр столбца.

Доступно для приложений Google Chat и недоступно для надстройки Google Workspace.

Перечисления
HORIZONTAL_ALIGNMENT_UNSPECIFIED Не используйте. Неуказано.
START Значение по умолчанию. Выравнивает виджеты с начальной позицией столбца. Для макетов слева направо выровняется влево. Для макетов справа налево выровняется справа.
CENTER Выравнивает виджеты в центр колонны.
END Выравнивает виджеты с конечной позицией столбца. Для макетов слева направо выравнивает виджеты вправо. Для макетов справа налево выравнивает виджеты влево.

ImageType

Форма, используемая для обрезания изображения.

Доступно для приложений Google Chat и надстройки Google Workspace.

Перечисления
SQUARE Значение по умолчанию. Применяет квадратную маску к изображению. Например, изображение 4x3 становится 3x3.
CIRCLE Применяет круговую маску к изображению. Например, изображение 4x3 становится кругом с диаметром 3.