Card

Interfejs karty wyświetlany w wiadomości na czacie w Google Chat lub w dodatku do Google Workspace.

Karty obsługują zdefiniowany układ, interaktywne elementy interfejsu, takie jak przyciski, oraz treści rich media, takie jak obrazy. Używaj kart, aby przedstawiać szczegółowe informacje, zbierać informacje od użytkowników i zachęcać ich do wykonania kolejnego kroku.

Projektuj karty i wyświetlaj ich podgląd za pomocą Kreatora kart.

Otwieranie Kreatora kart

Aby dowiedzieć się, jak tworzyć karty, zapoznaj się z tymi materiałami:

Uwaga: do każdej karty możesz dodać maksymalnie 100 widżetów. Jeśli widżety w sekcji przekroczą łączną liczbę 100, cała ta sekcja i wszystkie kolejne sekcje zostaną zignorowane. Ten limit dotyczy zarówno wiadomości z kartami, jak i okien dialogowych w aplikacjach do Google Chat oraz kart w dodatkach do Google Workspace.

Przykład: wiadomość z kartą w aplikacji Google Chat

Przykładowa wizytówka

Aby utworzyć przykładową wiadomość z kartą w Google Chat, użyj tego kodu 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"
                             }
                           ]
                         }
                       }
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
    }
  ]
}
Zapis JSON
{
  "header": {
    object (CardHeader)
  },
  "sections": [
    {
      object (Section)
    }
  ],
  "sectionDividerStyle": enum (DividerStyle),
  "cardActions": [
    {
      object (CardAction)
    }
  ],
  "name": string,
  "fixedFooter": {
    object (CardFixedFooter)
  },
  "displayStyle": enum (DisplayStyle),
  "peekCardHeader": {
    object (CardHeader)
  },
  "expressionData": [
    {
      object (ExpressionData)
    }
  ]
}
Pola
header

object (CardHeader)

Nagłówek karty. Nagłówek zwykle zawiera obraz główny i tytuł. Nagłówki zawsze pojawiają się u góry karty.

sections[]

object (Section)

Zawiera kolekcję widżetów. Każda sekcja ma własny, opcjonalny nagłówek. Sekcje są wizualnie oddzielone linią. Przykład dotyczący aplikacji Google Chat znajdziesz w artykule Definiowanie sekcji karty.

sectionDividerStyle

enum (DividerStyle)

Styl separatora między nagłówkiem, sekcjami i stopką.

cardActions[]

object (CardAction)

Działania karty. Działania są dodawane do menu paska narzędzi karty. Obsługuje maksymalnie 10 elementów CardAction.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

Na przykład ten kod JSON tworzy menu czynności na karcie z opcjami Settings i 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

Nazwa karty. Używany jako identyfikator karty w nawigacji po kartach.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

displayStyle

enum (DisplayStyle)

W dodatkach do Google Workspace ustawia właściwości wyświetlania elementu peekCardHeader.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

peekCardHeader

object (CardHeader)

Podczas wyświetlania treści kontekstowych nagłówek karty podglądu działa jako obiekt zastępczy, dzięki czemu użytkownik może przechodzić między kartami strony głównej a kartami kontekstowymi.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

expressionData[]

object (ExpressionData)

Dane wyrażenia na karcie.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

CardHeader

Reprezentuje nagłówek karty. Przykład dotyczący aplikacji Google Chat znajdziesz w sekcji Dodawanie nagłówka.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "title": string,
  "subtitle": string,
  "imageType": enum (ImageType),
  "imageUrl": string,
  "imageAltText": string
}
Pola
title

string

Wymagane. Tytuł nagłówka karty. Nagłówek ma stałą wysokość: jeśli podano zarówno tytuł, jak i podtytuł, każdy z nich zajmuje 1 wiersz. Jeśli podany jest tylko tytuł, zajmuje on oba wiersze.

subtitle

string

Podtytuł nagłówka karty. Jeśli jest podany, pojawia się w osobnym wierszu pod title.

imageType

enum (ImageType)

Kształt używany do przycinania obrazu.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

imageUrl

string

Adres URL HTTPS obrazu w nagłówku karty.

imageAltText

string

Tekst alternatywny tego obrazu, który jest używany na potrzeby ułatwień dostępu.

Sekcja

Sekcja zawiera kolekcję widżetów, które są renderowane pionowo w określonej kolejności.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "header": string,
  "widgets": [
    {
      object (Widget)
    }
  ],
  "collapsible": boolean,
  "uncollapsibleWidgetsCount": integer,
  "id": string,
  "collapseControl": {
    object (CollapseControl)
  }
}
Pola
header

string

Tekst, który pojawia się u góry sekcji. Obsługuje prosty tekst sformatowany w HTML. Więcej informacji o formatowaniu tekstu znajdziesz w artykułach Formatowanie tekstu w aplikacjach Google Chat i Formatowanie tekstu w dodatkach do Google Workspace.

widgets[]

object (Widget)

Wszystkie widżety w sekcji. Musi zawierać co najmniej 1 widżet. Karta może zawierać maksymalnie 100 widżetów we wszystkich sekcjach.

collapsible

boolean

Wskazuje, czy tę sekcję można zwijać.

Sekcje zwijane ukrywają niektóre lub wszystkie widżety, ale użytkownicy mogą rozwinąć sekcję, aby wyświetlić ukryte widżety, klikając Pokaż więcej. Użytkownicy mogą ponownie ukryć widżety, klikając Pokaż mniej.

Aby określić, które widżety są ukryte, podaj uncollapsibleWidgetsCount.

uncollapsibleWidgetsCount

integer

Liczba widżetów, których nie można zwinąć i które pozostają widoczne nawet po zwinięciu sekcji.

Jeśli na przykład sekcja zawiera 5 widżetów, a parametr uncollapsibleWidgetsCount ma wartość 2, pierwsze 2 widżety są zawsze wyświetlane, a ostatnie 3 są domyślnie zwinięte. Atrybut uncollapsibleWidgetsCount jest brany pod uwagę tylko wtedy, gdy atrybut collapsible ma wartość true.

id

string

Unikalny identyfikator przypisany do sekcji, który służy do identyfikowania sekcji do zmiany. Identyfikator może mieć maksymalnie 64 znaki i powinien mieć format [a-zA-Z0-9-]+.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

collapseControl

object (CollapseControl)

Opcjonalnie. Zdefiniuj przycisk rozwijania i zwijania sekcji. Ten przycisk jest widoczny tylko wtedy, gdy sekcję można zwijać. Jeśli to pole nie jest skonfigurowane, używany jest przycisk domyślny.

Widżet

Każda karta składa się z widżetów.

Widżet to obiekt złożony, który może reprezentować tekst, obrazy, przyciski i inne typy obiektów.

Zapis JSON
{
  "horizontalAlignment": enum (HorizontalAlignment),
  "id": string,
  "visibility": enum (Visibility),
  "eventActions": [
    {
      object (EventAction)
    }
  ],

  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "decoratedText": {
    object (DecoratedText)
  },
  "buttonList": {
    object (ButtonList)
  },
  "textInput": {
    object (TextInput)
  },
  "selectionInput": {
    object (SelectionInput)
  },
  "dateTimePicker": {
    object (DateTimePicker)
  },
  "divider": {
    object (Divider)
  },
  "grid": {
    object (Grid)
  },
  "columns": {
    object (Columns)
  },
  "carousel": {
    object (Carousel)
  },
  "chipList": {
    object (ChipList)
  }
}
Pola
horizontalAlignment

enum (HorizontalAlignment)

Określa, czy widżety są wyrównane do lewej, do prawej czy do środka kolumny.

id

string

Unikalny identyfikator przypisany do widżetu, który służy do identyfikacji widżetu, który ma zostać zmodyfikowany. Identyfikator może mieć maksymalnie 64 znaki i powinien mieć format [a-zA-Z0-9-]+.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

visibility

enum (Visibility)

Określa, czy widżet jest widoczny czy ukryty. Wartością domyślną jest VISIBLE.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

eventActions[]

object (EventAction)

Określa działania związane ze zdarzeniami, które można wykonać w widżecie.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Widżet może zawierać tylko jeden z tych elementów. Aby wyświetlić więcej elementów, możesz użyć wielu pól widżetów. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
textParagraph

object (TextParagraph)

Wyświetla akapit tekstu. Obsługuje prosty tekst sformatowany w HTML. Więcej informacji o formatowaniu tekstu znajdziesz w artykułach Formatowanie tekstu w aplikacjach Google Chat i Formatowanie tekstu w dodatkach do Google Workspace.

Na przykład ten kod JSON tworzy pogrubiony tekst:

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

object (Image)

Wyświetla obraz.

Na przykład ten kod JSON tworzy obraz z tekstem alternatywnym:

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

object (DecoratedText)

Wyświetla element z tekstem dekoracyjnym.

Na przykład ten kod JSON tworzy widżet tekstu dekorowanego, który wyświetla adres e-mail:

"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

object (ButtonList)

Lista przycisków.

Na przykład ten kod JSON tworzy 2 przyciski. Pierwszy to niebieski przycisk tekstowy, a drugi to przycisk graficzny, który otwiera link:

"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

object (TextInput)

Wyświetla pole tekstowe, w którym użytkownicy mogą pisać.

Na przykład ten kod JSON tworzy pole tekstowe na adres e-mail:

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

Inny przykład: ten kod JSON tworzy pole tekstowe dla języka programowania ze statycznymi sugestiami:

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

object (SelectionInput)

Wyświetla element sterujący, który umożliwia użytkownikom wybieranie elementów. Elementy sterujące wyboru mogą być polami wyboru, przyciskami opcji, przełącznikami lub menu.

Na przykład ten kod JSON tworzy menu, które umożliwia użytkownikom wybór rozmiaru:

"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

object (DateTimePicker)

Wyświetla widżet, który umożliwia użytkownikom wprowadzanie daty, godziny lub daty i godziny.

Na przykład ten kod JSON tworzy selektor daty i godziny, który umożliwia zaplanowanie spotkania:

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

object (Divider)

Wyświetla poziomą linię oddzielającą widżety.

Na przykład ten kod JSON tworzy separator:

"divider": {
}
grid

object (Grid)

Wyświetla siatkę z kolekcją elementów.

Siatka może zawierać dowolną liczbę kolumn i elementów. Liczba wierszy jest określana przez górną granicę liczby elementów podzieloną przez liczbę kolumn. Siatka z 10 elementami i 2 kolumnami ma 5 wierszy. Siatka z 11 elementami i 2 kolumnami ma 6 wierszy.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Na przykład ten kod JSON tworzy siatkę z 2 kolumnami i 1 elementem:

"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

object (Columns)

Wyświetla maksymalnie 2 kolumny.

Aby uwzględnić więcej niż 2 kolumny lub użyć wierszy, użyj widżetu Grid.

Na przykład ten kod JSON tworzy 2 kolumny, z których każda zawiera akapity tekstu:

"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

object (Carousel)

Zawiera kolekcję elementów CarouselCard, z których każdy zawiera zagnieżdżone widżety. Oto przykład reprezentacji JSON karuzeli, która zawiera 2 karty, każda z akapitem tekstu:

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

object (ChipList)

Lista elementów.

Na przykład ten kod JSON tworzy 2 elementy. Pierwszy to element tekstowy, a drugi to element z ikoną, który otwiera link:

"chipList": {
  "chips": [
    {
      "label": "Edit",
      "disabled": true
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}
Koniec pól wykluczających się wzajemnie.

TextParagraph

Akapit tekstu, który obsługuje formatowanie. Przykład dotyczący aplikacji Google Chat znajdziesz w sekcji Dodawanie akapitu sformatowanego tekstu. Więcej informacji o formatowaniu tekstu znajdziesz w artykułach Formatowanie tekstu w aplikacjach Google Chat i Formatowanie tekstu w dodatkach do Google Workspace.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "text": string,
  "maxLines": integer,
  "textSyntax": enum (TextSyntax)
}
Pola
text

string

Tekst wyświetlany w widżecie.

maxLines

integer

Maksymalna liczba wierszy tekstu wyświetlanych w widżecie. Jeśli tekst przekracza określoną maksymalną liczbę wierszy, nadmiarowa treść jest ukrywana za przyciskiem Pokaż więcej. Jeśli tekst jest równy określonej maksymalnej liczbie wierszy lub krótszy, przycisk pokaż więcej nie jest wyświetlany.

Wartość domyślna to 0, co oznacza, że wyświetlany jest cały kontekst. Wartości ujemne są ignorowane.

textSyntax

enum (TextSyntax)

składnia tekstu, Jeśli nie jest ustawiony, tekst jest renderowany jako HTML.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

TextSyntax

Składnia używana do formatowania tekstu.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Wartości w polu enum
TEXT_SYNTAX_UNSPECIFIED Jeśli nie zostanie określony, tekst będzie renderowany jako HTML.
HTML Tekst jest renderowany jako HTML. Jest to wartość domyślna.
MARKDOWN Tekst jest renderowany jako Markdown.

Obraz

Obraz określony przez adres URL, który może mieć działanie onClick. Przykład znajdziesz w sekcji Dodawanie obrazu.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "imageUrl": string,
  "onClick": {
    object (OnClick)
  },
  "altText": string
}
Pola
imageUrl

string

Adres URL HTTPS, pod którym hostowany jest obraz.

Na przykład:

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

object (OnClick)

Gdy użytkownik kliknie obraz, kliknięcie wywoła to działanie.

altText

string

Tekst alternatywny tego obrazu, który jest używany na potrzeby ułatwień dostępu.

DecoratedText

Widżet, który wyświetla tekst z opcjonalnymi elementami, takimi jak etykieta nad lub pod tekstem, ikona przed tekstem, widżet wyboru lub przycisk po tekście. Przykład w aplikacjach Google Chat znajdziesz w sekcji Wyświetlanie tekstu z tekstem dekoracyjnym.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "icon": {
    object (Icon)
  },
  "startIcon": {
    object (Icon)
  },
  "startIconVerticalAlignment": enum (VerticalAlignment),
  "topLabel": string,
  "topLabelText": {
    object (TextParagraph)
  },
  "text": string,
  "contentText": {
    object (TextParagraph)
  },
  "wrapText": boolean,
  "bottomLabel": string,
  "bottomLabelText": {
    object (TextParagraph)
  },
  "onClick": {
    object (OnClick)
  },

  "button": {
    object (Button)
  },
  "switchControl": {
    object (SwitchControl)
  },
  "endIcon": {
    object (Icon)
  }
}
Pola
icon
(deprecated)

object (Icon)

Wycofane na rzecz startIcon.

startIcon

object (Icon)

Ikona wyświetlana przed tekstem.

startIconVerticalAlignment

enum (VerticalAlignment)

Opcjonalnie. Wyrównanie w pionie ikony początkowej. Jeśli nie zostanie ustawiona, ikona będzie wyśrodkowana w pionie.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

topLabel

string

Tekst wyświetlany nad text. Zawsze obcina.

topLabelText

object (TextParagraph)

TextParagraph – odpowiednik: topLabel. Zawsze obcina. Umożliwia bardziej złożone formatowanie niż topLabel.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

text

string

Wymagane. Tekst główny.

Obsługuje proste formatowanie. Więcej informacji o formatowaniu tekstu znajdziesz w artykułach Formatowanie tekstu w aplikacjach Google Chat i Formatowanie tekstu w dodatkach do Google Workspace.

contentText

object (TextParagraph)

TextParagraph – odpowiednik: text. Umożliwia bardziej złożone formatowanie niż text.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

wrapText

boolean

Ustawienie zawijania tekstu. Jeśli wartość to true, tekst jest zawijany i wyświetlany w wielu wierszach. W przeciwnym razie tekst zostanie obcięty.

Dotyczy tylko text, a nie topLabel i bottomLabel.

bottomLabel

string

Tekst wyświetlany pod text. Zawsze zawijaj.

bottomLabelText

object (TextParagraph)

TextParagraph – odpowiednik: bottomLabel. Zawsze zawijaj. Umożliwia bardziej złożone formatowanie niż bottomLabel.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

onClick

object (OnClick)

To działanie jest wywoływane, gdy użytkownicy klikną dowolne miejsce w widżecie DecoratedText (w tym text, topLabel, bottomLabel i ikony), z wyjątkiem kliknięcia osobnego elementu interaktywnego (button lub switchControl).

Przycisk, przełącznik, pole wyboru lub obraz, który pojawia się po prawej stronie tekstu w widżecie decoratedText. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
button

object (Button)

Przycisk, który użytkownik może kliknąć, aby wywołać działanie.

switchControl

object (SwitchControl)

Widżet przełącznika, który użytkownik może kliknąć, aby zmienić jego stan i wywołać działanie.

endIcon

object (Icon)

Ikona wyświetlana po tekście.

Obsługuje ikony wbudowane i niestandardowe.

Koniec pól wykluczających się wzajemnie.

VerticalAlignment

Reprezentuje atrybut wyrównania w pionie.

Wartości w polu enum
VERTICAL_ALIGNMENT_UNSPECIFIED Nieokreślony typ. Nie używać.
TOP Wyrównanie do pozycji górnej.
MIDDLE Wyrównanie do środka.
BOTTOM Wyrównanie do pozycji dolnej.

SwitchControl

Przełącznik lub pole wyboru w widżecie decoratedText.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Ta funkcja jest obsługiwana tylko w widżecie decoratedText.

Zapis JSON
{
  "name": string,
  "value": string,
  "selected": boolean,
  "onChangeAction": {
    object (Action)
  },
  "controlType": enum (ControlType)
}
Pola
name

string

Nazwa, pod którą widżet przełącznika jest identyfikowany w zdarzeniu wejściowym formularza (jako klucz w CommonEventObject.form_inputs).

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

value

string

Wartość zwracana w parametrze CommonEventObject.form_inputs[name].string_inputs, gdy przełącznik jest wybrany (selected to true). Jeśli selected to true, a parametr value nie jest ustawiony, w parametrze stringInputs.value zwracany jest pusty ciąg znaków (""). Gdy selected ma wartość false, ta wartość jest pomijana w stringInputs.value.

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

selected

boolean

Gdy true, przełącznik jest zaznaczony, a jego value jest uwzględniony w CommonEventObject.form_inputs[name].string_inputs.value.

onChangeAction

object (Action)

Działanie, które ma zostać wykonane po zmianie stanu przełącznika, np. funkcja, która ma zostać uruchomiona.

controlType

enum (ControlType)

Jak przełącznik wygląda w interfejsie.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

ControlType

Jak przełącznik wygląda w interfejsie.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
SWITCH Przełącznik.
CHECKBOX Wycofane na rzecz CHECK_BOX.
CHECK_BOX Pole wyboru.

TextInput

Pole, w którym użytkownicy mogą wpisywać tekst. Obsługuje sugestie i działania po zmianie. Obsługuje weryfikację przesłania formularza. Gdy zasada Action.all_widgets_are_required ma wartość true lub ten widżet jest określony w zasadzie Action.required_widgets, działanie przesyłania jest blokowane, chyba że zostanie wpisana wartość. Przykład dotyczący aplikacji Google Chat znajdziesz w sekcji Dodawanie pola, w którym użytkownik może wpisać tekst.

Aplikacje do Google Chat otrzymują i mogą przetwarzać wartość wpisanego tekstu podczas zdarzeń wprowadzania danych w formularzu. Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

Jeśli chcesz zbierać od użytkowników niezdefiniowane lub abstrakcyjne dane, użyj pola tekstowego. Aby zbierać od użytkowników zdefiniowane lub wyliczone dane, użyj widżetu SelectionInput.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "name": string,
  "label": string,
  "hintText": string,
  "value": string,
  "type": enum (Type),
  "onChangeAction": {
    object (Action)
  },
  "initialSuggestions": {
    object (Suggestions)
  },
  "autoCompleteAction": {
    object (Action)
  },
  "validation": {
    object (Validation)
  },
  "placeholderText": string,

  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
}
Pola
name

string

Nazwa, pod którą pole tekstowe jest identyfikowane w zdarzeniu przesyłania danych z formularza.

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

label

string

Tekst, który pojawia się nad polem do wprowadzania danych w interfejsie.

Podaj tekst, który pomoże użytkownikowi wpisać informacje potrzebne aplikacji. Jeśli na przykład pytasz kogoś o imię i nazwisko, ale potrzebujesz tylko nazwiska, wpisz surname zamiast name.

Wymagane, jeśli nie określono hintText. W przeciwnym razie jest opcjonalny.

hintText

string

Tekst, który pojawia się pod polem do wprowadzania danych, aby pomóc użytkownikom, prosząc ich o wpisanie określonej wartości. Ten tekst jest zawsze widoczny.

Wymagane, jeśli nie określono label. W przeciwnym razie jest opcjonalny.

value

string

Wartość wpisana przez użytkownika, zwracana w ramach zdarzenia przesłania formularza.

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

type

enum (Type)

Jak pole do wprowadzania danych wygląda w interfejsie. Na przykład czy pole jest jedno- czy wielowierszowe.

onChangeAction

object (Action)

Co zrobić, gdy nastąpi zmiana w polu do wprowadzania danych. Na przykład użytkownik dodaje tekst do pola lub go usuwa.

Przykłady działań, które można wykonać, to uruchomienie funkcji niestandardowej lub otwarcie okna w Google Chat.

initialSuggestions

object (Suggestions)

Sugerowane wartości, które użytkownicy mogą wpisać. Te wartości pojawiają się, gdy użytkownicy klikną pole do wprowadzania danych. Gdy użytkownicy wpisują tekst, sugerowane wartości są dynamicznie filtrowane, aby pasowały do wpisanego tekstu.

Na przykład pole do wprowadzania danych dla języka programowania może sugerować języki Java, JavaScript, Python i C++. Gdy użytkownicy zaczną wpisywać Jav, lista sugestii zostanie przefiltrowana i będzie zawierać tylko Java i JavaScript.

Sugerowane wartości pomagają użytkownikom wpisywać wartości, które aplikacja może zrozumieć. W przypadku JavaScriptu niektórzy użytkownicy mogą wpisać javascript, a inni java script. Sugerowanie JavaScript może ujednolicić sposób, w jaki użytkownicy wchodzą w interakcję z Twoją aplikacją.

Jeśli ta opcja jest określona, TextInput.type zawsze ma wartość SINGLE_LINE, nawet jeśli jest ustawiona na MULTIPLE_LINE.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

autoCompleteAction

object (Action)

Opcjonalnie. Określ, jakie działanie ma zostać podjęte, gdy pole do wprowadzania danych wyświetla sugestie użytkownikom, którzy wchodzą z nim w interakcję.

Jeśli nie określono inaczej, sugestie są ustawiane przez initialSuggestions i przetwarzane przez klienta.

Jeśli zostanie określone, aplikacja wykona określone działanie, np. uruchomi funkcję niestandardową.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

validation

object (Validation)

Określ sprawdzanie poprawności formatu danych wejściowych wymagane w przypadku tego pola tekstowego.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

placeholderText

string

Tekst, który pojawia się w polu do wprowadzania danych, gdy jest ono puste. Użyj tego tekstu, aby poprosić użytkowników o wpisanie wartości. Na przykład: Enter a number from 0 to 100.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
hostAppDataSource

object (HostAppDataSourceMarkup)

Źródło danych, które jest unikalne dla aplikacji hostowanej Google Workspace, np. e-maile w Gmailu, wydarzenia w Kalendarzu Google lub wiadomości na czacie w Google Chat.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Koniec pól wykluczających się wzajemnie.

Typ

Jak pole do wprowadzania danych wygląda w interfejsie. Może to być na przykład jednowierszowe lub wielowierszowe pole do wprowadzania danych. Jeśli określono initialSuggestions, type zawsze ma wartość SINGLE_LINE, nawet jeśli ustawiono MULTIPLE_LINE.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
SINGLE_LINE Pole do wprowadzania danych ma stałą wysokość jednego wiersza.
MULTIPLE_LINE Pole do wprowadzania danych ma stałą wysokość i składa się z kilku wierszy.

RenderActions

Zestaw instrukcji renderowania, który informuje kartę o konieczności wykonania działania lub informuje aplikację hosta dodatku albo aplikację do obsługi czatu o konieczności wykonania działania związanego z aplikacją.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Pola
action

Action

Działanie

Pola
navigations[]

Navigation

Przesuwa, wyskakuje lub aktualizuje kartę.

Dodatki w Google Chat

Dodaj nową kartę do stosu (przejdź do przodu). W przypadku aplikacji do obsługi czatu jest dostępna tylko na stronie głównej aplikacji.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

navigations: {
  pushCard: CARD
}

Zastąp górną kartę nową kartą. W przypadku aplikacji do obsługi czatu jest dostępna tylko na stronie głównej aplikacji.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

navigations: {
  updateCard: CARD
}

Sugestie

Sugerowane wartości, które użytkownicy mogą wpisać. Te wartości pojawiają się, gdy użytkownicy klikną pole do wprowadzania danych. Gdy użytkownicy wpisują tekst, sugerowane wartości są dynamicznie filtrowane, aby pasowały do wpisanego tekstu.

Na przykład pole do wprowadzania danych tekstowych dla języka programowania może sugerować języki Java, JavaScript, Python i C++. Gdy użytkownicy zaczną wpisywać Jav, lista sugestii zostanie przefiltrowana i będzie zawierać tylko Java i JavaScript.

Sugerowane wartości pomagają użytkownikom wpisywać wartości, które aplikacja może zrozumieć. W przypadku JavaScriptu niektórzy użytkownicy mogą wpisać javascript, a inni java script. Sugerowanie JavaScript może ujednolicić sposób, w jaki użytkownicy wchodzą w interakcję z Twoją aplikacją.

Jeśli ta opcja jest określona, TextInput.type zawsze ma wartość SINGLE_LINE, nawet jeśli jest ustawiona na MULTIPLE_LINE.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "items": [
    {
      object (SuggestionItem)
    }
  ]
}
Pola
items[]

object (SuggestionItem)

Lista sugestii używanych do rekomendacji autouzupełniania w polach do wprowadzania danych.

SuggestionItem

Jedna sugerowana wartość, którą użytkownicy mogą wpisać w polu do wprowadzania danych.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{

  "text": string
}
Pola
Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
text

string

Wartość sugerowanych danych wejściowych w polu do wprowadzania danych. Odpowiada to informacjom, które użytkownicy wpisują samodzielnie.

Koniec pól wykluczających się wzajemnie.

Walidacja

Reprezentuje dane niezbędne do zweryfikowania widżetu, do którego jest dołączony.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "characterLimit": integer,
  "inputType": enum (InputType)
}
Pola
characterLimit

integer

Określ limit znaków w widżetach do wprowadzania tekstu. Pamiętaj, że ta opcja jest używana tylko w przypadku wprowadzania tekstu i jest ignorowana w przypadku innych widżetów.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

inputType

enum (InputType)

Określ typ widżetów wejściowych.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

InputType

Typ widżetu wejściowego.

Wartości w polu enum
INPUT_TYPE_UNSPECIFIED Nieokreślony typ. Nie używać.
TEXT Zwykły tekst, który akceptuje wszystkie znaki.
INTEGER Wartość całkowita.
FLOAT Wartość zmiennoprzecinkowa.
EMAIL Adres e-mail.
EMOJI_PICKER Emotikon wybrany z selektora emotikonów udostępnianego przez system.

HostAppDataSourceMarkup

źródło danych z aplikacji Google Workspace; Źródło danych wypełnia dostępne elementy widżetu.

Zapis JSON
{

  "chatDataSource": {
    object (ChatClientDataSourceMarkup)
  },
  "workflowDataSource": {
    object (WorkflowDataSourceMarkup)
  }
}
Pola
Aplikacja Google Workspace, która wypełnia dostępne elementy widżetu. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
chatDataSource

object (ChatClientDataSourceMarkup)

Źródło danych z Google Chat.

workflowDataSource

object (WorkflowDataSourceMarkup)

Źródło danych z Google Workflow.

Koniec pól wykluczających się wzajemnie.

ChatClientDataSourceMarkup

W przypadku widżetu SelectionInput, który korzysta z menu wielokrotnego wyboru, źródło danych z Google Chat. Źródło danych wypełnia elementy wyboru w menu wielokrotnego wyboru. Użytkownik może na przykład wybrać pokoje Google Chat, do których należy.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Zapis JSON
{

  "spaceDataSource": {
    object (SpaceDataSource)
  }
}
Pola
Źródło danych Google Chat. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
spaceDataSource

object (SpaceDataSource)

pokoje Google Chat, do których należy użytkownik;

Koniec pól wykluczających się wzajemnie.

SpaceDataSource

Źródło danych, które wypełnia pokoje Google Chat jako elementy do wyboru w menu wielokrotnego wyboru. Wypełnia tylko pokoje, do których należy użytkownik.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Zapis JSON
{
  "defaultToCurrentSpace": boolean
}
Pola
defaultToCurrentSpace

boolean

Jeśli ustawisz wartość true, menu wielokrotnego wyboru domyślnie wybierze bieżący pokój Google Chat jako element.

WorkflowDataSourceMarkup

* Obsługiwane tylko przez przepływ pracy Google Workspace, ale nie przez aplikacje do Google Chat ani dodatki do Google Workspace.

W widżecie TextInput lub SelectionInput typu MULTI_SELECT albo w widżecie DateTimePicker podaj źródło danych z Google.

Zapis JSON
{
  "includeVariables": boolean,
  "type": enum (Type)
}
Pola
includeVariables

boolean

Określa, czy w źródle danych mają być uwzględniane zmienne z poprzedniego kroku.

type

enum (Type)

Typ źródła danych.

Typ

Typ wyliczeniowy reprezentujący typ źródła danych przepływu pracy.

Wartości w polu enum
UNKNOWN Wartość domyślna. Nie używaj.
USER użytkowników Google Workspace; Użytkownik może wyświetlać i wybierać tylko użytkowników z organizacji Google Workspace.
SPACE pokoje Google Chat, do których należy użytkownik;
USER_WITH_FREE_FORM Użytkownicy mogą wyświetlać i wybierać istniejących członków z organizacji Google Workspace lub ręcznie wpisać adres e-mail albo prawidłową domenę.

SelectionInput

Widżet, który tworzy co najmniej 1 element interfejsu, który użytkownicy mogą wybrać. Obsługuje sprawdzanie poprawności przesyłania formularzy tylko w przypadku menu dropdown i multiselect. Gdy parametr Action.all_widgets_are_required ma wartość true lub ten widżet jest określony w Action.required_widgets, działanie przesyłania jest blokowane, chyba że zostanie wybrana wartość. Może to być na przykład menu lub pola wyboru. Możesz użyć tego widżetu do zbierania danych, które można przewidzieć lub wyliczyć. Przykład dotyczący aplikacji Google Chat znajdziesz w artykule Dodawanie elementów interfejsu, które można wybrać.

Aplikacje do Google Chat mogą przetwarzać wartości elementów, które użytkownicy wybierają lub wprowadzają. Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

Aby zbierać od użytkowników niezdefiniowane lub abstrakcyjne dane, użyj widżetu TextInput.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "name": string,
  "label": string,
  "type": enum (SelectionType),
  "items": [
    {
      object (SelectionItem)
    }
  ],
  "onChangeAction": {
    object (Action)
  },
  "multiSelectMinQueryLength": integer,
  "dataSourceConfigs": [
    {
      object (DataSourceConfig)
    }
  ],
  "multiSelectMaxSelectedItems": integer,
  "hintText": string,

  "externalDataSource": {
    object (Action)
  },
  "platformDataSource": {
    object (PlatformDataSource)
  }
}
Pola
name

string

Wymagane. Nazwa identyfikująca pole wyboru w zdarzeniu przesyłania danych z formularza.

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

label

string

Tekst, który pojawia się nad polem do wprowadzania danych w interfejsie.

Podaj tekst, który pomoże użytkownikowi wpisać informacje potrzebne aplikacji. Jeśli na przykład użytkownicy wybierają pilność zgłoszenia z menu, etykieta może brzmieć „Pilność” lub „Wybierz pilność”.

type

enum (SelectionType)

Typ elementów wyświetlanych użytkownikom w widżecie SelectionInput. Typy wyboru obsługują różne rodzaje interakcji. Użytkownicy mogą na przykład zaznaczyć kilka pól wyboru, ale mogą wybrać tylko jedną wartość z menu.

items[]

object (SelectionItem)

Tablica elementów do wyboru. Na przykład tablica przycisków opcji lub pól wyboru. Obsługuje maksymalnie 100 elementów.

onChangeAction

object (Action)

Jeśli jest określony, formularz jest przesyłany, gdy zmienia się wybór. Jeśli nie określisz tego parametru, musisz podać osobny przycisk, który przesyła formularz.

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

multiSelectMinQueryLength

integer

W przypadku menu wielokrotnego wyboru liczba znaków, które użytkownik musi wpisać, zanim menu zwróci sugerowane elementy do wyboru.

Jeśli nie zostanie ustawione, menu wielokrotnego wyboru będzie używać tych wartości domyślnych:

  • Jeśli menu używa statycznej tablicy elementów (SelectionInput), domyślnie jest to 0 znaków i natychmiast wypełnia elementy z tablicy.
  • Jeśli menu korzysta z dynamicznego źródła danych (multi_select_data_source), domyślnie wymagane są 3 znaki, zanim zostanie wysłane zapytanie do źródła danych w celu zwrócenia sugerowanych elementów.
dataSourceConfigs[]

object (DataSourceConfig)

Opcjonalnie. Konfiguracje źródła danych dla elementu sterującego wyborem. To pole zapewnia bardziej szczegółową kontrolę nad źródłem danych.

Jeśli podasz tę wartość, pola multiSelectMaxSelectedItems, multiSelectMinQueryLength, externalDataSource i platformDataSource zostaną zignorowane.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio.

Dostępne dla Dropdown widget w aplikacjach Google Chat. W przypadku widżetu Dropdown w aplikacjach Google Chat obsługiwany jest tylko jeden element DataSourceConfig. Jeśli ustawiono kilka wartości DataSourceConfig, używana jest tylko pierwsza z nich.

multiSelectMaxSelectedItems

integer

W przypadku menu wielokrotnego wyboru maksymalna liczba elementów, które użytkownik może wybrać. Minimalna wartość to 1 element. Jeśli nie określono inaczej, domyślnie są to 3 elementy.

hintText

string

Opcjonalnie. Tekst, który pojawia się pod polem do wprowadzania danych, aby pomóc użytkownikom, prosząc ich o wpisanie określonej wartości. Ten tekst jest zawsze widoczny.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

W przypadku menu wielokrotnego wyboru źródło danych, które dynamicznie wypełnia elementy wyboru.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:

externalDataSource

object (Action)

zewnętrzne źródło danych, takie jak relacyjna baza danych;

platformDataSource

object (PlatformDataSource)

źródło danych z Google Workspace,

Koniec pól wykluczających się wzajemnie.

SelectionType

Format elementów, które użytkownicy mogą wybrać. Różne opcje obsługują różne typy interakcji. Użytkownicy mogą na przykład zaznaczyć kilka pól wyboru, ale mogą wybrać tylko 1 element z menu.

Każde pole wyboru obsługuje jeden typ wyboru. Na przykład nie można łączyć pól wyboru i przełączników.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
CHECK_BOX Zestaw pól wyboru. Użytkownicy mogą zaznaczyć jedno lub więcej pól wyboru.
RADIO_BUTTON Zestaw opcji. Użytkownicy mogą wybrać 1 przycisk opcji.
SWITCH Zestaw przełączników. Użytkownicy mogą włączyć co najmniej 1 przełącznik.
DROPDOWN

Menu. Użytkownicy mogą wybrać 1 element z menu.

W przypadku aplikacji Google Chat możesz wypełniać elementy za pomocą dynamicznego źródła danych i automatycznie sugerować elementy, gdy użytkownicy wpisują tekst w menu. Użytkownicy mogą na przykład zacząć wpisywać nazwę pokoju Google Chat, a widżet automatycznie zasugeruje pokój. Aby dynamicznie wypełniać elementy menu, użyj jednego z tych typów źródeł danych:

  • Dane Google Workspace: elementy są wypełniane danymi z Google Workspace, takimi jak użytkownicy Google Workspace czy pokoje Google Chat.
  • Dane zewnętrzne: elementy są wypełniane danymi z zewnętrznego źródła danych spoza Google Workspace.

Przykłady implementacji menu w aplikacjach do Google Chat znajdziesz w artykułach Dodawanie menu i Dynamiczne wypełnianie menu.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

MULTI_SELECT

Menu z polem tekstowym. Użytkownicy mogą wpisać i wybrać co najmniej 1 element. W przypadku dodatków do Google Workspace musisz wypełnić elementy za pomocą tablicy statycznej obiektów SelectionItem.

W przypadku aplikacji do Google Chat możesz też wypełniać elementy za pomocą dynamicznego źródła danych i automatycznie sugerować elementy, gdy użytkownicy wpisują tekst w menu. Użytkownicy mogą na przykład zacząć wpisywać nazwę pokoju Google Chat, a widżet automatycznie zasugeruje pokój. Aby dynamicznie wypełniać elementy menu wielokrotnego wyboru, użyj jednego z tych typów źródeł danych:

  • Dane Google Workspace: elementy są wypełniane danymi z Google Workspace, takimi jak użytkownicy Google Workspace czy pokoje Google Chat.
  • Dane zewnętrzne: elementy są wypełniane danymi z zewnętrznego źródła danych spoza Google Workspace.

Przykłady implementacji menu wielokrotnego wyboru w aplikacjach do Google Chat znajdziesz w artykule Dodawanie menu wielokrotnego wyboru.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

PlatformDataSource

W przypadku widżetu SelectionInput, który korzysta z menu wielokrotnego wyboru, źródło danych z Google Workspace. Służy do wypełniania elementów w menu wielokrotnego wyboru.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Zapis JSON
{

  "commonDataSource": enum (CommonDataSource),
  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
}
Pola
Źródło danych. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
commonDataSource

enum (CommonDataSource)

Źródło danych udostępniane przez wszystkie aplikacje Google Workspace, takie jak użytkownicy w organizacji Google Workspace.

hostAppDataSource

object (HostAppDataSourceMarkup)

Źródło danych, które jest unikalne dla aplikacji hostowanej Google Workspace, np. pokoje w Google Chat.

To pole obsługuje biblioteki klienta interfejsów API Google, ale nie jest dostępne w bibliotekach klienta Cloud. Więcej informacji znajdziesz w sekcji Instalowanie bibliotek klienta.

Koniec pól wykluczających się wzajemnie.

CommonDataSource

źródło danych udostępniane przez wszystkie aplikacje Google Workspace;

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Wartości w polu enum
UNKNOWN Wartość domyślna. Nie używaj.
USER użytkowników Google Workspace; Użytkownik może wyświetlać i wybierać tylko użytkowników z organizacji Google Workspace.

DataSourceConfig

Obiekt konfiguracji, który pomaga skonfigurować źródła danych widżetu.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace, które rozszerzają Google Workspace Studio.

Zapis JSON
{

  "remoteDataSource": {
    object (Action)
  },
  "platformDataSource": {
    object (PlatformDataSource)
  }
  "minCharactersTrigger": integer
}
Pola
Źródło danych. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
remoteDataSource

object (Action)

Dane pochodzą od zdalnego dostawcy danych.

platformDataSource

object (PlatformDataSource)

Dane pochodzą z aplikacji Google Workspace.

Koniec pól wykluczających się wzajemnie.
minCharactersTrigger

integer

Minimalna liczba znaków, które użytkownik musi wpisać, zanim ten dostawca danych zostanie aktywowany (czyli zanim zacznie zwracać wyniki).

DateTimePicker

Umożliwia użytkownikom wpisywanie daty, godziny lub daty i godziny. Obsługuje weryfikację przesłania formularza. Gdy parametr Action.all_widgets_are_required ma wartość true lub ten widżet jest określony w Action.required_widgets, działanie przesyłania jest blokowane, chyba że zostanie wybrana wartość. Przykład dotyczący aplikacji do Google Chat znajdziesz w artykule Umożliwianie użytkownikowi wybrania daty i godziny.

Użytkownicy mogą wpisywać tekst lub wybierać daty i godziny za pomocą selektora. Jeśli użytkownicy wpiszą nieprawidłową datę lub godzinę, selektor wyświetli błąd z prośbą o prawidłowe wpisanie informacji.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "name": string,
  "label": string,
  "type": enum (DateTimePickerType),
  "valueMsEpoch": string,
  "timezoneOffsetDate": integer,
  "onChangeAction": {
    object (Action)
  },

  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
}
Pola
name

string

Nazwa, pod którą DateTimePicker jest identyfikowany w zdarzeniu wejściowym formularza.

Szczegółowe informacje o pracy z danymi wejściowymi formularza znajdziesz w artykule Odbieranie danych z formularza.

label

string

Tekst, który prosi użytkowników o wpisanie daty, godziny lub daty i godziny. Jeśli na przykład użytkownicy umawiają się na spotkanie, użyj etykiety takiej jak Appointment date lub Appointment date and time.

type

enum (DateTimePickerType)

Określa, czy widżet obsługuje wprowadzanie daty, godziny lub daty i godziny.

valueMsEpoch

string (int64 format)

Wartość domyślna wyświetlana w widżecie, w milisekundach od epoki uniksowej.

Określ wartość na podstawie typu selektora (DateTimePickerType):

  • DATE_AND_TIME: data i godzina w kalendarzu w formacie UTC. Na przykład 1 stycznia 2023 r. o godzinie 12:00 czasu UTC zapisz jako 1672574400000.
  • DATE_ONLY: data kalendarzowa o godzinie 00:00:00 czasu UTC. Na przykład, aby zapisać datę 1 stycznia 2023 r., użyj 1672531200000.
  • TIME_ONLY: czas w strefie czasowej UTC. Na przykład, aby zapisać godzinę 12:00, użyj 43200000 (lub 12 * 60 * 60 * 1000).
timezoneOffsetDate

integer

Liczba reprezentująca przesunięcie strefy czasowej względem czasu UTC w minutach. Jeśli jest ustawiona, valueMsEpoch jest wyświetlana w określonej strefie czasowej. Jeśli nie jest ustawiona, domyślnie używane są ustawienia strefy czasowej użytkownika.

Uwaga: to pole jest podawane w minutach, podczas gdy ładunki zdarzeń interakcji użytkownika zwykle podają przesunięcia strefy czasowej w milisekundach (aby je przekonwertować, podziel przez 60000).

onChangeAction

object (Action)

Uruchamiane, gdy użytkownik kliknie Zapisz lub Wyczyść w interfejsie DateTimePicker.

Źródło danych określone do reprezentowania daty i godziny. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
hostAppDataSource

object (HostAppDataSourceMarkup)

Źródło danych, które jest unikalne dla aplikacji hostowanej Google Workspace, np. e-maile w Gmailu, wydarzenia w Kalendarzu Google lub wiadomości na czacie w Google Chat.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Koniec pól wykluczających się wzajemnie.

DateTimePickerType

Format daty i godziny w widżecie DateTimePicker. Określa, czy użytkownicy mogą wpisać datę, godzinę czy zarówno datę, jak i godzinę.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
DATE_AND_TIME Użytkownicy wpisują datę i godzinę.
DATE_ONLY Użytkownicy wpisują datę.
TIME_ONLY Użytkownicy wpisują godzinę.

Separator

Ten typ nie ma pól.

Wyświetla separator między widżetami w postaci poziomej linii. Przykład w aplikacjach Google Chat znajdziesz w sekcji Dodawanie poziomego separatora między widżetami.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Na przykład ten kod JSON tworzy separator:

"divider": {}

Siatka

Wyświetla siatkę z kolekcją elementów. Elementy mogą zawierać tylko tekst lub obrazy. Aby utworzyć kolumny elastyczne lub dodać coś więcej niż tekst lub obrazy, użyj Columns. Przykład dotyczący aplikacji Google Chat znajdziesz w artykule Wyświetlanie siatki z kolekcją elementów.

Siatka może zawierać dowolną liczbę kolumn i elementów. Liczba wierszy jest określana przez liczbę elementów podzieloną przez liczbę kolumn. Siatka z 10 elementami i 2 kolumnami ma 5 wierszy. Siatka z 11 elementami i 2 kolumnami ma 6 wierszy.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Na przykład ten kod JSON tworzy siatkę z 2 kolumnami i 1 elementem:

"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"
    }
  }
}
Zapis JSON
{
  "title": string,
  "items": [
    {
      object (GridItem)
    }
  ],
  "borderStyle": {
    object (BorderStyle)
  },
  "columnCount": integer,
  "onClick": {
    object (OnClick)
  }
}
Pola
title

string

Tekst wyświetlany w nagłówku siatki.

items[]

object (GridItem)

Elementy do wyświetlenia w siatce.

borderStyle

object (BorderStyle)

Styl obramowania, który ma być stosowany do każdego elementu siatki.

columnCount

integer

Liczba kolumn do wyświetlenia w siatce. Jeśli to pole nie jest określone, używana jest wartość domyślna, która różni się w zależności od tego, gdzie wyświetlana jest siatka (okno dialogowe czy towarzysząca).

onClick

object (OnClick)

To wywołanie zwrotne jest używane przez każdy element siatki, ale z identyfikatorem elementu dodanym do parametrów wywołania zwrotnego (pod kluczem "grid_item_identifier").

GridItem

Reprezentuje element w układzie siatki. Elementy mogą zawierać tekst, obraz lub oba te elementy.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "id": string,
  "image": {
    object (ImageComponent)
  },
  "title": string,
  "subtitle": string,
  "layout": enum (GridItemLayout)
}
Pola
id

string

Określony przez użytkownika identyfikator tego elementu siatki. Ten identyfikator jest zwracany w parametrach wywołania zwrotnego onClick siatki nadrzędnej.

image

object (ImageComponent)

Obraz wyświetlany w elemencie siatki.

title

string

Tytuł elementu siatki.

subtitle

string

Podtytuł elementu siatki.

layout

enum (GridItemLayout)

Układ, który ma być używany w przypadku elementu siatki.

ImageComponent

Reprezentuje obraz.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "imageUri": string,
  "altText": string,
  "cropStyle": {
    object (ImageCropStyle)
  },
  "borderStyle": {
    object (BorderStyle)
  }
}
Pola
imageUri

string

Adres URL obrazu.

altText

string

Etykieta ułatwień dostępu obrazu.

cropStyle

object (ImageCropStyle)

Styl przycięcia, który zostanie zastosowany do obrazu.

borderStyle

object (BorderStyle)

Styl obramowania, który ma zostać zastosowany do obrazu.

ImageCropStyle

Reprezentuje styl przycinania zastosowany do obrazu.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Oto przykład, jak zastosować format obrazu 16:9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}
Zapis JSON
{
  "type": enum (ImageCropType),
  "aspectRatio": number
}
Pola
type

enum (ImageCropType)

Typ uprawy.

aspectRatio

number

Format obrazu, który ma być używany, jeśli typ przycięcia to RECTANGLE_CUSTOM.

Oto przykład, jak zastosować format obrazu 16:9:

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

ImageCropType

Reprezentuje styl przycinania zastosowany do obrazu.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
IMAGE_CROP_TYPE_UNSPECIFIED Nie używaj. Nie określono.
SQUARE Wartość domyślna. Przycinanie do kwadratu.
CIRCLE Stosuje przycięcie do koła.
RECTANGLE_CUSTOM Stosuje prostokątne przycięcie z niestandardowym formatem obrazu. Ustaw niestandardowy format obrazu za pomocą aspectRatio.
RECTANGLE_4_3 Stosuje prostokątne przycięcie o formacie obrazu 4:3.

BorderStyle

Opcje stylu obramowania karty lub widżetu, w tym typ i kolor obramowania.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "type": enum (BorderType),
  "strokeColor": {
    object (Color)
  },
  "cornerRadius": integer
}
Pola
type

enum (BorderType)

Typ obramowania.

strokeColor

object (Color)

Kolory, których należy użyć, gdy typ to BORDER_TYPE_STROKE.

Aby ustawić kolor obrysu, określ wartość w polach red, green i blue. Wartość musi być liczbą zmiennoprzecinkową z zakresu od 0 do 1 opartą na wartości koloru RGB, gdzie 0 (0/255) oznacza brak koloru, a 1 (255/255) – maksymalną intensywność koloru.

Na przykład ten kod ustawia kolor czerwony o maksymalnej intensywności:

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

Pole alpha jest niedostępne w przypadku koloru obrysu. Jeśli to pole jest określone, jest ignorowane.

cornerRadius

integer

Promień narożnika obramowania.

BorderType

Reprezentuje typy obramowania stosowane do widżetów.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
BORDER_TYPE_UNSPECIFIED Nie używaj. Nie określono.
NO_BORDER Brak obramowania.
STROKE Wartość domyślna. Kontur.

GridItemLayout

Reprezentuje różne opcje układu dostępne dla elementu siatki.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
GRID_ITEM_LAYOUT_UNSPECIFIED Nie używaj. Nie określono.
TEXT_BELOW Tytuł i podtytuł są wyświetlane pod obrazem elementu siatki.
TEXT_ABOVE Tytuł i podtytuł są wyświetlane nad obrazem elementu siatki.

Kolumny

Widżet Columns wyświetla maksymalnie 2 kolumny na karcie lub w oknie. Do każdej kolumny możesz dodawać widżety. Będą się one wyświetlać w określonej kolejności. Przykład dotyczący aplikacji Google Chat znajdziesz w artykule Wyświetlanie kart i okien dialogowych w kolumnach.

Wysokość każdej kolumny jest określana przez wyższą kolumnę. Jeśli na przykład pierwsza kolumna jest wyższa niż druga, obie kolumny będą miały wysokość pierwszej kolumny. Każda kolumna może zawierać inną liczbę widżetów, więc nie można definiować wierszy ani wyrównywać widżetów między kolumnami.

Kolumny są wyświetlane obok siebie. Szerokość każdej kolumny możesz dostosować za pomocą pola HorizontalSizeStyle. Jeśli ekran użytkownika jest zbyt wąski, druga kolumna zostanie zawinięta pod pierwszą:

  • W internecie druga kolumna jest zawijana, jeśli szerokość ekranu jest mniejsza lub równa 480 pikseli.
  • Na urządzeniach z iOS druga kolumna jest zawijana, jeśli szerokość ekranu wynosi maksymalnie 300 pt.
  • Na urządzeniach z Androidem druga kolumna jest zawijana, jeśli szerokość ekranu jest mniejsza lub równa 320 dp.

Aby uwzględnić więcej niż 2 kolumny lub użyć wierszy, użyj widżetu Grid.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace. Interfejsy dodatków, które obsługują kolumny:

  • Okno wyświetlane, gdy użytkownicy otwierają dodatek z wersji roboczej e-maila.
  • Okno wyświetlane, gdy użytkownicy otwierają dodatek z menu Dodaj załącznik w wydarzeniu w Kalendarzu Google.
Zapis JSON
{
  "columnItems": [
    {
      object (Column)
    }
  ]
}
Pola
columnItems[]

object (Column)

Tablica kolumn. Na karcie lub w oknie możesz umieścić maksymalnie 2 kolumny.

Kolumna

Kolumna.

Dodatki do Google Workspace i aplikacje do Google Chat

Zapis JSON
{
  "horizontalSizeStyle": enum (HorizontalSizeStyle),
  "horizontalAlignment": enum (HorizontalAlignment),
  "verticalAlignment": enum (VerticalAlignment),
  "widgets": [
    {
      object (Widgets)
    }
  ]
}
Pola
horizontalSizeStyle

enum (HorizontalSizeStyle)

Określa, jak kolumna wypełnia szerokość karty.

horizontalAlignment

enum (HorizontalAlignment)

Określa, czy widżety są wyrównane do lewej, do prawej czy do środka kolumny.

verticalAlignment

enum (VerticalAlignment)

Określa, czy widżety są wyrównane do góry, do dołu czy do środka kolumny.

widgets[]

object (Widgets)

Tablica widżetów zawartych w kolumnie. Widżety są wyświetlane w kolejności, w jakiej zostały określone.

HorizontalSizeStyle

Określa, jak kolumna wypełnia szerokość karty. Szerokość każdej kolumny zależy od HorizontalSizeStyle i szerokości widżetów w kolumnie.

Dodatki do Google Workspace i aplikacje do Google Chat

Wartości w polu enum
HORIZONTAL_SIZE_STYLE_UNSPECIFIED Nie używaj. Nie określono.
FILL_AVAILABLE_SPACE Wartość domyślna. Kolumna wypełnia dostępne miejsce, do 70% szerokości karty. Jeśli obie kolumny mają ustawioną wartość FILL_AVAILABLE_SPACE, każda z nich zajmuje 50% miejsca.
FILL_MINIMUM_SPACE Kolumna zajmuje jak najmniej miejsca i nie więcej niż 30% szerokości karty.

HorizontalAlignment

Określa, czy widżety są wyrównane do lewej, do prawej czy do środka kolumny.

 Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Wartości w polu enum
HORIZONTAL_ALIGNMENT_UNSPECIFIED Nie używaj. Nie określono.
START Wartość domyślna. Wyrównuje widżety do pozycji początkowej kolumny. W przypadku układów od lewej do prawej wyrównuje do lewej. W przypadku układów od prawej do lewej wyrównuje do prawej.
CENTER Wyrównuje widżety do środka kolumny.
END Wyrównuje widżety do pozycji końcowej kolumny. W przypadku układów od lewej do prawej wyrównuje widżety do prawej. W przypadku układów od prawej do lewej wyrównuje widżety do lewej.

VerticalAlignment

Określa, czy widżety są wyrównane do góry, do dołu czy do środka kolumny.

Dodatki do Google Workspace i aplikacje do Google Chat

Wartości w polu enum
VERTICAL_ALIGNMENT_UNSPECIFIED Nie używaj. Nie określono.
CENTER Wartość domyślna. Wyrównuje widżety do środka kolumny.
TOP Wyrównuje widżety do góry kolumny.
BOTTOM Wyrównuje widżety do dołu kolumny.

Widżety

Obsługiwane widżety, które możesz umieścić w kolumnie.

Dodatki do Google Workspace i aplikacje do Google Chat

Zapis JSON
{

  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "decoratedText": {
    object (DecoratedText)
  },
  "buttonList": {
    object (ButtonList)
  },
  "textInput": {
    object (TextInput)
  },
  "selectionInput": {
    object (SelectionInput)
  },
  "dateTimePicker": {
    object (DateTimePicker)
  },
  "chipList": {
    object (ChipList)
  }
}
Pola
Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
textParagraph

object (TextParagraph)

Widżet TextParagraph.

image

object (Image)

Widżet Image.

decoratedText

object (DecoratedText)

Widżet DecoratedText.

buttonList

object (ButtonList)

Widżet ButtonList.

textInput

object (TextInput)

Widżet TextInput.

selectionInput

object (SelectionInput)

Widżet SelectionInput.

dateTimePicker

object (DateTimePicker)

Widżet DateTimePicker.

chipList

object (ChipList)

Widżet ChipList.

Koniec pól wykluczających się wzajemnie.

ChipList

Lista elementów ułożonych poziomo, które można przewijać w poziomie lub zawijać do następnego wiersza.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "layout": enum (Layout),
  "chips": [
    {
      object (Chip)
    }
  ]
}
Pola
layout

enum (Layout)

Określono układ listy elementów.

chips[]

object (Chip)

Tablica elementów.

Układ

Układ listy elementów.

Wartości w polu enum
LAYOUT_UNSPECIFIED Nie używaj. Nie określono.
WRAPPED Wartość domyślna. Jeśli nie ma wystarczającej ilości miejsca w poziomie, lista elementów przechodzi do następnego wiersza.
HORIZONTAL_SCROLLABLE Jeśli elementy nie mieszczą się w dostępnym miejscu, można je przewijać w poziomie.

Chip

Element z tekstem, ikoną lub tekstem i ikoną, który użytkownicy mogą kliknąć.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "icon": {
    object (Icon)
  },
  "label": string,
  "onClick": {
    object (OnClick)
  },
  "enabled": boolean,
  "disabled": boolean,
  "altText": string
}
Pola
icon

object (Icon)

Obraz ikony. Jeśli ustawione są zarówno icon, jak i label, ikona pojawia się przed etykietą.

label

string

Tekst wyświetlany wewnątrz elementu.

onClick

object (OnClick)

Opcjonalnie. Działanie, które ma zostać wykonane, gdy użytkownik kliknie element, np. otwarcie hiperlinku lub uruchomienie funkcji niestandardowej.

enabled
(deprecated)

boolean

Wycofana: użyj zasady disabled.

Określa, czy element jest aktywny i reaguje na działania użytkownika.

disabled

boolean

Określa, czy element jest w stanie nieaktywnym i ignoruje działania użytkownika. Domyślna wartość to false.

altText

string

Tekst alternatywny używany na potrzeby ułatwień dostępu.

Ustaw tekst opisowy, który informuje użytkowników, co robi element. Jeśli na przykład element otwiera hiperlink, napisz: „Otwiera nową kartę przeglądarki i przechodzi do dokumentacji dla deweloperów Google Chat na stronie https://developers.google.com/workspace/chat".

CarouselCard

Karta, którą można wyświetlić jako element karuzeli.  Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Zapis JSON
{
  "widgets": [
    {
      object (NestedWidget)
    }
  ],
  "footerWidgets": [
    {
      object (NestedWidget)
    }
  ]
}
Pola
widgets[]

object (NestedWidget)

Lista widżetów wyświetlanych na karcie karuzeli. Widżety są wyświetlane w kolejności, w jakiej zostały określone.

footerWidgets[]

object (NestedWidget)

Lista widżetów wyświetlana u dołu karty karuzeli. Widżety są wyświetlane w kolejności, w jakiej zostały określone.

NestedWidget

Lista widżetów, które mogą być wyświetlane w układzie zawierającym, np. CarouselCard.  Dostępne w przypadku aplikacji do Google Chat i niedostępne w przypadku dodatków do Google Workspace.

Zapis JSON
{

  "textParagraph": {
    object (TextParagraph)
  },
  "buttonList": {
    object (ButtonList)
  },
  "image": {
    object (Image)
  }
}
Pola
Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
textParagraph

object (TextParagraph)

Widżet akapitu tekstu.

buttonList

object (ButtonList)

Widżet listy przycisków.

image

object (Image)

Widżet obrazu.

Koniec pól wykluczających się wzajemnie.

Widoczność

Określa, czy element interfejsu jest widoczny czy ukryty.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Wartości w polu enum
VISIBILITY_UNSPECIFIED Nieokreślona widoczność. Nie używać.
VISIBLE Element interfejsu jest widoczny.
HIDDEN Element interfejsu jest ukryty.

EventAction

Reprezentuje działanie, które można wykonać na elemencie interfejsu.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{
  "actionRuleId": string,
  "postEventTriggers": [
    {
      object (Trigger)
    }
  ],

  "commonWidgetAction": {
    object (CommonWidgetAction)
  }
}
Pola
actionRuleId

string

Unikalny identyfikator reguły działania.

postEventTriggers[]

object (Trigger)

Lista reguł, które zostaną wywołane po wykonaniu EventAction.

Działanie do wykonania. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
commonWidgetAction

object (CommonWidgetAction)

Typowe działanie widżetu.

Koniec pól wykluczających się wzajemnie.

Aktywator

Reprezentuje aktywator.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{
  "actionRuleId": string
}
Pola
actionRuleId

string

Unikalny identyfikator reguły działania.

CommonWidgetAction

Reprezentuje działanie, które nie jest specyficzne dla widżetu.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{

  "updateVisibilityAction": {
    object (UpdateVisibilityAction)
  }
}
Pola
Działanie do wykonania. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
updateVisibilityAction

object (UpdateVisibilityAction)

Działanie polegające na aktualizacji widoczności widżetu.

Koniec pól wykluczających się wzajemnie.

UpdateVisibilityAction

Reprezentuje działanie, które aktualizuje widoczność widżetu.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{
  "visibility": enum (Visibility)
}
Pola
visibility

enum (Visibility)

Nowa widoczność.

CollapseControl

reprezentować element sterujący rozwijaniem i zwijaniem;

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "horizontalAlignment": enum (HorizontalAlignment),
  "expandButton": {
    object (Button)
  },
  "collapseButton": {
    object (Button)
  }
}
Pola
horizontalAlignment

enum (HorizontalAlignment)

Wyrównanie w poziomie przycisku rozwijania i zwijania.

expandButton

object (Button)

Opcjonalnie. Zdefiniuj przycisk konfigurowalny, aby rozwinąć sekcję. Musisz ustawić zarówno pole expandButton, jak i collapseButton. Jeśli ustawisz tylko jedno pole, nie będzie ono obowiązywać. Jeśli to pole nie jest skonfigurowane, używany jest przycisk domyślny.

collapseButton

object (Button)

Opcjonalnie. Zdefiniuj przycisk konfigurowalny, aby zwinąć sekcję. Musisz ustawić zarówno pole expandButton, jak i collapseButton. Tylko jeden zestaw pól nie będzie obowiązywać. Jeśli to pole nie jest skonfigurowane, używany jest przycisk domyślny.

DividerStyle

Styl separatora karty. Obecnie używane tylko do dzielenia sekcji kart.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Wartości w polu enum
DIVIDER_STYLE_UNSPECIFIED Nie używaj. Nie określono.
SOLID_DIVIDER Opcja domyślna. Renderuj jednolitą linię podziału.
NO_DIVIDER Jeśli jest ustawiona, nie jest renderowany żaden separator. Ten styl całkowicie usuwa separator z układu. Wynik jest taki sam jak w przypadku niedodania separatora.

CardAction

Działanie karty to działanie powiązane z kartą. Na przykład karta faktury może zawierać takie działania jak usunięcie faktury, wysłanie jej e-mailem lub otwarcie w przeglądarce.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

Zapis JSON
{
  "actionLabel": string,
  "onClick": {
    object (OnClick)
  }
}
Pola
actionLabel

string

Etykieta wyświetlana jako element menu czynności.

onClick

object (OnClick)

Działanie onClick dla tego działania.

CardFixedFooter

Stała stopka, która pojawia się u dołu karty.

Ustawienie fixedFooter bez określenia primaryButton lub secondaryButton powoduje błąd.

W przypadku aplikacji do Google Chat możesz używać stałych stopek w oknach, ale nie w wiadomościach na kartach. Przykład w aplikacjach Google Chat znajdziesz w sekcji Dodawanie stałej stopki.

Dostępne w przypadku aplikacji do Google Chat i dodatków do Google Workspace.

Zapis JSON
{
  "primaryButton": {
    object (Button)
  },
  "secondaryButton": {
    object (Button)
  }
}
Pola
primaryButton

object (Button)

Przycisk główny stałej stopki. Przycisk musi być przyciskiem tekstowym z ustawionym tekstem i kolorem.

secondaryButton

object (Button)

Przycisk dodatkowy stałej stopki. Przycisk musi być przyciskiem tekstowym z ustawionym tekstem i kolorem. Jeśli ustawiona jest wartość secondaryButton, musisz też ustawić wartość primaryButton.

DisplayStyle

W dodatkach do Google Workspace określa sposób wyświetlania karty.

 – dostępne w przypadku dodatków do Google Workspace i niedostępne w przypadku aplikacji do Google Chat.

Wartości w polu enum
DISPLAY_STYLE_UNSPECIFIED Nie używaj. Nie określono.
PEEK Nagłówek karty pojawi się u dołu paska bocznego, częściowo zakrywając bieżącą górną kartę stosu. Kliknięcie nagłówka powoduje wyświetlenie karty na stosie kart. Jeśli karta nie ma nagłówka, używany jest wygenerowany nagłówek.
REPLACE Wartość domyślna. Karta jest wyświetlana przez zastąpienie widoku górnej karty w stosie kart.

ExpressionData

Reprezentuje dane używane do oceny wyrażenia.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{
  "id": string,
  "expression": string,
  "conditions": [
    {
      object (Condition)
    }
  ],
  "eventActions": [
    {
      object (EventAction)
    }
  ]
}
Pola
id

string

Unikalny identyfikator ExpressionData.

expression

string

Nieskompilowane wyrażenie.

conditions[]

object (Condition)

Lista warunków określanych przez wynik oceny wyrażenia.

eventActions[]

object (EventAction)

Lista działań, w których można użyć ExpressionData.

Warunek

Reprezentuje warunek, który może być użyty do wywołania działania.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{
  "actionRuleId": string,

  "expressionDataCondition": {
    object (ExpressionDataCondition)
  }
}
Pola
actionRuleId

string

Unikalny identyfikator reguły działania.

Warunek. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
expressionDataCondition

object (ExpressionDataCondition)

Warunek określany przez dane wyrażenia.

Koniec pól wykluczających się wzajemnie.

ExpressionDataCondition

Reprezentuje warunek, który jest oceniany za pomocą języka CEL.

Dostępne w przypadku dodatków do Google Workspace, które rozszerzają Google Workspace Studio. Niedostępne w przypadku aplikacji Google Chat.

Zapis JSON
{
  "conditionType": enum (ConditionType)
}
Pola
conditionType

enum (ConditionType)

Typ warunku.

ConditionType

Typ warunku.

Wartości w polu enum
CONDITION_TYPE_UNSPECIFIED Nieokreślony typ warunku.
EXPRESSION_EVALUATION_SUCCESS Wyrażenie zostało ocenione.
EXPRESSION_EVALUATION_FAILURE Nie udało się ocenić wyrażenia.