Membuat antarmuka Google Kalender

Add-on Google Workspace dapat memberikan antarmuka yang disesuaikan saat pengguna melihat atau mengedit kalender dan acara Kalender. Dengan demikian, Anda dapat memberikan informasi tambahan yang relevan kepada pengguna, mengotomatiskan tugas, dan menghubungkan sistem pihak ketiga ke Google Kalender.

Saat mem-build antarmuka add-on untuk Google Kalender, Anda dapat menyediakan halaman beranda. Anda dapat menggunakan halaman beranda yang sama untuk beberapa penyelenggara, atau mendesain halaman beranda tertentu untuk Google Kalender.

Add-on Anda juga dapat menentukan antarmuka yang muncul saat pengguna membuka acara Kalender.

Mengakses UI add-on

Bergantung pada cara dibukanya, Add-on Google Workspace dapat menentukan antarmuka halaman beranda, antarmuka acara Google Kalender, antarmuka pemilihan lampiran, atau ketiganya:

  • Jika pengguna mengklik ikon add-on saat berada dalam tampilan kalender, add-on akan menjalankan fungsi calendar.homepageTrigger yang sesuai (jika ada). Fungsi ini membuat dan menampilkan kartu halaman beranda ke Kalender untuk ditampilkan. Jika tidak ada fungsi calendar.homepageTrigger yang ditentukan, kartu halaman beranda umum akan ditampilkan.
  • Jika pengguna membuka acara Kalender, lalu mengklik ikon add-on, atau add-on terbuka saat pengguna membuka acara, add-on akan menjalankan fungsi eventOpenTrigger yang sesuai (jika ada). Fungsi ini membuat antarmuka acara Kalender add-on dan kembali ke Google Kalender untuk ditampilkan.
  • Jika add-on menetapkan fungsi eventAttachmentTrigger, add-on akan muncul sebagai penyedia lampiran saat pengguna mengklik Tambahkan lampiran saat mengedit acara Kalender. Saat add-on dipilih, fungsi eventAttachmentTrigger akan membuat antarmuka pemilihan lampiran add-on dan menampilkannya ke Google Kalender untuk ditampilkan.

Membuat antarmuka Kalender add-on

Anda dapat memperluas Google Kalender dengan Add-on Google Workspace dengan mengikuti langkah-langkah berikut:

  1. Tentukan apakah Anda ingin add-on memiliki halaman beranda khusus Kalender. Tentukan juga apakah Anda ingin menyediakan antarmuka kustom saat pengguna mengedit acara Kalender.
  2. Tambahkan kolom addOns.common dan addOns.calendar yang sesuai ke manifes project skrip add-on, termasuk cakupan yang diperlukan.
  3. Jika Anda menyediakan halaman beranda khusus Kalender, terapkan fungsi calendar.homepageTrigger untuk mem-build antarmuka ini. Anda juga dapat memilih menggunakan antarmuka common.homepageTrigger untuk beberapa host Google Workspace.
  4. Jika menyediakan antarmuka acara Kalender, Anda harus mengimplementasikan fungsi calendar.eventOpenTrigger untuk mem-build antarmuka ini. Lihat Memperluas antarmuka acara Kalender untuk mengetahui detailnya.
  5. Terapkan fungsi callback terkait yang diperlukan untuk merespons interaksi UI pengguna, seperti klik tombol.

Halaman beranda Kalender

Google Kalender mendukung tampilan halaman beranda Add-on Google Workspace. Untuk menampilkan halaman beranda umum add-on di Google Kalender, cukup pastikan ada kolom addOns.calendar di manifes add-on.

Atau, tambahkan calendar.homepageTrigger ke manifes add-on untuk menyediakan halaman beranda khusus Kalender.

Dalam kedua kasus tersebut, Anda harus memberikan nama fungsi pemicu halaman beranda di project skrip add-on. Fungsi ini otomatis dipanggil untuk membuat halaman beranda Google Kalender saat diperlukan. Anda harus mengimplementasikan fungsi ini untuk mem-build dan menampilkan satu Card atau array objek Card yang membentuk halaman beranda. Fungsi pemicu halaman beranda meneruskan objek peristiwa sebagai parameter yang berisi beberapa informasi umum seperti platform klien. Anda dapat menggunakan data objek peristiwa untuk menyesuaikan pembuatan halaman beranda.

Memperluas antarmuka acara Kalender

Google Kalender mengandalkan pemicu kontekstual untuk menentukan antarmuka (jika ada) yang akan ditampilkan saat pengguna mengedit acara Kalender. Saat diaktifkan, pemicu akan menjalankan fungsi pemicu kontekstual yang ditentukan oleh kolom calendar.eventOpenTrigger dalam manifest add-on.

Anda harus mengimplementasikan fungsi yang dinamai di kolom calendar.eventOpenTrigger. Fungsi ini menerima objek peristiwa sebagai argumen dan harus menampilkan satu objek Card atau array objek Card agar Kalender dapat ditampilkan saat pengguna membuka peristiwa tersebut.

Objek peristiwa

Objek peristiwa dibuat dan diteruskan ke fungsi pemicu kontekstual calendar.eventOpenTrigger saat pengguna membuka acara Kalender. Fungsi pemicu dapat menggunakan informasi dalam objek peristiwa ini untuk menentukan cara membuat kartu add-on atau mengontrol perilaku add-on. Objek peristiwa juga dibuat dan diteruskan ke fungsi homepageTrigger saat add-on pertama kali dibuka, dan saat pengguna mengklik atau memilih widget interaktif.

Struktur lengkap objek peristiwa dijelaskan dalam Objek peristiwa. Jika Kalender adalah aplikasi host yang bertindak sebagai add-on, pemicu kontekstual dan objek peristiwa interaksi widget menyertakan kolom objek peristiwa Kalender yang membawa informasi klien khusus Kalender.

Memperbarui acara Kalender

Selain calendar.eventOpenTrigger kontekstual yang diaktifkan saat pengguna membuka acara Kalender untuk diedit, Anda juga dapat menentukan calendar.eventUpdateTrigger yang diaktifkan saat pengguna memperbarui dan menyimpan acara Kalender. Pemicu ini hanya terpicu jika pengguna melakukan satu atau beberapa pengeditan berikut:

  • Menambahkan satu atau beberapa tamu.
  • Menghapus satu atau beberapa tamu.
  • Menambahkan atau beralih ke solusi konferensi yang berbeda.

Saat diaktifkan, pemicu ini akan mengeksekusi fungsi pemicu yang ditentukan oleh kolom manifes calendar.eventUpdateTrigger. Fungsi ini dieksekusi sebelum pengeditan peristiwa Kalender disimpan.

calendar.eventUpdateTrigger biasanya digunakan untuk melakukan satu atau beberapa hal berikut:

  • Perbarui antarmuka acara Kalender add-on sebagai respons terhadap perubahan pengguna pada acara Kalender.
  • Menyinkronkan data acara Kalender dengan sistem pihak ketiga, seperti sistem konferensi yang terhubung ke Google Kalender.

Jika Anda memerlukan add-on untuk melakukan penyesuaian pada data acara Kalender (seperti daftar tamu), Anda harus menetapkan kolom manifes calendar.currentEventAccess add-on ke WRITE atau READ_WRITE. Hal ini juga memerlukan add-on untuk memiliki cakupan https://www.googleapis.com/auth/calendar.addons.current.event.write.

Menambahkan solusi konferensi

Solusi konferensi mewakili opsi konferensi pihak ketiga yang dapat dilampirkan pengguna ke acara Google Kalender. Dokumentasi Ringkasan konferensi pihak ketiga memberikan detail tentang cara mem-build add-on yang menambahkan solusi konferensi baru. Tidak perlu membuat UI untuk jenis ekstensi ini; solusi tambahan hanya muncul sebagai opsi di menu drop-down dalam UI acara Google Kalender.