Package google.apps.card.v1

Индекс

Действие

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

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

Поля
function

string

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

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

parameters[]

ActionParameter

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

load_indicator

LoadIndicator

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

persist_values

bool

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

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

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

interaction

Interaction

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

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

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

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

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

required_widgets[]

string

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

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

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

all_widgets_are_required

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 Ничего не отображается.

BorderStyle

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

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

Поля
type

BorderType

Тип границы.

stroke_color

Color

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

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

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

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

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

corner_radius

int32

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

BorderType

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

Доступно для приложений 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 недоступно для цвета кнопки. Если указано, это поле игнорируется.

on_click

OnClick

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

disabled

bool

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

alt_text

string

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

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

type

Type

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

Тип

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

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

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

ButtonList

Список кнопок, расположенных горизонтально. Пример в приложениях 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 см. в разделе «Определение раздела карточки» .

section_divider_style

DividerStyle

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

card_actions[]

CardAction

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

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

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

"card_actions": [
  {
    "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.

display_style

DisplayStyle

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

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

peek_card_header

CardHeader

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

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

CardAction

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

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

Поля
action_label

string

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

on_click

OnClick

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

CardFixedFooter

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

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

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

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

Поля
primary_button

Button

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

secondary_button

Button

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

CardHeader

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

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

Поля
title

string

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

subtitle

string

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

image_type

ImageType

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

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

image_url

string

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

image_alt_text

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 могут быть только одним из следующих:

text_paragraph

TextParagraph

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

button_list

ButtonList

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

image

Image

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

Раздел

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

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

Поля
header

string

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

widgets[]

Widget

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

collapsible

bool

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

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

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

uncollapsible_widgets_count

int32

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

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

collapse_control

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.

Поля
carousel_cards[]

CarouselCard

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

КарусельКарта

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

Поля
widgets[]

NestedWidget

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

footer_widgets[]

NestedWidget

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

Чип

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

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

Поля
icon

Icon

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

label

string

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

on_click

OnClick

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

enabled
(deprecated)

bool

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

disabled

bool

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

alt_text

string

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

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

ChipList

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

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

Поля
layout

Layout

Указанный макет списка микросхем.

chips[]

Chip

Массив фишек.

Макет

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

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

CollapseControl

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

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

Поля
horizontal_alignment

HorizontalAlignment

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

expand_button

Button

Необязательно. Создайте настраиваемую кнопку для развёртывания раздела. Необходимо задать оба поля: expand_button и coll_button. Только один набор полей не будет действовать. Если это поле не задано, будет использоваться кнопка по умолчанию.

collapse_button

Button

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

Колонны

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

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

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

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

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

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

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

Column

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

Столбец

Колонка.

Дополнения Google Workspace и приложения чата

Поля
horizontal_size_style

HorizontalSizeStyle

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

horizontal_alignment

HorizontalAlignment

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

vertical_alignment

VerticalAlignment

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

widgets[]

Widgets

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

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

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

Дополнения Google Workspace и приложения чата

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

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

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

Дополнения Google Workspace и приложения чата

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

Виджеты

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

Дополнения Google Workspace и приложения чата

Поля

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

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

text_paragraph

TextParagraph

Виджет TextParagraph .

image

Image

Виджет Image .

decorated_text

DecoratedText

Виджет DecoratedText .

button_list

ButtonList

Виджет ButtonList .

text_input

TextInput

Виджет TextInput .

selection_input

SelectionInput

Виджет SelectionInput .

date_time_picker

DateTimePicker

Виджет DateTimePicker .

chip_list

ChipList

Виджет ChipList .

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

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

value_ms_epoch

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 используйте 43200000 (или 12 * 60 * 60 * 1000 ).
timezone_offset_date

int32

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

on_change_action

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 .

start_icon

Icon

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

start_icon_vertical_alignment

VerticalAlignment

Необязательно. Вертикальное выравнивание значка «Пуск». Если не задано, значок будет выровнен по центру.

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

top_label

string

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

top_label_text

TextParagraph

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

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

text

string

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

Поддерживает простое форматирование. Подробнее о форматировании текста см. в разделах Форматирование текста в приложениях Google Chat и Форматирование текста в расширениях Google Workspace .

content_text

TextParagraph

TextParagraph эквивалентен text . Позволяет использовать более сложное форматирование, чем text .

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

wrap_text

bool

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

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

bottom_label

string

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

bottom_label_text

TextParagraph

TextParagraph эквивалентно bottom_label . Всегда переносится. Позволяет реализовать более сложное форматирование, чем bottom_label .

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

on_click

OnClick

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

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

Button

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

switch_control

SwitchControl

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

end_icon

Icon

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

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

SwitchControl

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

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

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

Поля
name

string

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

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

value

string

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

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

selected

bool

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

on_change_action

Action

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

control_type

ControlType

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

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

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

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

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

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

Разделитель

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

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

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

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

"divider": {}

Сетка

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

Сетка поддерживает любое количество столбцов и элементов. Количество строк определяется отношением количества элементов к количеству столбцов. Сетка с 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"
    }
  }
}
Поля
title

string

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

items[]

GridItem

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

border_style

BorderStyle

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

column_count

int32

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

on_click

OnClick

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

GridItem

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

Доступно для приложений 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.

Поля
alt_text

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 значка игнорируется.

image_type

ImageType

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

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

string

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

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

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

icon_url

string

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

Например:

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

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

material_icon

MaterialIcon

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

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

"material_icon": {
  "name": "check_box"
}

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

Изображение

Изображение, заданное URL-адресом и допускающее действие onClick . Пример см. в разделе «Добавление изображения» .

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

Поля
image_url

string

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

Например:

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

OnClick

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

alt_text

string

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

ImageComponent

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

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

Поля
image_uri

string

URL-адрес изображения.

alt_text

string

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

crop_style

ImageCropStyle

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

border_style

BorderStyle

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

ImageCropStyle

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

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

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

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

ImageCropType

Тип урожая.

aspect_ratio

double

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

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

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

ТипОбрезки Изображения

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

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

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

МатериалИконка

Значок Google Material , включающий более 2500+ вариантов.

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

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

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

Поля
name

string

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

fill

bool

Будет ли значок отображаться заполненным. Значение по умолчанию — ложь.

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

weight

int32

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

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

grade

int32

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

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

OnClick

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

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

Поля

data поля объединения.

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

action

Action

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

card

Card

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

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

overflow_menu

OverflowMenu

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

OnClose

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

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

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

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

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

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

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

OpenAs

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

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

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

ПереполнениеМеню

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

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

Поля
items[]

OverflowMenuItem

Обязательно. Список опций меню.

ПереполнениеМенюЭлемент

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

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

Поля
start_icon

Icon

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

text

string

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

on_click

OnClick

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

disabled

bool

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

ВыборВвод

Виджет, создающий один или несколько элементов пользовательского интерфейса, которые пользователи могут выбирать. Поддерживает проверку отправки формы только для 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 элементов.

on_change_action

Action

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

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

multi_select_min_query_length

int32

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

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

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

int32

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

Поле объединения multi_select_data_source . Для меню с множественным выбором — источник данных, который динамически заполняет элементы выбора.

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

external_data_source

Action

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

platform_data_source

PlatformDataSource

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

ПлатформаИсточник данных

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

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

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

CommonDataSource

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

host_app_data_source

HostAppDataSourceMarkup

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

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

Общий источник данных

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

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

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

Элемент выбора

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

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

Поля
text

string

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

value

string

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

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

selected

bool

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

bottom_text

string

Для меню с множественным выбором — текстовое описание или метка, отображаемая под text полем элемента.

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

string

ТипВыбора

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

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

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

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

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

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

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

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

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

Предложения

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

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

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

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

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

Поля
items[]

SuggestionItem

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

ПредложениеItem

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

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

Поля

content поля объединения.

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

text

string

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

TextInput

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

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

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

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

Поля
name

string

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

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

label

string

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

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

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

hint_text

string

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

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

value

string

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

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

type

Type

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

on_change_action

Action

Что делать, если в поле ввода текста произошло изменение. Например, пользователь добавляет поле или удаляет текст.

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

initial_suggestions

Suggestions

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

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

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

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

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

auto_complete_action

Action

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

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

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

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

validation

Validation

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

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

placeholder_text

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

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

max_lines

int32

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

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

text_syntax

TextSyntax

Синтаксис текста. Если не установлено, текст отображается как HTML.

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

Текстовый синтаксис

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

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

Перечисления
TEXT_SYNTAX_UNSPECIFIED Текст отображается как HTML, если он не указан.
HTML Текст отображается в формате HTML. Это значение по умолчанию.
MARKDOWN Текст отображается как Markdown.

Проверка

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

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

Поля
character_limit

int32

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

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

input_type

InputType

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

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

Тип ввода

Тип виджета ввода.

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

Виджет

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

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

Поля
horizontal_alignment

HorizontalAlignment

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

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

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"
}
decorated_text

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"
  }
}
button_list

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"
        }
      }
    }
  ]
}
text_input

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"
      }
    ]
  }
}
selection_input

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
    }
  ]
}
date_time_picker

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 создает сетку из двух столбцов с одним элементом:

"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 столбцов.

Чтобы включить более двух столбцов или использовать строки, используйте виджет 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."
      }
    }
  ]
}
chip_list

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 Выравнивает виджеты по конечному положению столбца. Для макетов слева направо виджеты выравниваются по правому краю. Для макетов с направлением справа налево виджеты выравниваются по левому краю.

Тип изображения

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

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

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

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

Представляет атрибут вертикального выравнивания.

Перечисления
VERTICAL_ALIGNMENT_UNSPECIFIED Неопределенный тип. Не используйте.
TOP Выравнивание в верхнее положение.
MIDDLE Выравнивание в среднее положение.
BOTTOM Выравнивание в нижнее положение.