Z tego przewodnika dowiesz się, jak aplikacje Google Chat mogą zbierać i przetwarzać informacje od użytkowników, tworząc dane wejściowe formularzy w interfejsach opartych na kartach.
Aplikacje do Google Chat proszą użytkowników o informacje, aby wykonywać działania w Google Chat lub poza nim, m.in. w następujący sposób:
- Skonfiguruj ustawienia. Możesz na przykład pozwolić użytkownikom na dostosowywanie ustawień powiadomień lub konfigurowanie i dodawanie aplikacji do Google Chat do co najmniej 1 pokoju.
- tworzyć i aktualizować informacje w innych aplikacjach Google Workspace; Możesz na przykład pozwolić użytkownikom na tworzenie wydarzeń w Kalendarzu Google.
- Zezwalaj użytkownikom na dostęp do zasobów w innych aplikacjach lub usługach internetowych i ich aktualizowanie. Na przykład aplikacja do Google Chat może pomóc użytkownikom zaktualizować stan zgłoszenia do zespołu pomocy bezpośrednio z pokoju Google Chat.
Wymagania wstępne
HTTP
aplikację Google Chat, która odbiera interakcje użytkowników i na nie odpowiada; Aby ją utworzyć, wykonaj czynności opisane w krótkim wprowadzeniu do HTTP.
Google Apps Script
aplikację Google Chat, która odbiera interakcje użytkowników i na nie odpowiada; Aby go utworzyć, wykonaj czynności opisane w krótkim wprowadzeniu do Apps Script.
Tworzenie formularzy za pomocą kart
Aby zbierać informacje, aplikacje do Google Chat projektują formularze i ich dane wejściowe oraz umieszczają je na kartach. Aby wyświetlać karty użytkownikom, aplikacje do Google Chat mogą używać tych interfejsów Google Chat:
- Wiadomości zawierające co najmniej 1 kartę.
- Strony główne, czyli karty wyświetlane na karcie Strona główna w czatach z aplikacją Google Chat.
- okna, czyli karty, które otwierają się w nowym oknie z wiadomości i stron głównych;
Aplikacje do Google Chat mogą tworzyć karty za pomocą tych widżetów:
widżety do wprowadzania danych w formularzu, które proszą użytkowników o informacje; Opcjonalnie możesz dodać weryfikację do widżetów wprowadzania danych w formularzu, aby mieć pewność, że użytkownicy wprowadzają i formatują informacje prawidłowo. Aplikacje do Google Chat mogą używać tych widżetów do wprowadzania danych w formularzu:
- Pola tekstowe (
textInput) do wpisywania dowolnego tekstu lub wybierania sugerowanego tekstu. - Dane wejściowe wyboru (
selectionInput) to elementy interfejsu, które można wybrać, takie jak pola wyboru, przyciski opcji i menu. Widżety wyboru mogą też wypełniać i sugerować elementy na podstawie danych Google Workspace (np. pokoju czatu) lub dynamicznego źródła danych. Szczegółowe informacje znajdziesz w sekcjach Dodawanie menu i Dodawanie menu wielokrotnego wyboru. - Selektory daty i godziny (
dateTimePicker) do wprowadzania daty i godziny.
- Pola tekstowe (
Widżet przycisku, aby użytkownicy mogli przesyłać wartości wpisane na karcie. Gdy użytkownik kliknie przycisk, aplikacja Google Chat może przetworzyć otrzymane informacje.
W tym przykładzie karta zbiera informacje kontaktowe za pomocą pola tekstowego, selektora daty i godziny oraz pola wyboru:
Więcej przykładów interaktywnych widżetów, których możesz używać do zbierania informacji, znajdziesz w artykule Projektowanie interaktywnej karty lub okna.
Dodawanie menu
Aby dostosować elementy wyboru lub umożliwić użytkownikom wybranie pojedynczego elementu z dynamicznego źródła danych, aplikacje do Google Chat mogą używać menu, które są rodzajem widżetu SelectionInput. Na przykład na tej karcie wyświetla się menu, w którym użytkownicy mogą dynamicznie wybierać kontakty z listy:
Elementy menu możesz wypełnić danymi z tych źródeł:
- Dane Google Workspace, które obejmują użytkowników lub pokoje Google Chat.
- zewnętrzne źródła danych, takie jak relacyjna baza danych;
Wypełnianie elementów danymi ze źródła danych Google Workspace
Aby wypełnić elementy ze źródeł danych Google Workspace, takich jak użytkownicy Google Workspace, określ pole platformDataSource w obiekcie DataSourceConfig. W przeciwieństwie do innych typów danych wejściowych wyboru pomijasz obiekty SelectionItem, ponieważ te elementy wyboru są dynamicznie pobierane z Google Workspace.
Poniższy kod wyświetla menu użytkowników Google Workspace:
JSON
{
"sections": [
{
"header": "Section Header",
"widgets": [
{
"selectionInput": {
"name": "contacts",
"type": "DROPDOWN",
"label": "Select contact from organization",
"dataSourceConfigs": [
{
"platformDataSource": {
"commonDataSource": "USER"
},
"minCharactersTrigger": 1
}
]
}
}
]
}
]
}
Wypełnianie elementów z zewnętrznego źródła danych
Menu mogą też zawierać elementy z zewnętrznego źródła danych. Aby użyć zewnętrznego źródła danych, określ pole remoteDataSource w obiekcie DataSourceConfig, który zawiera funkcję wysyłającą zapytania i zwracającą elementy ze źródła danych.
Aby zmniejszyć liczbę żądań wysyłanych do zewnętrznego źródła danych, możesz uwzględnić sugerowane elementy, które pojawiają się w menu, zanim użytkownicy zaczną w nim pisać. Aby wypełnić sugerowane elementy z zewnętrznego źródła danych, określ statyczne obiekty SelectionItem.
Poniższy kod pokazuje menu, które wysyła zapytania do zewnętrznego źródła danych i wypełnia elementy z tego źródła:
JSON
{
"sections": [
{
"header": "Section Header",
"widgets": [
{
"selectionInput": {
"name": "crm_leads",
"type": "DROPDOWN",
"label": "Select CRM Lead",
"dataSourceConfigs": [
{
"remoteDataSource": {
"function": "getCrmLeads"
},
"minCharactersTrigger": 2
}
],
"items": [
{
"text": "Suggested Lead 1",
"value": "lead-1"
}
]
}
}
]
}
]
}
Pełny przykład pokazujący, jak zwracać sugerowane elementy, znajdziesz w sekcji Sugerowanie elementów do wyboru.
Dodawanie menu wielokrotnego wyboru
Aby dostosować elementy wyboru lub umożliwić użytkownikom wybieranie elementów z dynamicznego źródła danych, aplikacje do Google Chat mogą używać menu wielokrotnego wyboru, które są rodzajem widżetu SelectionInput. Na przykład na karcie poniżej wyświetla się menu wielokrotnego wyboru, w którym użytkownicy mogą dynamicznie wybierać kontakty z listy:
Elementy menu wielokrotnego wyboru możesz wypełnić danymi z tych źródeł:
- Dane Google Workspace, które obejmują użytkowników lub pokoje czatu, do których należy użytkownik. W menu wyświetlane są tylko elementy z tej samej organizacji Google Workspace.
- zewnętrzne źródła danych, takie jak relacyjna baza danych; Możesz na przykład użyć menu wielokrotnego wyboru, aby pomóc użytkownikowi wybrać pozycję z listy potencjalnych sprzedaży z systemu zarządzania relacjami z klientami (CRM).
Wypełnianie elementów danymi ze źródła danych Google Workspace
Aby używać źródeł danych Google Workspace, określ pole platformDataSource w widżecie SelectionInput. W przeciwieństwie do innych typów danych wejściowych wyboru pomijasz obiekty SelectionItem, ponieważ te elementy wyboru są dynamicznie pobierane z Google Workspace.
Poniższy kod przedstawia menu wielokrotnego wyboru użytkowników Google Workspace.
Aby wypełnić listę użytkowników, pole wyboru ustawia parametr commonDataSource na wartość USER:
JSON
{
"selectionInput": {
"name": "contacts",
"type": "MULTI_SELECT",
"label": "Selected contacts",
"multiSelectMaxSelectedItems": 5,
"multiSelectMinQueryLength": 1,
"platformDataSource": {
"commonDataSource": "USER"
}
}
}
Poniższy kod pokazuje menu wielokrotnego wyboru pokoi czatu. Aby wypełnić pokoje, dane wejściowe wyboru określają pole hostAppDataSource. Menu wielokrotnego wyboru ustawia też właściwość defaultToCurrentSpace na true, co sprawia, że bieżący pokój jest domyślnym wyborem w menu:
JSON
{
"selectionInput": {
"name": "spaces",
"type": "MULTI_SELECT",
"label": "Selected contacts",
"multiSelectMaxSelectedItems": 3,
"multiSelectMinQueryLength": 1,
"platformDataSource": {
"hostAppDataSource": {
"chatDataSource": {
"spaceDataSource": {
"defaultToCurrentSpace": true
}
}
}
}
}
}
Wypełnianie elementów z zewnętrznego źródła danych
Menu wielokrotnego wyboru mogą też wypełniać elementy z zewnętrznego źródła danych. Aby użyć zewnętrznego źródła danych, określ pole externalDataSource w widżecie SelectionInput, które zawiera funkcję wysyłającą zapytania i zwracającą elementy ze źródła danych.
Aby zmniejszyć liczbę żądań wysyłanych do zewnętrznego źródła danych, możesz uwzględnić sugerowane elementy, które pojawiają się w menu wielokrotnego wyboru, zanim użytkownicy zaczną wpisywać tekst w menu. Możesz na przykład wyświetlić użytkownikowi ostatnio wyszukiwane kontakty. Aby wypełnić sugerowane elementy z zewnętrznego źródła danych, określ statyczne obiekty SelectionItem.
Poniższy przykładowy kod pokazuje menu wielokrotnego wyboru, które wysyła zapytania i wypełnia elementy z zewnętrznego źródła danych:
Node.js
Zastąp FUNCTION_URL punktem końcowym HTTP, który wysyła zapytania do zewnętrznego źródła danych.
Python
Zastąp FUNCTION_URL punktem końcowym HTTP, który wysyła zapytania do zewnętrznego źródła danych.
Java
Zastąp FUNCTION_URL punktem końcowym HTTP, który wysyła zapytania do zewnętrznego źródła danych.
Google Apps Script
Ten przykład wysyła wiadomość z kartą, zwracając kod JSON karty. Możesz też użyć usługi kart Apps Script.
Pełny przykład pokazujący, jak zwracać sugerowane elementy, znajdziesz w sekcji Sugerowanie elementów do wyboru.
Odbieranie danych z interaktywnych widżetów
Za każdym razem, gdy użytkownik kliknie przycisk, wywoływane jest działanie aplikacji do Google Chat z informacjami o interakcji. W obiekcie commonEventObject ładunku zdarzenia obiekt formInputs zawiera wszystkie wartości wprowadzone przez użytkownika.
Możesz pobrać wartości z obiektu event.commonEventObject.formInputs.WIDGET_NAME, gdzie WIDGET_NAME to pole name określone dla widżetu.
Wartości są zwracane jako określony typ danych widżetu.
Poniżej znajduje się fragment obiektu zdarzenia, w którym użytkownik wpisał wartości dla każdego widżetu:
{
"commonEventObject": { "formInputs": {
"contactName": { "stringInputs": {
"value": ["Kai 0"]
}},
"contactBirthdate": { "dateInput": {
"msSinceEpoch": 1000425600000
}},
"contactType": { "stringInputs": {
"value": ["Personal"]
}}
}}
}
Aby otrzymać dane, aplikacja Google Chat obsługuje obiekt zdarzenia, aby uzyskać wartości wpisane przez użytkowników w widżetach. W tabeli poniżej pokazano, jak uzyskać wartość danego widżetu danych wejściowych formularza. W tabeli podano typ danych akceptowany przez każdy widżet, miejsce przechowywania wartości w obiekcie zdarzenia oraz przykładową wartość.
| Widżet do wprowadzania danych w formularzu | Typ danych wejściowych | Wartość wejściowa z obiektu zdarzenia | Przykładowa wartość |
|---|---|---|---|
textInput |
stringInputs |
event.commonEventObject.formInputs.contactName.stringInputs.value[0] |
Kai O |
selectionInput |
stringInputs |
Aby uzyskać pierwszą lub jedyną wartość, event.commonEventObject.formInputs.contactType.stringInputs.value[0] |
Personal |
dateTimePicker, który akceptuje tylko daty. |
dateInput |
event.commonEventObject.formInputs.contactBirthdate.dateInput.msSinceEpoch. |
1000425600000 |
Po otrzymaniu danych aplikacja do Google Chat może wykonać dowolną z tych czynności:
- W przypadku kart zawierających menu wielokrotnego wyboru wypełniaj lub sugeruj elementy na podstawie tego, co użytkownik wpisuje w menu.
- Przenieś dane na inną kartę, aby użytkownik mógł sprawdzić swoje informacje lub przejść do następnej sekcji formularza.
- Odpowiedz użytkownikowi, aby potwierdzić, że formularz został wypełniony.
Sugerowanie elementów wyboru
Jeśli karta zawiera menu wielokrotnego wyboru lub menu, które wypełnia elementy z zewnętrznego źródła danych, aplikacja Google Chat może zwracać sugerowane elementy na podstawie tego, co użytkownicy wpisują w menu. Jeśli na przykład użytkownik zacznie wpisywać Atl w menu, które zawiera miasta w Stanach Zjednoczonych, aplikacja do Google Chat może automatycznie zasugerować Atlanta, zanim użytkownik skończy wpisywać. Aplikacja Google Chat może zasugerować maksymalnie 100 elementów.
Aby sugerować i dynamicznie wypełniać elementy w danych wejściowych wyboru, widżet SelectionInput na karcie musi określać funkcję, która wysyła zapytanie do zewnętrznego źródła danych. W przypadku menu wielokrotnego wyboru określasz pole externalDataSource. W przypadku menu określasz pole remoteDataSource w obiekcie DataSourceConfig.
Możesz też skonfigurować liczbę znaków, które użytkownik musi wpisać, zanim menu wyświetli sugestie. W przypadku menu wielokrotnego wyboru ustaw pole multiSelectMinQueryLength. W przypadku menu ustaw pole min_characters_trigger w DataSourceConfig.
Aby zwrócić sugerowane elementy, funkcja musi wykonać te czynności:
- Obsługiwać obiekt zdarzenia, który aplikacja do obsługi czatu otrzymuje, gdy użytkownicy wpisują tekst w menu.
- Z obiektu zdarzenia pobierz wartość wpisaną przez użytkownika, która jest reprezentowana w polu
event.commonEventObject.parameters["autocomplete_widget_query"]. - Wyślij zapytanie do źródła danych, używając wartości wprowadzonej przez użytkownika, aby uzyskać co najmniej 1
SelectionItemsdo zasugerowania użytkownikowi. - Zwróć sugerowane elementy, zwracając działanie
RenderActionsz obiektemmodifyCard.
Poniższy przykładowy kod pokazuje, jak aplikacja Google Chat dynamicznie sugeruje elementy w menu wielokrotnego wyboru na karcie. Gdy użytkownik wpisze coś w menu, funkcja lub punkt końcowy podany w polu externalDataSource widżetu wysyła zapytanie do zewnętrznego źródła danych i sugeruje elementy, które użytkownik może wybrać.
Node.js
Zastąp FUNCTION_URL punktem końcowym HTTP, który wysyła zapytania do zewnętrznego źródła danych.
Python
Zastąp FUNCTION_URL punktem końcowym HTTP, który wysyła zapytania do zewnętrznego źródła danych.
Java
Zastąp FUNCTION_URL punktem końcowym HTTP, który wysyła zapytania do zewnętrznego źródła danych.
Google Apps Script
Ten przykład wysyła wiadomość z kartą, zwracając kod JSON karty. Możesz też użyć usługi kart Apps Script.
Przenoszenie danych na inną kartę
Gdy użytkownik prześle informacje z karty, może być konieczne zwrócenie dodatkowych kart, aby:
- Ułatw użytkownikom wypełnianie dłuższych formularzy, tworząc osobne sekcje.
- Pozwól użytkownikom wyświetlić podgląd i potwierdzić informacje z początkowej karty, aby mogli sprawdzić swoje odpowiedzi przed przesłaniem.
- Dynamicznie wypełniaj pozostałe części formularza. Na przykład, aby zachęcić użytkowników do utworzenia spotkania, aplikacja Google Chat może wyświetlić początkową kartę z prośbą o podanie powodu spotkania, a następnie wypełnić kolejną kartę z dostępnymi godzinami na podstawie typu spotkania.
Aby przenieść dane wejściowe z początkowej karty, możesz utworzyć widżet button za pomocą actionParameters, które zawierają name widżetu i wartość wprowadzoną przez użytkownika, jak w tym przykładzie:
Node.js
Zastąp FUNCTION_URL punktem końcowym HTTP, który obsługuje kliknięcia przycisku.
Python
Zastąp FUNCTION_URL punktem końcowym HTTP, który obsługuje kliknięcia przycisku.
Java
Zastąp FUNCTION_URL punktem końcowym HTTP, który obsługuje kliknięcia przycisku.
Google Apps Script
Ten przykład wysyła wiadomość z kartą, zwracając kod JSON karty. Możesz też użyć usługi kart Apps Script.
Gdy użytkownik kliknie przycisk, aplikacja Google Chat otrzyma obiekt zdarzenia, z którego możesz pobrać dane.
Odpowiadanie na przesłany formularz
Po otrzymaniu danych z wiadomości z kartą lub okna dialogowego aplikacja do Google Chat odpowiada, potwierdzając odbiór lub zwracając błąd.
W tym przykładzie aplikacja do Google Chat wysyła wiadomość tekstową, aby potwierdzić, że otrzymała formularz przesłany z wiadomości z kartą.
Node.js
Python
Java
Google Apps Script
Ten przykład wysyła wiadomość z kartą, zwracając kod JSON karty. Możesz też użyć usługi kart Apps Script.
Aby przetworzyć i zamknąć okno, zwróć obiekt RenderActions, który określa, czy chcesz wysłać wiadomość z potwierdzeniem, zaktualizować pierwotną wiadomość lub kartę, czy po prostu zamknąć okno. Instrukcje znajdziesz w artykule Zamykanie okna.
Rozwiązywanie problemów
Ta sekcja zawiera instrukcje rozwiązywania problemów z określonymi kodami błędów i zachowaniami w czasie działania podczas interakcji z oknami w Google Chat.
Interakcje z oknem zwracają błąd „Podczas wywoływania dodatku wystąpił nieokreślony błąd”
Jeśli podczas interakcji z oknem dialogowym zobaczysz dzienniki błędów z komunikatem „Nieokreślony błąd podczas wywoływania dodatku” i kodem 13, zwykle oznacza to błąd wewnętrzny lub że punkt końcowy HTTP aplikacji Google Chat nie mógł przetworzyć żądania lub zwrócić prawidłowej odpowiedzi.
Aby rozwiązać ten problem:
- Sprawdź logi punktu końcowego HTTP pod kątem nieobsługiwanych wyjątków lub awarii.
- Sprawdź, czy Twój punkt końcowy odpowiada na żądania w ciągu 30 sekund. Jeśli wykonanie punktu końcowego trwa dłużej niż 30 sekund, Google Chat nie może przetworzyć odpowiedzi i interakcja się nie powiedzie. Więcej informacji znajdziesz w artykule Limity i sprawdzone metody.
- Upewnij się, że punkt końcowy zwraca prawidłową odpowiedź. W przypadku przesyłania okien punkt końcowy musi zwracać obiekt
RenderActionsw prawidłowym formacie JSON. Jeśli odpowiedź jest nieprawidłowo sformatowana lub nie zawiera wymaganych pól, interakcja z oknem może się nie powieść.
Gdy aplikacja Google Chat lub karta zwraca błąd, interfejs Google Chat wyświetla komunikat „Coś poszło nie tak”. lub „Nie udało się przetworzyć żądania”. Czasami interfejs Google Chat nie wyświetla żadnego komunikatu o błędzie, ale aplikacja lub karta Google Chat generuje nieoczekiwany wynik, np. wiadomość na karcie może się nie pojawić.
Chociaż komunikat o błędzie może nie wyświetlać się w interfejsie Google Chat, opisowe komunikaty o błędach i dane dziennika są dostępne, aby pomóc Ci naprawić błędy, gdy włączone jest rejestrowanie błędów w aplikacjach Google Chat. Pomoc dotyczącą wyświetlania, debugowania i naprawiania błędów znajdziesz w artykule Rozwiązywanie problemów z Google Chat.
Powiązane artykuły
- Wyświetl przykładową aplikację Contact Manager, która jest aplikacją do Google Chat proszącą użytkowników o wypełnienie formularza kontaktowego z wiadomości na kartach i okien dialogowych.
- Otwieranie interaktywnych okien
Aplikacje do obsługi czatu, które nie są dodatkami: odczytywanie danych formularza wprowadzonych przez użytkowników na kartach.
Poniższa dokumentacja dotyczy aplikacji do Google Chat, które nie są dodatkami do Google Workspace. Aby dowiedzieć się, jak przenieść aplikację do Google Chat, która nie jest dodatkiem, przeczytaj artykuł Przekształcanie aplikacji do Google Chat w dodatek do Google Workspace.
Tworzenie formularzy za pomocą kart
Poniższy kod przedstawia przykład aplikacji do Google Chat, która nie jest dodatkiem i używa formularza kontaktowego z polem tekstowym, selektorem daty i godziny oraz polem wyboru:
Node.js
Python
Java
Google Apps Script
Odbieranie danych z interaktywnych widżetów
Gdy użytkownicy klikną przycisk, aplikacje do Google Chat, które nie są dodatkami, otrzymują zdarzenie interakcji zależne od lokalizacji przycisku:
Jeśli przycisk znajduje się w wiadomości lub oknie, aplikacje Google Chat, które nie są dodatkami, otrzymują zdarzenie interakcji
CARD_CLICKEDzawierające informacje o interakcji. Ładunek zdarzeń interakcjiCARD_CLICKEDzawiera obiektcommon.formInputs(event.common.formInputs) z dowolnymi wartościami wprowadzonymi przez użytkownika.Możesz pobrać wartości z obiektu
common.formInputs.WIDGET_NAME, gdzie WIDGET_NAME to polenameokreślone dla widżetu. Wartości są zwracane jako określony typ danych widżetu (reprezentowany jako obiektInputs).Poniżej znajduje się fragment zdarzenia interakcji
CARD_CLICKED, w którym użytkownik wpisał wartości dla każdego widżetu:HTTP
{ "type": "CARD_CLICKED", "common": { "formInputs": { "contactName": { "stringInputs": { "value": ["Kai 0"] }}, "contactBirthdate": { "dateInput": { "msSinceEpoch": 1000425600000 }}, "contactType": { "stringInputs": { "value": ["Personal"] }} }} }Google Apps Script
{ "type": "CARD_CLICKED", "common": { "formInputs": { "contactName": { "": { "stringInputs": { "value": ["Kai 0"] }}}, "contactBirthdate": { "": { "dateInput": { "msSinceEpoch": 1000425600000 }}}, "contactType": { "": { "stringInputs": { "value": ["Personal"] }}} }} }Jeśli przycisk znajduje się na stronie głównej, aplikacje do Google Chat, które nie są dodatkami, otrzymują zdarzenie interakcji
SUBMIT_FORM. Ładunek zdarzenia interakcji zawiera obiektcommonEventObject.formInputs(event.commonEventObject.formInputs) z wartościami wprowadzonymi przez użytkownika.Możesz pobrać wartości z obiektu
commonEventObject.formInputs.WIDGET_NAME, gdzie WIDGET_NAME to polenameokreślone dla widżetu. Wartości są zwracane jako określony typ danych widżetu (reprezentowany jako obiektInputs).Poniżej znajduje się fragment zdarzenia interakcji
SUBMIT_FORM, w którym użytkownik wpisał wartości dla każdego widżetu:HTTP
{ "type": "SUBMIT_FORM", "commonEventObject": { "formInputs": { "contactName": { "stringInputs": { "value": ["Kai 0"] }}, "contactBirthdate": { "dateInput": { "msSinceEpoch": 1000425600000 }}, "contactType": { "stringInputs": { "value": ["Personal"] }} }} }Google Apps Script
{ "type": "SUBMIT_FORM", "commonEventObject": { "formInputs": { "contactName": { "": { "stringInputs": { "value": ["Kai 0"] }}}, "contactBirthdate": { "": { "dateInput": { "msSinceEpoch": 1000425600000 }}}, "contactType": { "": { "stringInputs": { "value": ["Personal"] }}} }} }
Aby otrzymać dane, aplikacja do Google Chat, która nie jest dodatkiem, obsługuje zdarzenie interakcji, aby uzyskać wartości wprowadzane przez użytkowników w widżetach. W tabeli poniżej pokazujemy, jak uzyskać wartość danego widżetu wejściowego formularza. W tabeli znajdziesz informacje o typach danych, które obsługuje dany widżet, o miejscu przechowywania wartości w zdarzeniu interakcji oraz przykładową wartość.
| Widżet do wprowadzania danych w formularzu | Typ danych wejściowych | Wartość wejściowa ze zdarzenia interakcji | Przykładowa wartość |
|---|---|---|---|
textInput |
stringInputs |
event.common.formInputs.contactName.stringInputs.value[0] |
Kai O |
selectionInput |
stringInputs |
Aby uzyskać pierwszą lub jedyną wartość, event.common.formInputs.contactType.stringInputs.value[0] |
Personal |
dateTimePicker, który akceptuje tylko daty. |
dateInput |
event.common.formInputs.contactBirthdate.dateInput.msSinceEpoch. |
1000425600000 |
Przenoszenie danych na inną kartę
Aby przenieść dane wejściowe z początkowej karty w aplikacji Google Chat, która nie jest dodatkiem, utwórz widżet button z actionParameters, które zawierają name widżetu i wartość wprowadzoną przez użytkownika, jak w tym przykładzie:
Node.js
Python
Java
Google Apps Script
Gdy użytkownik kliknie przycisk, aplikacja Google Chat, która nie jest dodatkiem, otrzyma zdarzenie interakcji CARD_CLICKED, z którego możesz pobrać dane.
Odpowiadanie na przesłany formularz
W tym przykładzie aplikacja do Google Chat, która nie jest dodatkiem, wysyła wiadomość tekstową, aby potwierdzić, że otrzymała formularz przesłany z okna lub wiadomości z kartą:
Node.js
Python
Java
Google Apps Script
Aby przetworzyć i zamknąć okno w aplikacji Google Chat, która nie jest dodatkiem, zwróć obiekt ActionResponse, który określa, czy chcesz wysłać wiadomość z potwierdzeniem, zaktualizować pierwotną wiadomość lub kartę, czy po prostu zamknąć okno. Instrukcje znajdziesz w artykule Zamykanie okna.