Tindakan add-on memberikan perilaku interaktif untuk widget. Dengan membuat tindakan, Anda menentukan apa yang akan terjadi saat pengguna memilih atau mengupdate widget.
Dalam sebagian besar kasus, Anda dapat menentukan tindakan add-on menggunakan objek Action
yang disediakan oleh Layanan kartu Apps Script.
Setiap Action
dikaitkan dengan fungsi callback saat Anda membuatnya. Anda mengimplementasikan fungsi callback
untuk melakukan langkah-langkah yang diinginkan saat pengguna berinteraksi dengan widget. Anda juga harus
menautkan Action
ke widget
menggunakan fungsi pengendali widget yang sesuai yang
menentukan jenis interaksi yang memicu callback
Action
.
Konfigurasikan widget dengan Action
menggunakan proses umum ini:
- Buat objek
Action
, dengan menentukan fungsi callback yang harus dijalankan bersama dengan parameter yang diperlukannya. - Panggil fungsi pengendali widget
yang sesuai di widget menggunakan objek
Action
. - Implementasikan fungsi callback untuk menerapkan perilaku yang diperlukan.
Fungsi pengendali widget
Untuk menautkan widget ke Action
tertentu atau perilaku lainnya, gunakan fungsi pengendali widget. Fungsi pengendali menentukan jenis interaksi
(misalnya, mengklik widget atau mengedit kolom teks) memicu
perilaku tindakan. Fungsi pengendali juga menentukan langkah yang diambil UI, jika ada, setelah tindakan selesai.
Tabel berikut mencantumkan berbagai jenis pengendali untuk widget dan widget yang digunakannya:
Fungsi pengendali | Tindakan pemicu | Widget yang berlaku | Deskripsi |
---|---|---|---|
setOnChangeAction() |
Nilai widget berubah |
DatePicker DateTimePicker SelectionInput Switch TextInput
TimePicker
|
Menetapkan Action
yang menjalankan fungsi Apps Script saat widget kehilangan fokus, seperti
saat pengguna memasukkan teks dalam input dan menekan Enter. Pengendali secara otomatis meneruskan objek peristiwa ke fungsi yang dipanggilnya.
Anda dapat memasukkan informasi parameter tambahan dalam objek peristiwa ini jika diinginkan. |
setOnClickAction() |
Pengguna mengklik widget |
CardAction Image ImageButton DecoratedText TextButton
|
Menetapkan Action
yang menjalankan fungsi Apps Script saat pengguna mengklik widget. Pengendali secara otomatis meneruskan objek peristiwa ke fungsi yang dipanggilnya.
Anda dapat menyisipkan informasi parameter opsional dalam objek peristiwa ini. |
setComposeAction() |
Pengguna mengklik widget |
CardAction Image ImageButton DecoratedText TextButton
|
Khusus Gmail. Menetapkan Action yang membuat draf email, lalu menampilkan draf tersebut kepada pengguna di jendela penulisan UI Gmail. Anda dapat membuat draf sebagai pesan baru atau balasan untuk pesan yang terbuka di Gmail. Saat memanggil fungsi callback pembuatan draf, pengendali akan meneruskan objek peristiwa ke fungsi callback.
Lihat Pesan draf Compose untuk detail selengkapnya. |
setOnClickOpenLinkAction() |
Pengguna mengklik widget |
CardAction Image ImageButton DecoratedText TextButton
|
Menetapkan Action
untuk membuka URL saat pengguna mengklik widget. Gunakan pengendali ini saat Anda
harus membuat URL atau tindakan lain harus dilakukan sebelum link
dibuka; jika tidak, biasanya menggunakan setOpenLink() .
Anda hanya dapat membuka URL di jendela baru. Saat ditutup, Anda dapat menyebabkan
UI memuat ulang add-on. |
setOpenLink() |
Pengguna mengklik widget |
CardAction Image ImageButton DecoratedText TextButton
|
Langsung membuka URL saat pengguna mengklik widget. Gunakan pengendali ini jika Anda mengetahui URL tersebut dan hanya perlu membukanya; jika tidak, gunakan setOnClickOpenLinkAction() .
Anda dapat membuka URL di jendela baru atau di overlay. Saat ditutup, Anda
dapat menyebabkan UI memuat ulang add-on. |
setSuggestionsAction() |
Pengguna memasukkan teks ke dalam input |
TextInput
|
Menetapkan Action
yang menjalankan fungsi Apps Script saat pengguna memasukkan teks ke
widget input teks. Pengendali secara otomatis meneruskan objek peristiwa ke fungsi yang dipanggilnya.
Lihat
Saran pelengkapan otomatis
untuk input teks untuk detail selengkapnya. |
Fungsi callback
Fungsi callback dieksekusi saat Action
dipicu. Karena fungsi callback adalah fungsi Apps Script, Anda dapat membuatnya
melakukan hampir semua fungsi skrip lainnya.
Fungsi callback terkadang menampilkan objek respons tertentu. Jenis respons ini menunjukkan operasi tambahan yang perlu terjadi setelah callback selesai dijalankan, seperti menampilkan kartu baru atau menampilkan saran pelengkapan otomatis. Saat fungsi callback harus menampilkan objek respons tertentu, Anda menggunakan class builder di Layanan kartu untuk membuat objek tersebut.
Tabel berikut menunjukkan kapan fungsi callback Anda harus menampilkan objek respons tertentu untuk tindakan tertentu. Semua tindakan ini tidak bergantung pada aplikasi host tertentu yang diperluas oleh add-on:
Tindakan yang dicoba | Fungsi callback akan ditampilkan |
---|---|
Berpindah-pindah di antara kartu | ActionResponse |
Menampilkan Notification |
ActionResponse |
Membuka link menggunakan setOnClickOpenLinkAction() |
ActionResponse |
Menampilkan saran pelengkapan otomatis | SuggestionResponse |
Menggunakan tindakan universal | UniversalActionResponse |
Tindakan lainnya | Nothing |
Selain tindakan ini, setiap aplikasi host memiliki kumpulan tindakannya sendiri yang hanya dapat dilakukan di host tersebut. Untuk mengetahui detailnya, lihat panduan berikut:
Objek peristiwa tindakan
Saat add-on memicu Action
,
UI akan otomatis membuat objek peristiwa JSON dan meneruskannya sebagai
argumen ke fungsi callback Action
. Objek peristiwa ini berisi informasi tentang konteks sisi klien
saat ini milik pengguna, seperti nilai saat ini dari semua widget interaktif
dalam kartu yang ditampilkan.
Objek peristiwa tindakan memiliki struktur JSON spesifik yang mengatur informasi yang ada di dalamnya. Struktur yang sama digunakan saat pemicu halaman beranda diaktifkan untuk membuat halaman beranda, atau saat pemicu kontekstual diaktifkan untuk memperbarui tampilan add-on.
Lihat Objek peristiwa untuk penjelasan lengkap tentang struktur objek peristiwa.