Halaman ini menjelaskan cara membuat beranda untuk Aplikasi Google Chat. Beranda aplikasi adalah antarmuka kartu yang dapat disesuaikan yang dikirim aplikasi Chat ke pengguna saat mereka membuka dengan aplikasi Chat.
Sebagai contoh, Anda dapat mengkonfigurasi pesan kartu beranda aplikasi guna menyertakan kiat untuk berinteraksi dengan aplikasi Chat menggunakan perintah garis miring. Untuk pengguna akhir, beranda aplikasi adalah hanya tersedia di pesan langsung aplikasi Chat jika pengembang aplikasi mengaktifkan fitur tersebut.
Gunakan Card Builder untuk mendesain dan melihat pratinjau pesan kartu JSON untuk aplikasi Chat:
Membuka Card BuilderPrasyarat
Python
- Google Workspace akun dengan akses ke Google Chat.
- Aplikasi Chat yang dipublikasikan. Untuk membangun aplikasi Chat, lihat ini panduan memulai.
- Aplikasi Google Chat yang dikonfigurasi untuk interaktivitas. Untuk selengkapnya informasi, lihat Konfigurasi aplikasi Google Chat untuk menerima peristiwa interaksi.
Apps Script
- Google Workspace akun dengan akses ke Google Chat.
- Aplikasi Chat yang dipublikasikan. Untuk membangun Aplikasi Chat, ikuti ini panduan memulai.
- Aplikasi Google Chat yang dikonfigurasi untuk interaktivitas. Untuk selengkapnya informasi, lihat Konfigurasi aplikasi Google Chat untuk menerima peristiwa interaksi.
Melakukan konfigurasi di Konsol Google Cloud
Python
Di Konsol Google Cloud, buka Menu > Produk lainnya > Google Workspace > Library Produk > Google Chat API.
Klik Manage, lalu klik tab Configuration.
Aktifkan Support App Home.
Pilih kotak centang Support App Home.
Di kolom URL Beranda Aplikasi, tambahkan URL. Nilai ini biasanya sama URL sebagai URL Aplikasi. URL ini dipanggil untuk Peristiwa
APP_HOME
.Klik Simpan.
Apps Script
Di Konsol Google Cloud, buka Menu > Produk lainnya > Google Workspace > Library Produk > Google Chat API.
Klik Manage, lalu klik tab Configuration.
Pilih kotak centang Support App Home.
Klik Simpan.
Mengonfigurasi aplikasi Chat Anda
Konfigurasi aplikasi Chat Anda untuk layar utama aplikasi.
Python
Saat pengguna membuka pesan langsung dari aplikasi Chat,
Peristiwa APP_HOME
dikirim ke aplikasi Chat Anda. Jika
Aplikasi Chat menerima peristiwa ini, instance JSON dari
RenderActions
ditampilkan dengan navigasi pushCard
.
@app.route('/', methods=['POST'])
def on_event():
event = request.get_json()
chat = event.get('chat')
if chat is not None:
return handle_chat_event(event)
def handle_chat_event(event):
if event['chat'].get('type') == 'APP_HOME':
return get_app_home_card()
def get_app_home_card():
return {
"action": {
"navigations": [
{
"pushCard": {
"sections": [
{
"widgets": [
{
"buttonList": {
"buttons": [
{
"text": "Open documentation",
"onClick": {
"openLink": {
"url": "https://developers.google.com/chat"
}
}
}
]
}
}
]
}
]
}
}
]
}
}
Apps Script
Contoh ini mengirimkan pesan kartu dengan mengembalikan JSON kartu. Anda juga dapat menggunakan Layanan kartu Apps Script.
Implementasikan fungsi onAppHome
untuk menampilkan instance JSON
RenderActions
dengan navigasi pushCard
:
// "onAppHome" is the pre-defined name of the callback that the Chat servers
// execute.
function onAppHome() {
return {
action: {
navigations: [
{
pushCard: getCard()
}
]
}
};
}
function getCard() {
return {
sections: [
{
widgets: [
{
buttonList: {
buttons: [
{
text: "Open documentation",
onClick: {
openLink: {
url: "https://developers.google.com/chat"
}
}
}
]
}
}
]
}
]
};
}
Memperbarui kartu beranda aplikasi
Kartu layar utama aplikasi dapat diperbarui saat pengguna mengirimkan informasi atau menutup
dialog. Misalnya, kartu beranda aplikasi awal
berisi pesan selamat datang yang
meminta pengguna untuk mengisi
formulir dengan informasi. Setelah pengguna menyelesaikan
, kartu layar utama aplikasi akan diperbarui. Update harus ditampilkan dengan instance
dari RenderActions
yang berisi navigasi updateCard
.
Python
Untuk aplikasi HTTP, memperbarui kartu beranda aplikasi mirip dengan
Memproses informasi yang dimasukkan oleh pengguna,
tetapi Anda harus menampilkan RenderActions
. invokedFunction
mewakili nama
fungsi yang dipanggil yang terkait dengan widget Card
. Untuk informasi selengkapnya,
lihat
CommonEventObject
Dalam contoh berikut,
submitForm
menunjukkan bahwa pengguna
telah mengirimkan formulir
data:
@app.route('/', methods=['POST'])
def on_event():
event = request.get_json()
chat = event.get('chat')
if chat is not None:
return handle_chat_event(event)
def handle_chat_event(event):
if event['chat'].get('type') == 'SUBMIT_FORM':
event_object = event.get('commonEventObject')
if event_object is not None:
// Forms
if 'submitForm' == event_object.get('invokedFunction'):
return {
'render_actions': {
'action': {
'navigations': [{
'updateCard': get_update_card()
}]
}
}
}
def get_update_card():
return {
"action": {
"navigations": [{
"pushCard": {
"sections": [{
"widgets": [{
"buttonList": {
"buttons": [{
"text": "Open documentation",
"onClick": {
"openLink": {
"url": "https://developers.google.com/chat"
}
},
}]
}
}]
}]
}
}]
}
}
Apps Script
Contoh ini mengirimkan pesan kartu dengan mengembalikan JSON kartu. Anda juga dapat menggunakan Layanan kartu Apps Script.
// Called from elsewhere (i.e. on button press).
function updateAppHomeCard(event) {
return {
render_actions: {
action: {
navigations: [
{
updateCard: getCard()
}
]
}
}
}
}
function getCard() {
return {
sections: [
{
widgets: [
{
buttonList: {
buttons: [
{
text: "Open documentation",
onClick: {
openLink: {
url: "https://developers.google.com/chat"
}
}
}
]
}
}
]
}
]
};
}
Batasan
Secara umum,
navigation
sama dengan
tidak tersedia untuk aplikasi Chat. Anda tidak dapat menampilkan tumpukan kartu.
Hanya pushCard
(untuk respons awal) dan updateCard
(untuk update) yang
yang tersedia untuk aplikasi Chat.
Topik terkait
Untuk membuka dialog, gunakan interaksi
OPEN_DIALOG
. Untuk informasi selengkapnya, lihat Buka dialog sebagai respons terhadap kartu layar utama aplikasi.Untuk menutup dialog, gunakan interaksi
CLOSE_DIALOG
untuk menutup dialog dan kembali ke kartu beranda aplikasi atau gunakanCLOSE_DIALOG_EXECUTE
untuk menutup dialog dan memuat ulang kartu beranda aplikasi. Sebagai informasi selengkapnya, lihat Merespons dialog untuk kartu layar utama aplikasi.Untuk contoh cara menggunakan layar utama aplikasi, lihat aplikasi Chat pengelolaan masalah di codelab Membuat aplikasi untuk Google Chat dengan Gemini.