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

Вы можете использовать главную страницу приложения, чтобы поделиться советами по взаимодействию с приложением Chat или предоставить пользователям доступ и использование внешней службы или инструмента Chat.
Используйте конструктор карточек для разработки и предварительного просмотра сообщений и пользовательских интерфейсов для приложений чата:
Откройте конструктор карточекПредварительные условия
Настройте домашнюю страницу приложения для вашего приложения Chat
Чтобы поддерживать домашнюю страницу приложения, вы должны настроить свое приложение Chat на получение событий взаимодействия APP_HOME
. Ваше приложение Chat получает это событие каждый раз, когда пользователь щелкает вкладку «Главная» в прямом сообщении с приложением Chat.
Чтобы обновить настройки конфигурации в консоли Google Cloud, выполните следующие действия:
В консоли Google Cloud выберите Меню > продукты > Google Workspace > Библиотека продуктов > Google Chat API .
Нажмите «Управление» , а затем перейдите на вкладку «Конфигурация» .
В разделе «Интерактивные функции » перейдите в раздел «Функциональность» , чтобы настроить домашнюю страницу приложения:
- Установите флажок Получать сообщения 1:1 .
- Установите флажок «Домашняя страница приложения поддержки» .
Если ваше приложение чата использует службу HTTP, перейдите в настройки подключения и укажите конечную точку в поле «Домашний URL-адрес приложения» . Вы можете использовать тот же URL-адрес, который вы указали в поле URL-адрес конечной точки HTTP .
Нажмите Сохранить .
Создайте домашнюю карточку приложения
Когда пользователь открывает домашнюю страницу приложения, ваше приложение Chat должно обработать событие взаимодействия APP_HOME
, возвращая экземпляр RenderActions
с навигацией pushCard
и Card
. Чтобы создать интерактивный интерфейс, карточка может содержать интерактивные виджеты, такие как кнопки или текстовые вводы, которые приложение чата может обрабатывать и реагировать с помощью дополнительных карточек или диалога.
В следующем примере приложение Chat отображает начальную домашнюю карточку приложения, на которой отображается время создания карточки, а также кнопка. Когда пользователь нажимает кнопку, приложение Chat возвращает обновленную карточку, на которой отображается время создания обновленной карточки.
Реализуйте функцию onAppHome
, которая вызывается после всех событий взаимодействия APP_HOME
:
В этом примере отправляется карточное сообщение, возвращая card JSON . Вы также можете использовать сервис карточек Apps Script .
Отвечайте на взаимодействия с приложением на главной странице
Если ваша исходная домашняя карточка приложения содержит интерактивные виджеты, такие как кнопки или средства выбора, ваше приложение Chat должно обрабатывать соответствующие события взаимодействия, возвращая экземпляр RenderActions
с навигацией updateCard
. Дополнительные сведения об работе с интерактивными виджетами см. в разделе Обработка информации, введенной пользователями .
В предыдущем примере исходная домашняя карточка приложения содержала кнопку. Всякий раз, когда пользователь нажимает кнопку, событие взаимодействия CARD_CLICKED
запускает функцию updateAppHome
для обновления домашней карточки приложения, как показано в следующем коде:
В этом примере отправляется карточное сообщение, возвращая card JSON . Вы также можете использовать сервис карточек Apps Script .
Открытие диалогов
Ваше приложение чата также может реагировать на взаимодействия на главной странице приложения, открывая диалоговые окна .

Чтобы открыть диалоговое окно из домашней страницы приложения, обработайте связанное событие взаимодействия, вернув renderActions
с навигацией updateCard
, содержащей объект Card
. В следующем примере приложение чата реагирует на нажатие кнопки на главной карточке приложения, обрабатывая событие взаимодействия CARD_CLICKED
и открывая диалоговое окно:
{ renderActions: { action: { navigations: [{ updateCard: { sections: [{
header: "Add new contact",
widgets: [{ "textInput": {
label: "Name",
type: "SINGLE_LINE",
name: "contactName"
}}, { textInput: {
label: "Address",
type: "MULTIPLE_LINE",
name: "address"
}}, { decoratedText: {
text: "Add to favorites",
switchControl: {
controlType: "SWITCH",
name: "saveFavorite"
}
}}, { decoratedText: {
text: "Merge with existing contacts",
switchControl: {
controlType: "SWITCH",
name: "mergeContact",
selected: true
}
}}, { buttonList: { buttons: [{
text: "Next",
onClick: { action: { function: "openSequentialDialog" }}
}]}}]
}]}}]}}}
Чтобы закрыть диалог, обработайте следующие события взаимодействия:
-
CLOSE_DIALOG
: закрывает диалоговое окно и возвращает к исходной домашней карточке приложения Chat. -
CLOSE_DIALOG_AND_EXECUTE
: закрывает диалоговое окно и обновляет домашнюю карточку приложения.
В следующем примере кода CLOSE_DIALOG
используется для закрытия диалогового окна и возврата к домашней карточке приложения:
{ renderActions: { action: {
navigations: [{ endNavigation: { action: "CLOSE_DIALOG" }}]
}}}
Для сбора информации от пользователей также можно строить последовательные диалоги. Чтобы узнать, как создавать последовательные диалоги, см. раздел Открытие диалогов и ответ на них .
Связанные темы
- Просмотрите примеры приложений чата , в которых используется домашняя страница приложения.
- Открывайте диалоги и отвечайте на них .