Tindakan add-on

Tindakan add-on memberikan perilaku interaktif ke widget. Dengan membuat tindakan, Anda menentukan apa yang terjadi saat pengguna memilih atau memperbarui widget.

Pada umumnya, 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 menerapkan fungsi callback untuk mengambil 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:

  1. Buat objek Action, yang menentukan fungsi callback yang harus dijalankan beserta parameter yang diperlukan.
  2. Panggil fungsi pengendali widget yang sesuai pada widget menggunakan objek Action.
  3. Terapkan fungsi callback untuk menerapkan perilaku yang diperlukan.

Fungsi pengendali widget

Untuk menautkan widget ke Action tertentu atau perilaku lainnya, Anda menggunakan fungsi pengendali widget. Fungsi pengendali menentukan jenis interaksi (misalnya, mengklik widget atau mengedit kolom teks) yang memicu perilaku tindakan. Fungsi pengendali juga menentukan langkah-langkah yang diambil UI, jika ada, setelah tindakan selesai.

Tabel berikut mencantumkan berbagai jenis pengendali untuk widget dan widget yang digunakan:

Fungsi pengendali Memicu tindakan 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 menyisipkan 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 di 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 tulis UI Gmail. Anda dapat membuat draf sebagai pesan baru atau membalas pesan yang terbuka di Gmail. Saat pengendali memanggil fungsi callback pembuatan draf, pengendali akan meneruskan objek peristiwa ke fungsi callback. Lihat Pesan draf Compose untuk mengetahui 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 terbuka; jika tidak, biasanya lebih mudah 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
Membuka URL secara langsung saat pengguna mengklik widget. Gunakan pengendali ini jika Anda mengetahui URL 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 input TextInput Menetapkan Action yang menjalankan fungsi Apps Script saat pengguna memasukkan teks ke dalam widget input teks. Pengendali secara otomatis meneruskan objek peristiwa ke fungsi yang dipanggilnya. Lihat Saran pelengkapan otomatis untuk input teks untuk mengetahui detail selengkapnya.

Fungsi callback

Fungsi callback dijalankan saat Action terpicu. Karena fungsi callback adalah fungsi Apps Script, Anda dapat membuatnya melakukan hampir semua hal yang dapat dilakukan fungsi skrip lainnya.

Fungsi callback terkadang menampilkan objek respons tertentu. Jenis respons ini menunjukkan operasi tambahan yang perlu dilakukan setelah callback selesai dieksekusi, seperti menampilkan kartu baru atau menampilkan saran pelengkapan otomatis. Jika 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 dicoba Fungsi callback harus menampilkan
Beralih antarkartu 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 pengguna saat ini, seperti nilai saat ini dari semua widget interaktif di kartu yang ditampilkan.

Objek peristiwa tindakan memiliki struktur JSON tertentu yang mengatur informasi yang dikandungnya. 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.