Package google.apps.card.v1

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Indeks

Czynność

Działanie opisujące działanie po przesłaniu formularza. Na przykład można wywołać skrypt Apps Script, aby obsłużyć formularz. Jeśli czynność zostanie wywołana, wartości formularzy są przesyłane na serwer.

Pola
function

string

Funkcja niestandardowa wywoływana po kliknięciu lub aktywacji elementu zawierającego.

Przykładowe zastosowania: Tworzenie kart interaktywnych.

parameters[]

ActionParameter

Lista parametrów działań.

loadIndicator

LoadIndicator

Określa wskaźnik wczytywania wyświetlany podczas wykonywania wywołania.

persistValues

bool

Wskazuje, czy po formularzu dane wartości pozostają bez zmian. Wartością domyślną jest false.

Jeśli zasada true ma wartość, po uruchomieniu działania wartości formularzy pozostają bez zmian. Aby pozwolić użytkownikowi na wprowadzanie zmian w trakcie przetwarzania działania, ustaw wartość LoadIndicator na NONE. W przypadku wiadomości na karcie w aplikacjach Google Chat musisz też ustawić typ odpowiedzi na UPDATE_MESSAGE i użyć tej samej wartości card_id w przypadku karty, która zawierała działanie.

Jeśli false wartości formularza zostaną wyczyszczone po wywołaniu działania. Aby uniemożliwić użytkownikowi wprowadzanie zmian podczas przetwarzania działania, ustaw wartość LoadIndicator na SPINNER.

interaction

Interaction

Opcjonalnie. Wymagane przy otwieraniu okna.

Co zrobić w odpowiedzi na interakcję z użytkownikiem, na przykład kliknąć przycisk karty w wiadomości na karcie.

Jeśli nie określisz stanu instalacji, aplikacja odpowie w zwykły sposób, wykonując polecenie action – na przykład otwierając link lub uruchamiając funkcję.

Dzięki ustawieniu interaction aplikacja może reagować w specjalny sposób. Jeśli na przykład ustawisz interaction na OPEN_DIALOG, aplikacja będzie mogła otwierać okno.

Jeśli jest podany, wskaźnik ładowania nie jest wyświetlany.

Działa w aplikacjach Google Chat, ale nie w dodatkach do Google Workspace. Jeśli dodatek jest określony, cała karta jest usuwana i klient nie widzi żadnych informacji.

Parametr działania

Lista parametrów ciągu znaków do podania podczas wywoływania metody działania. Weźmy na przykład 3 przyciski drzemki: drzemka teraz, drzemka 1 dzień, drzemka w przyszłym tygodniu. Możesz użyć metody działania = drzemka(), która przekazuje typ drzemki i czas drzemki na liście parametrów ciągu znaków.

Aby dowiedzieć się więcej, zobacz CommonEventObject.

Pola
key

string

Nazwa parametru skryptu działań.

value

string

Wartość parametru.

Interakcja

Opcjonalnie. Wymagane przy otwieraniu okna.

Co zrobić w odpowiedzi na interakcję z użytkownikiem, na przykład kliknąć przycisk karty w wiadomości na karcie.

Jeśli nie określisz stanu instalacji, aplikacja odpowie w zwykły sposób, wykonując polecenie action – na przykład otwierając link lub uruchamiając funkcję.

Dzięki ustawieniu interaction aplikacja może reagować w specjalny sposób. Jeśli na przykład ustawisz interaction na OPEN_DIALOG, aplikacja będzie mogła otwierać okno.

Jeśli jest podany, wskaźnik ładowania nie jest wyświetlany.

Działa w aplikacjach Google Chat, ale nie w dodatkach do Google Workspace. Jeśli dodatek jest określony, cała karta jest usuwana i klient nie widzi żadnych informacji.

Wartości w polu enum
INTERACTION_UNSPECIFIED Wartość domyślna. action działa normalnie.
OPEN_DIALOG

Otwiera okno, czyli interfejs w oknie karty, którego aplikacje do obsługi czatu używają do interakcji z użytkownikami.

Działa tylko przez aplikacje do obsługi czatu w odpowiedzi na kliknięcie przycisku w wiadomości na karcie.

Nieobsługiwane przez dodatki do Google Workspace. Jeśli dodatek jest określony, cała karta jest usuwana i klient nie widzi żadnych informacji.

Wskaźnik obciążenia

Określa wskaźnik wczytywania wyświetlany podczas wykonywania wywołania.

Wartości w polu enum
SPINNER Wyświetla wskaźnik postępu wczytywania treści.
NONE Nic nie jest wyświetlane.

Styl obramowania

Odzwierciedla pełny styl obramowania zastosowany do elementów w widżecie.

Pola
type

BorderType

typ obramowania;

strokeColor

Color

Kolory używane, gdy typ to BORDER_TYPE_STROKE.

cornerRadius

int32

Promień narożnika obramowania.

Typ obramowania

Określa typy obramowania zastosowane do widżetów.

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

Przycisk

Tekst, ikona lub przycisk tekstowy + ikona, które użytkownicy mogą kliknąć.

Aby umożliwić kliknięcie obrazu, określ Image (a nie ImageComponent) i ustaw działanie onClick.

Obecnie obsługiwane w aplikacjach Google Chat (w tym dialogów i wiadomości na kartach) oraz w dodatkach do Google Workspace.

Pola
text

string

Tekst wyświetlany na przycisku.

icon

Icon

Obraz ikony. Jeśli ustawisz zarówno icon, jak i text, ikona pojawi się przed tekstem.

color

Color

Po ustawieniu przycisk jest wypełniany jednolitym kolorem tła, a kolor czcionki zmienia się, aby zachować kontrast z kolorem tła. Na przykład ustawienie niebieskiego tła spowoduje wyświetlanie białego tekstu.

Jeśli zasada jest nieskonfigurowana, tło obrazu jest białe, a czcionka ma kolor niebieski.

W przypadku czerwonego, zielonego i niebieskiego wartość każdego pola jest liczbą float, którą można wyrazić na dwa sposoby: jako liczbę z zakresu od 0 do 255 podzieloną przez liczbę 255 (153/255) lub jako wartość między 0 a 1 (0,6). 0 oznacza brak koloru, a 1 lub 255/255 oznacza pełną obecność tego koloru na skali RGB.

Opcjonalnie ustaw alfa, aby ustawić poziom przezroczystości przy użyciu tego równania:

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

W przypadku wersji alfa wartość 1 oznacza kolor jednolity, a wartość 0 odpowiada całkowicie przezroczystemu kolorowi.

Na przykład ten kolor to półprzezroczysty czerwony:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
   "alpha": 0.5
}
onClick

OnClick

Wymagany. Działanie wykonywane po kliknięciu przycisku, np. otwarcie hiperlinku lub uruchomienie funkcji niestandardowej.

disabled

bool

Jeśli zasada true ma stan nieaktywny, nie reaguje na działania użytkownika.

altText

string

Alternatywny tekst używany przy ułatwieniach dostępu.

Ustaw opisowy tekst, który będzie informował użytkowników, do czego służy przycisk. Jeśli na przykład przycisk otwiera hiperlink, możesz napisać: „Otwiera się nową kartę przeglądarki i otwiera dokumentację dla deweloperów w Google Chat na stronie https://developers.google.com/chat”.

Lista przycisków

Lista przycisków rozmieszczonych poziomo.

Pola
buttons[]

Button

Tablica przycisków.

Karta

Karty obsługują zdefiniowany układ, interaktywne elementy interfejsu (np. przyciski) i multimedialne (np. obrazy). Korzystaj z kart, aby prezentować szczegółowe informacje, zbierać informacje od użytkowników i pomagać im zrobić kolejny krok.

W Google Chat karty pojawiają się w kilku miejscach:

  • jako samodzielne wiadomości.
  • Dodatkowy tekst, tuż pod SMS-em.
  • Jako okno.

Ten przykładowy plik JSON tworzy „wizytówkę”, która zawiera:

  • Nagłówek z nazwą kontaktu, tytułem zlecenia, zdjęciem awatara.
  • Sekcja z informacjami kontaktowymi, w tym sformatowanym tekstem.
  • Przyciski, które użytkownicy mogą kliknąć, aby udostępnić kontakt lub wyświetlić więcej lub mniej informacji.

Przykładowa wizytówka

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
          "title": "Sasha",
          "subtitle": "Software Engineer",
          "imageUrl":
          "https://developers.google.com/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",
                            }
                          ],
                        }
                      }
                    },
                  ],
                }
              },
            ],
          },
        ],
      },
    }
  ],
}
Pola
header

CardHeader

Nagłówek karty. Nagłówek zwykle zawiera obraz początkowy i tytuł. Nagłówki są zawsze wyświetlane u góry karty.

sections[]

Section

Zawiera kolekcję widżetów. Każda sekcja ma własny, opcjonalny nagłówek. Sekcje są wizualnie oddzielone linię podziału.

cardActions[]

CardAction

Działania karty. Czynności są dodawane do menu na karcie paska narzędzi.

Karty aplikacji Google Chat nie mają paska narzędzi, dlatego cardActions[] nie obsługuje tych aplikacji.

Ten kod JSON tworzy na przykład menu czynności karty z opcjami Ustawienia i Prześlij opinię:

"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.

Aplikacje Google Chat nie obsługują nawigacji po karcie, dlatego to pole jest ignorowane.

fixedFooter

CardFixedFooter

Stała stopka widoczna u dołu tej karty.

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

Aplikacje do obsługi czatu obsługują fixedFooter w oknach dialogowych, ale nie w wiadomościach na karcie.

displayStyle

DisplayStyle

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

Nieobsługiwane w aplikacjach Google Chat.

peekCardHeader

CardHeader

Podczas wyświetlania treści kontekstowych nagłówek karty podglądu działa jako obiekt zastępczy, który umożliwia użytkownikowi przechodzenie między kartami na stronie głównej a kartami kontekstowymi.

Nieobsługiwane w aplikacjach Google Chat.

Działanie karty

Działanie karty to działanie powiązane z kartą. Karta może na przykład zawierać takie działania jak usunięcie faktury lub e-maila czy otwarcie faktury w przeglądarce.

Nieobsługiwane w aplikacjach Google Chat.

Pola
actionLabel

string

Etykieta wyświetlana jako element menu czynności.

onClick

OnClick

Działanie onClick dotyczące tego działania.

KartaNaprawiono

Trwała (przyklejona) stopka, która pojawia się u dołu karty.

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

Aplikacje do obsługi czatu obsługują fixedFooter w oknach dialogowych, ale nie w wiadomościach na karcie.

Pola
primaryButton

Button

Przycisk główny stopki. Musi to być przycisk tekstowy z ustawionym tekstem i kolorem.

secondaryButton

Button

Przycisk dodatkowy stopki. Musi to być przycisk tekstowy z ustawionym tekstem i kolorem. Jeśli ustawiona jest wartość secondaryButton, musi zostać ustawiona wartość primaryButton.

KartaNagłówek

Reprezentuje nagłówek karty.

Pola
title

string

Wymagany. Tytuł nagłówka karty. Nagłówek ma stałą wysokość. Jeśli podajesz zarówno tytuł, jak i podtytuł, każdy z nich zajmuje po jednym wierszu. Jeśli określony jest tylko tytuł, zajmuje on oba wiersze.

subtitle

string

Podtytuł nagłówka karty. Jeśli zostanie określony, wyświetli się w osobnym wierszu pod elementem title.

imageType

ImageType

Kształt używany do przycinania obrazu.

imageUrl

string

Adres URL HTTPS obrazu w nagłówku karty.

imageAltText

string

Tekst zastępczy obrazu, który służy do ułatwień dostępu.

Styl wyświetlania

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

Nieobsługiwane w aplikacjach Google Chat.

Wartości w polu enum
DISPLAY_STYLE_UNSPECIFIED Nie używać.
PEEK Nagłówek karty jest wyświetlany u dołu paska bocznego, częściowo zasłaniając bieżącą górną kartę stosu. Kliknięcie nagłówka spowoduje umieszczenie karty w stosie. Jeśli karta nie ma nagłówka, zostanie wygenerowany nagłówek.
REPLACE Wartość domyślna. Karta jest wyświetlana, zastępując widok górnej karty w stosie kart.

Sekcja

Sekcja zawiera zbiór widżetów renderowanych pionowo, w określonej przez Ciebie kolejności.

Pola
header

string

Tekst wyświetlany u góry sekcji. Obsługuje prosty tekst w formacie HTML.

widgets[]

Widget

Wszystkie widżety w sekcji. Musi zawierać co najmniej 1 widżet.

collapsible

bool

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

Zwijane sekcje ukrywają niektóre lub wszystkie widżety, ale użytkownicy mogą rozwinąć tę sekcję, aby wyświetlić ukryte widżety. Aby to zrobić, kliknij Pokaż więcej. Użytkownicy mogą ponownie ukryć widżety, klikając Pokaż mniej.

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

uncollapsibleWidgetsCount

int32

Liczba widżetów, których nie można zwinąć, nawet jeśli sekcja jest zwinięta.

Jeśli np. sekcja zawiera pięć widżetów, a atrybut uncollapsibleWidgetsCount ma wartość 2, pierwsze dwa widżety są zawsze wyświetlane, a trzy ostatnie są domyślnie zwinięte. Wartość uncollapsibleWidgetsCount jest uwzględniana tylko wtedy, gdy collapsible to true.

Selektor daty i godziny

Pozwala użytkownikom określić datę, godzinę lub zarówno datę, jak i godzinę.

Akceptuje wprowadzanie tekstu przez użytkowników, ale udostępnia interaktywny selektor daty i godziny, który umożliwia użytkownikom prawidłowe wpisanie dat i godzin. Jeśli użytkownik wpisze nieprawidłową datę lub godzinę, w widżecie wyświetli się komunikat o błędzie.

Nieobsługiwane w aplikacjach Google Chat. Wkrótce obsługiwane będą aplikacje do obsługi czatu.

Pola
name

string

Nazwa, po której identyfikuje selektor daty i godziny w zdarzeniu wprowadzania formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

label

string

Tekst, który zachęca użytkowników do wpisania daty, godziny lub daty.

Określ tekst, który pomoże użytkownikowi wpisać potrzebne informacje. Jeśli np. użytkownicy ustalają termin spotkania, etykiety takie jak „Data spotkania” czy „Data i godzina spotkania” mogą się sprawdzić.

type

DateTimePickerType

Rodzaj daty i godziny podany w selektorze daty i godziny.

valueMsEpoch

int64

Wartość wyświetlana jako wartość domyślna przed wprowadzaniem danych przez użytkownika lub w przeszłości, wyrażona w milisekundach (czas uniksowy).

W przypadku typu DATE_AND_TIME używana jest pełna wartość epoki.

W przypadku typu DATE_ONLY używana jest tylko data epoki.

W przypadku typu TIME_ONLY używany jest tylko czas epoki. Aby na przykład ustawić godzinę 3:00, ustaw czas epoki na 3 * 60 * 60 * 1000.

timezoneOffsetDate

int32

Liczba wskazująca przesunięcie czasu względem strefy czasowej UTC w minutach. Jeśli zasada jest skonfigurowana, pole value_ms_epoch jest wyświetlane w określonej strefie czasowej. Jeśli zasada nie jest skonfigurowana, używa ustawienia strefy czasowej użytkownika po stronie klienta.

onChangeAction

Action

Wywoływane, gdy użytkownik kliknie Zapisz lub Wyczyść w interfejsie selektora daty i godziny.

Typ selektora daty i godziny

Rodzaj daty i godziny podany w selektorze daty i godziny.

Wartości w polu enum
DATE_AND_TIME Użytkownik może wybrać datę i godzinę.
DATE_ONLY Użytkownik może wybrać tylko datę.
TIME_ONLY Użytkownik może wybrać tylko godzinę.

Dekorowany tekst

Widżet wyświetlający tekst z opcjonalnymi dekoracjami, takimi jak etykieta nad lub pod tekstem, ikona znajdująca się przed tekstem, widżet wyboru lub przycisk po tekście.

Pola
icon
(deprecated)

Icon

Wycofanie: startIcon.

startIcon

Icon

Ikona wyświetlana przed tekstem.

topLabel

string

Tekst wyświetlany nad tekstem text. Zawsze skraca.

text

string

Wymagany. Tekst główny.

Obsługuje proste formatowanie. Więcej informacji o formatowaniu znajdziesz w artykule Formatowanie tekstu.

wrapText

bool

Ustawienie zawijania tekstu. Jeśli true, tekst zostanie zawinięty i wyświetlony w kilku wierszach. W przeciwnym razie tekst zostanie skrócony.

Dotyczy tylko text, a nie topLabel i bottomLabel.

bottomLabel

string

Tekst widoczny poniżej text. Zawsze skraca.

onClick

OnClick

To działanie jest wyzwalane, gdy użytkownik kliknie topLabel lub bottomLabel.

Pole sumy: control. Przycisk, przełącznik, pole wyboru lub obraz wyświetlany po prawej stronie tekstu w widżecie decoratedText. control może mieć tylko jedną z tych wartości:
button

Button

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

switchControl

SwitchControl

Widżet przełączania można kliknąć, aby zmienić stan i aktywować działanie.

endIcon

Icon

Ikona wyświetlana po tekście.

Obsługuje ikony wbudowane i niestandardowe.

SwitchControl

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

Działa tylko w widżecie decoratedText.

Pola
name

string

Nazwa, która służy do identyfikowania widżetu przełączania w zdarzeniu danych wejściowych formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

value

string

Wartość wprowadzona przez użytkownika w ramach zdarzenia wejściowego formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

selected

bool

Gdy true, przełącznik jest wybrany.

onChangeAction

Action

Działanie, które ma być wykonywane po zmianie stanu przełącznika, np. funkcja do uruchomienia.

controlType

ControlType

Wygląd przełącznika w interfejsie.

Typ elementu sterującego

Wygląd przełącznika w interfejsie.

Wartości w polu enum
SWITCH Przełącznik w stylu przełącznika.
CHECKBOX Wycofanie: CHECK_BOX.
CHECK_BOX Pole wyboru.

Separator

Wyświetla linię poziomą między widżetami a poziomą linią.

Separator tworzy np. taki kod JSON:

"divider": {}

Otrzymanie odpowiedzi autouzupełniania

Odpowiedź dotycząca pobierania kontenera autouzupełniania, który zawiera elementy niezbędne do wyświetlania elementów autouzupełniania w polu tekstowym. Na przykład:

{
  "autoComplete": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
Pola
autoComplete

Suggestions

schema

string

To pole schematu bez operacji może występować w znacznikach na potrzeby sprawdzania składni.

Siatka

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

Siatka obsługuje dowolną liczbę kolumn i elementów. Liczba wierszy jest określana przez pozycje podzielone przez kolumny. Siatka zawiera 10 elementów i 2 kolumny, a 5 wierszy Siatka zawiera 11 elementów i 2 kolumny, a 6 wierszy

Na przykład ten JSON tworzy 2-kolumnową siatkę z jednym 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"
    }
  }
}
Pola
title

string

Tekst wyświetlany w nagłówku siatki.

items[]

GridItem

Elementy wyświetlane w siatce.

borderStyle

BorderStyle

Styl obramowania, który chcesz zastosować do każdego elementu siatki.

columnCount

int32

Liczba kolumn wyświetlanych w siatce. Jeśli nie określisz wartości tego pola, zostanie użyta wartość domyślna, która różni się w zależności od tego, gdzie wyświetla się siatka (okno dialogowe a reklama towarzysząca).

onClick

OnClick

To wywołanie zwrotne jest używane przez każdy element siatki, ale z identyfikatorem elementu i indeksem na liście elementów dodanym do parametrów wywołania zwrotnego.

Element siatki

Reprezentuje jeden element w układzie siatki.

Pola
id

string

Określony przez użytkownika identyfikator tego elementu siatki. Ten identyfikator jest zwracany w nadrzędnym parametrze wywołania zwrotnego Click Grid.

image

ImageComponent

Obraz wyświetlany w elemencie siatki.

title

string

Tytuł elementu siatki.

subtitle

string

Podtytuł elementu siatki.

layout

GridItemLayout

Układ używany w elemencie siatki.

Układ siatki

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

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

Ikona

Ikona wyświetlana w widżecie na karcie.

Obsługuje ikony wbudowane i niestandardowe.

Pola
altText

string

Opcjonalnie. Opis ikony ułatwień dostępu. Jeśli wartość nie jest określona, podawana jest wartość domyślna „Button”. Warto ustawić przydatny opis tego, co wyświetla się na ikonie, a jeśli to możliwe – do czego służy. na przykład A user's account portrait lub Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/chat.

Jeśli ikona jest ustawiona w zasadzie Button, altText pojawia się jako tekst pomocniczy, gdy użytkownik najedzie na niego kursorem. Jeśli jednak przycisk ma też wartość text, ikona altText jest ignorowana.

imageType

ImageType

Styl przycinania zastosowany do obrazu. W niektórych przypadkach zastosowanie przycięcia CIRCLE powoduje, że obraz zostanie narysowany jako większy niż wbudowana.

Pole sumy: icons. Ikona wyświetlana w widżecie na karcie. icons może mieć tylko jedną z tych wartości:
knownIcon

string

Wyświetlaj jedną z wbudowanych ikon Google Workspace.

Aby na przykład wyświetlić ikonę samolotu, wpisz AIRPLANE. W przypadku autobusu podaj BUS.

Pełną listę obsługiwanych ikon znajdziesz w sekcji wbudowanych ikon.

iconUrl

string

Wyświetlaj niestandardową ikonę pod adresem URL HTTPS.

Na przykład:

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

Obsługiwane typy plików obejmują .png i .jpg.

Obraz

Obraz określony za pomocą adresu URL, który może zawierać działanie onClick.

Pola
imageUrl

string

Adres URL strony https z obrazem.

Na przykład:

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

OnClick

To działanie jest aktywowane, gdy użytkownik kliknie obraz.

altText

string

Tekst zastępczy obrazu, który ułatwia dostęp.

Składnik obrazu

Reprezentuje obraz.

Pola
imageUri

string

Adres URL obrazu.

altText

string

Etykieta ułatwień dostępu obrazu.

cropStyle

ImageCropStyle

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

borderStyle

BorderStyle

Styl obramowania, który chcesz zastosować do obrazu.

Styl Przycięcia

Reprezentuje styl przycięcia zastosowany do obrazu.

Oto przykład zastosowania współczynnika proporcji 16 na 9:

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

ImageCropType

Typ przycięcia.

aspectRatio

double

Współczynnik proporcji używany, gdy typ przycięcia to RECTANGLE_CUSTOM.

Oto przykład zastosowania współczynnika proporcji 16 na 9:

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

Typ przycinania obrazu

Reprezentuje styl przycięcia zastosowany do obrazu.

Wartości w polu enum
IMAGE_CROP_TYPE_UNSPECIFIED Nie określono wartości. Nie używać.
SQUARE Wartość domyślna. Zastosuj przycięcie kwadratowe.
CIRCLE Stosuje przycinanie koła.
RECTANGLE_CUSTOM Stosuje prostokątne przycięcia w niestandardowym formacie. Ustaw niestandardowy współczynnik proporcji na aspectRatio.
RECTANGLE_4_3 Stosuje prostokątne przycięcia w formacie 4:3.

Podgląd linku

Działanie karty, które wyświetla kartę podglądu linku i element inteligentny w aplikacji hosta.

Pola
previewCard

Card

Karta zawierająca informacje o linku z usługi firmy zewnętrznej lub usługi innej firmy niż Google.

title

string

Tytuł wyświetlany w elemencie inteligentnym w przypadku podglądu linku. Jeśli zasada jest nieskonfigurowana, element inteligentny wyświetla nagłówek elementu preview_card.

Działanie karty, które służy do manipulowania stosem kart. Na przykład:

1) Dodaj nową kartę do stosu (przejdź do przodu).

 navigations : {
    pushCard : CARD
  }

2) Zaktualizuj kartę u góry stosu (w miejscu aktualizacji).

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

3) Cofnij się o jeden krok bez aktualizowania.

  navigations : {
    popCard : true,
  }

4. Cofnij się i zaktualizuj kartę.

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

5) Cofnij się o kilka kroków do zdefiniowanego atrybutu CARD_NAME.

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

6. Wróć do poziomu głównego i zaktualizuj kartę.

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

7) Przejdź na określoną kartę i ją też dodaj.

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

8) Wymienić górną kartę na nową.

  navigations : {
    updateCard : CARD
  }
Pola

Pole sumy: navigate_action.

navigate_action może mieć tylko jedną z tych wartości:

popToRoot

bool

Stos kart zamyka wszystkie karty oprócz głównej.

pop

bool

Stos kart wyskakuje z jednej karty.

popToCard

string

Stos kart wyświetli wszystkie karty powyżej określonej karty z podaną nazwą.

pushCard

Card

Stos kart umieszcza kartę na stosie.

updateCard

Card

Stos kart zaktualizuje górną kartę, dodając nową kartę, i zachowa wartości wypełnionych pól formularza. W przypadku nieodpowiedniego pola wartość jest usuwana.

Powiadomienie

Działanie karty, które wyświetla powiadomienie w aplikacji hosta.

Pola
text

string

Zwykły tekst do wyświetlenia powiadomienia bez tagów HTML.

OnClick

Określa sposób reagowania, gdy użytkownik klika interaktywny element na karcie, taki jak przycisk.

Pola

Pole sumy: data.

data może mieć tylko jedną z tych wartości:

action

Action

Jeśli jest określona, aktywuje to działanie onClick.

openDynamicLinkAction

Action

Dodatek aktywuje to działanie, gdy będzie trzeba otworzyć link. Różni się to od powyższego atrybutu open_link, który wymaga połączenia z serwerem, aby uzyskać link. W związku z tym klient internetowy musi najpierw wykonać pewne czynności przygotowujące, zanim ta odpowiedź zostanie zwrócona.

card

Card

Nowa karta zostanie przesłana do stosu kart po kliknięciu, jeśli zostanie podana.

Obsługiwane przez dodatki do Google Workspace, ale nie w przypadku aplikacji Google Chat.

OnClose

Co robi klient, gdy link otwarty przez działanie OnClick zostanie zamknięty.

Implementacja zależy od możliwości platformy klienta. Na przykład przeglądarka może otworzyć link w wyskakującym okienku za pomocą modułu obsługi OnClose.

Jeśli ustawione są moduły obsługi OnOpen i OnClose, a platforma klienta nie obsługuje obu wartości, pierwszeństwo ma OnClose.

Obsługiwane przez dodatki do Google Workspace, ale nie w przypadku aplikacji Google Chat.

Wartości w polu enum
NOTHING Wartość domyślna. Karta nie zostanie ponownie wczytana. Nic się nie dzieje.
RELOAD

Wczytuje kartę ponownie po zamknięciu okna podrzędnego.

Jeśli jednocześnie używana jest zasada OpenAs.OVERLAY, okno podrzędne działa jako okno modalne, a karta nadrzędna jest blokowana do momentu zamknięcia okna.

Otwórz jako

Po kliknięciu linku OnClick klient może otworzyć go w pełnym oknie (jeśli jest to ramka używana przez klienta) albo w nakładce (np. w wyskakującym okienku). Implementacja zależy od możliwości platformy klienta, a wybrana wartość może zostać zignorowana, jeśli klient jej nie obsługuje. FULL_SIZE jest obsługiwany przez wszystkie klienty.

Obsługiwane przez dodatki do Google Workspace, ale nie w przypadku aplikacji Google Chat.

Wartości w polu enum
FULL_SIZE Link otwiera się w pełnym rozmiarze (jeśli jest to ramka używana przez klienta).
OVERLAY Link otwiera się jako nakładka, np. w wyskakującym okienku.

Renderowanie

Zestaw instrukcji renderowania informujących kartę o konieczności wykonania działania lub poinformowania dodatku hosta o konieczności wykonania określonej czynności w aplikacji.

Pola
action

Action

hostAppAction

HostAppActionMarkup

Działania obsługiwane przez poszczególne aplikacje gospodarza.

schema

string

To pole schematu bez operacji może występować w znacznikach na potrzeby sprawdzania składni.

Czynność

Pola
navigations[]

Navigation

Naciskaj, wyskakuj lub aktualizuj wyświetlane karty.

notification

Notification

Wyświetlaj powiadomienie użytkownikowi.

linkPreview

LinkPreview

Wyświetl podgląd linku użytkownikowi.

Źródło sygnału

Widżet, który tworzy element interfejsu z opcjami do wyboru przez użytkowników. Na przykład menu lub listę kontrolną.

Aplikacje do obsługi czatu otrzymują i przetwarzają wartość wpisanego tekstu podczas wprowadzania danych w formularzu. Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

Jeśli chcesz zbierać dane od użytkowników, którzy pasują do ustawionych opcji, użyj wyboru wejściowego. Aby zbierać abstrakcyjne dane od użytkowników, użyj widżetu wprowadzania tekstu.

Pola
name

string

Nazwa, która określa dane wejściowe zaznaczone w zdarzeniu do wypełnienia formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

label

string

Tekst wyświetlany nad polem wyboru w interfejsie.

Określ tekst, który pomoże użytkownikowi wpisać potrzebne informacje. Jeśli na przykład użytkownik wybierze z menu opcję pilności, może to być „Pilna” lub „Wybierz pilną”.

type

SelectionType

Sposób, w jaki użytkownicy widzą daną opcję. Różne opcje obsługują różne typy interakcji. Użytkownicy mogą np. włączyć wiele pól wyboru, ale z menu mogą wybrać tylko jedną wartość.

Każdy wpisany tekst obsługuje 1 typ wyboru. Nie można na przykład łączyć pól wyboru i przełączników.

items[]

SelectionItem

Tablica wybranych elementów. Dotyczy to np. wszystkich zaznaczonych pól wyboru.

onChangeAction

Action

Jeśli ta opcja jest określona, formularz jest wysyłany, gdy zmieni się wybór. Jeśli nie określisz tego ustawienia, musisz podać oddzielny przycisk, który służy do przesyłania formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

Element wyboru

Element do wyboru w opcji wyboru, np. pole wyboru lub przełącznik.

Pola
text

string

Tekst wyświetlany użytkownikom.

value

string

Wartość powiązana z tym elementem. Klient powinien go używać jako wartości wejściowej formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

selected

bool

Jeśli wybierzesz true, wybierany jest więcej niż jeden element. Jeśli wybierzesz więcej niż jeden przycisk opcji i menu, pierwszy wybrany element zostanie odebrany, a pozostałe zostaną zignorowane.

Typ wyboru

Sposób, w jaki użytkownicy widzą daną opcję. Różne opcje obsługują różne typy interakcji. Użytkownicy mogą np. włączyć wiele pól wyboru, ale z menu mogą wybrać tylko jedną wartość.

Każdy wpisany tekst obsługuje 1 typ wyboru. Nie można na przykład łączyć pól wyboru i przełączników.

Wartości w polu enum
CHECK_BOX Zestaw pól wyboru. Użytkownicy mogą zaznaczyć wiele pól wyboru na dane wejściowe.
RADIO_BUTTON Zestaw przycisków opcji. Każdy użytkownik może wybrać tylko jedną opcję.
SWITCH Zestaw przełączników. Użytkownicy mogą włączyć wiele przełączników naraz.
DROPDOWN Menu. Użytkownicy mogą wybrać z menu jeden element menu.

PrześlijFormResponse

Odpowiedź na przesłany formularz inną niż otrzymanie kontenera autouzupełniania zawierającego informacje o czynnościach, które powinna wykonać karta lub aplikacja hosta dodatku, oraz o zmianie stanu karty. Na przykład:

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

RenderActions

Zestaw instrukcji renderowania informujących kartę o konieczności wykonania określonego działania lub poinformowania dodatku hosta o konieczności wykonania określonej czynności w aplikacji.

stateChanged

bool

Czy stan kart się zmienił i czy dane na istniejących kartach są nieaktualne.

schema

string

To pole schematu bez operacji może występować w znacznikach na potrzeby sprawdzania składni.

Sugestie

Sugerowane wartości, które użytkownicy mogą wpisać. Te wartości pojawiają się, gdy użytkownik kliknie pole tekstowe. Gdy użytkownicy wpisują wartości, sugerowane wartości dynamicznie filtrują do treści wpisanych przez użytkownika.

Na przykład pole do wprowadzania tekstu w języku programowania może proponować język Java, JavaScript, Python i C++. Gdy użytkownicy zaczną wpisywać „Jav”, na liście sugestii pojawią się tylko języki Java i JavaScript.

Sugerowane wartości ułatwiają użytkownikom wpisywanie wartości, które mogą być przydatne dla Twojej aplikacji. Gdy odwołujesz się do JavaScriptu, niektórzy użytkownicy mogą wpisać „javascript”, a inni „JavaScript”. Sugerowanie kodu JavaScript może ujednolicić sposób interakcji użytkowników z aplikacją.

Jeśli zasada jest określona, właściwość TextInput.type ma zawsze wartość SINGLE_LINE, nawet jeśli jest ustawiona na MULTIPLE_LINE.

Pola
items[]

SuggestionItem

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

Element propozycji

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

Pola

Pole sumy: content.

content może mieć tylko jedną z tych wartości:

text

string

Wartość sugerowanego pola do wprowadzania tekstu. Jest to odpowiednik tego, co użytkownicy wpisaliby na stronie.

Dane wejściowe – tekst

Pole, w którym użytkownicy mogą wpisywać tekst. Obsługuje sugestie i zmiany wprowadzane przez użytkownika.

Aplikacje do obsługi czatu otrzymują i przetwarzają wartość wpisanego tekstu podczas wprowadzania danych w formularzu. Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

Jeśli chcesz zbierać abstrakcyjne dane użytkowników, użyj danych tekstowych. Aby zbierać określone dane od użytkowników, użyj widżetu wyboru.

Pola
name

string

Nazwa, dzięki której dane tekstowe są identyfikowane w zdarzeniu wprowadzania formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

label

string

Tekst wyświetlany nad polem do wprowadzania tekstu w interfejsie.

Określ tekst, który pomoże użytkownikowi wpisać potrzebne informacje. Jeśli na przykład pytasz o czyjeś imię i nazwisko, ale potrzebujesz nazwiska, wpisz „nazwisko” zamiast „nazwisko”.

Wymagane, jeśli pole hintText nie jest określone. W przeciwnym razie (opcjonalnie).

hintText

string

Tekst wyświetlany pod polem do wprowadzania tekstu, który ma pomóc użytkownikom w wpisaniu określonej wartości. Ten tekst jest zawsze widoczny.

Wymagane, jeśli pole label nie jest określone. W przeciwnym razie (opcjonalnie).

value

string

Wartość wprowadzona przez użytkownika w ramach zdarzenia wejściowego formularza.

Szczegółowe informacje o korzystaniu z danych wejściowych formularza znajdziesz w artykule Otrzymywanie danych formularza.

type

Type

Sposób wyświetlania pola do wprowadzania tekstu w interfejsie Na przykład to, czy pole jest pojedyncze czy wielowierszowe.

onChangeAction

Action

Co zrobić, gdy zmiana zostanie wprowadzona w polu tekstowym.

Przykładowe zmiany to dodawanie przez użytkownika w polu lub usuwanie tekstu.

Przykładowe działania to uruchomienie funkcji niestandardowej lub otwarcie okna w Google Chat.

initialSuggestions

Suggestions

Sugerowane wartości, które użytkownicy mogą wpisać. Te wartości pojawiają się, gdy użytkownik kliknie pole tekstowe. Gdy użytkownicy wpisują wartości, sugerowane wartości dynamicznie filtrują do treści wpisanych przez użytkownika.

Na przykład pole do wprowadzania tekstu w języku programowania może proponować język Java, JavaScript, Python i C++. Gdy użytkownicy zaczną wpisywać „Jav”, na liście sugestii pojawią się tylko języki Java i JavaScript.

Sugerowane wartości ułatwiają użytkownikom wpisywanie wartości, które mogą być przydatne dla Twojej aplikacji. Gdy odwołujesz się do JavaScriptu, niektórzy użytkownicy mogą wpisać „javascript”, a inni „JavaScript”. Sugerowanie kodu JavaScript może ujednolicić sposób interakcji użytkowników z aplikacją.

Jeśli zasada jest określona, właściwość TextInput.type ma zawsze wartość SINGLE_LINE, nawet jeśli jest ustawiona na MULTIPLE_LINE.

autoCompleteAction

Action

Opcjonalnie. Określ, co zrobić, jeśli pole do wprowadzania tekstu zawiera sugestie dotyczące użytkowników.

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

Jeśli zasada jest określona, aplikacja wykonuje działanie określone w tym miejscu, np. uruchamia funkcję niestandardową.

Obsługiwane przez dodatki do Google Workspace, ale nie w przypadku aplikacji Google Chat. Wkrótce obsługiwane będą aplikacje do obsługi czatu.

Typ

Sposób wyświetlania pola do wprowadzania tekstu w interfejsie Na przykład pole wprowadzania tekstu jednowierszowego lub wielowierszowe

Jeśli określisz właściwość initialSuggestions, type ma zawsze wartość SINGLE_LINE, nawet jeśli MULTIPLE_LINE ma wartość.

Wartości w polu enum
SINGLE_LINE Pole do wprowadzania tekstu ma stałą wysokość 1 wiersza.
MULTIPLE_LINE Pole do wprowadzania tekstu ma stałą wysokość obejmującą wiele wierszy.

Akapit tekstowy

Akapit z tekstem, który obsługuje formatowanie. Więcej informacji znajdziesz w artykule Formatowanie tekstu.

Pola
text

string

Tekst wyświetlany w widżecie.

Widżet

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

Widżet to obiekt złożony, który może reprezentować jeden z tekstów, obrazów, przycisków lub innych typów obiektów.

Pola
Pole sumy: data. 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. data może mieć tylko jedną z tych wartości:
textParagraph

TextParagraph

Wyświetla akapit tekstu. Obsługuje prosty tekst w formacie HTML.

Ten fragment kodu JSON tworzy pogrubiony tekst:

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

Image

Wyświetla obraz.

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

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

DecoratedText

Wyświetla ozdobny element tekstowy.

Ten kod JSON tworzy na przykład ozdobny widżet tekstowy zawierający 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

ButtonList

Lista przycisków.

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

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

TextInput

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

Na przykład ten kod JSON tworzy tekstowe pole do wpisania adresu e-mail:

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

Oto inny przykład:

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

SelectionInput

Wyświetla element wyboru, który umożliwia użytkownikom wybieranie elementów. Do wyboru służą pola wyboru, przyciski, przełączniki i menu.

Ten kod JSON tworzy na przykład 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

DateTimePicker

Wyświetla widżet wyboru/wprowadzania daty, godziny lub daty i godziny.

Nieobsługiwane w aplikacjach Google Chat. Już wkrótce obsługiwane będą aplikacje do obsługi czatu.

Na przykład ten kod JSON tworzy selektor daty i godziny, aby zaplanować spotkanie:

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

Divider

Wyświetla poziome separatory między widżetami.

Separator tworzy np. taki kod JSON:

"divider": {
}
grid

Grid

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

Siatka obsługuje dowolną liczbę kolumn i elementów. Liczba wierszy jest określana przez górne granice liczby elementów podzielone przez liczbę kolumn. Siatka zawiera 10 elementów i 2 kolumny, a 5 wierszy Siatka zawiera 11 elementów i 2 kolumny, a 6 wierszy

Na przykład ten JSON tworzy 2-kolumnową siatkę z jednym 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"
    }
  }
}

Typ obrazu

Kształt używany do przycinania obrazu.

Wartości w polu enum
SQUARE Wartość domyślna. Stosuje do maski kwadratowy. Na przykład obraz o wymiarach 4 x 3 stanie się 3 x 3.
CIRCLE Stosuje do maski okrągłą. Na przykład obraz o wymiarach 4 × 3 stanie się okręgiem o średnicy 3 s.