Tutorial ini menunjukkan cara membuat aplikasi Google Chat yang merespons insiden secara real time. Saat merespons insiden, aplikasi akan membuat dan mengisi ruang Chat, memfasilitasi penyelesaian insiden dengan pesan, perintah garis miring, dan dialog, serta menggunakan AI untuk meringkas respons insiden dalam dokumen Google Dokumen.
Insiden adalah peristiwa yang perlu segera ditangani oleh tim yang terdiri dari orang-orang. Contoh insiden meliputi:
- Kasus mendesak dibuat di platform Pengelolaan Hubungan Pelanggan (CRM), sehingga tim layanan harus berkolaborasi dalam menyelesaikan masalah.
- Sebuah sistem akan offline, memberi tahu sekelompok Site Reliability Engineer (SRE) agar mereka dapat bekerja sama untuk mengembalikannya ke internet.
- Gempa bumi berkekuatan tinggi terjadi, dan pekerja darurat perlu mengoordinasikan respons mereka.
Untuk tujuan tutorial ini, notifikasi insiden dimulai saat seseorang melaporkan insiden dengan klik tombol dari halaman web. Halaman web menyimulasikan insiden dengan meminta pengguna memasukkan informasi insiden dasar: judul, deskripsi, dan alamat email responden.
Lihat cara kerja aplikasi Chat manajemen insiden:
-
Gambar 2. Notifikasi bahwa ruang Chat insiden dibuat. -
Gambar 3. Ruang Chat respons insiden. -
Gambar 4. Menyelesaikan insiden dengan perintah garis miring. -
Gambar 5. Dialog penyelesaian insiden. -
Gambar 6. Dokumen Google Dokumen resolusi insiden dibagikan di ruang. -
Gambar 7. Dokumen Google Dokumen penyelesaian insiden ringkasan AI.
Prasyarat
Jika Anda perlu mengaktifkan salah satu prasyarat tersebut untuk organisasi Anda, minta administrator Google Workspace untuk mengaktifkannya:
- Akun Google Workspace dengan akses ke Google Chat.
- Mengaktifkan Direktori (berbagi kontak) untuk Google Workspace. Aplikasi insiden menggunakan direktori untuk mencari info kontak responden insiden, seperti nama dan alamat email. Perespons insiden harus merupakan pengguna dengan akun Google Chat di organisasi Google Workspace Anda.
Tujuan
- Bangun aplikasi Chat yang merespons insiden.
- Bantu pengguna merespons insiden dengan melakukan hal berikut:
- Membuat ruang respons insiden.
- Memposting pesan yang meringkas insiden dan respons.
- Mendukung kolaborasi dengan fitur aplikasi Chat interaktif.
- Meringkas percakapan dan resolusi dengan Vertex AI.
Arsitektur
Diagram berikut menunjukkan arsitektur resource Google Workspace dan Google Cloud yang digunakan oleh aplikasi Google Chat respons insiden.
Arsitektur ini menunjukkan cara aplikasi Google Chat respons insiden memproses insiden dan resolusi.
Pengguna memulai insiden dari situs eksternal yang dihosting di Apps Script.
Situs mengirimkan permintaan HTTP asinkron ke aplikasi Google Chat, yang juga dihosting di Apps Script.
Aplikasi Google Chat respons insiden akan memproses permintaan tersebut:
Layanan Apps Script Admin SDK mendapatkan informasi anggota tim, seperti ID pengguna dan alamat email.
Dengan serangkaian permintaan HTTP ke Chat API menggunakan layanan Chat Lanjutan Apps Script, aplikasi Google Chat respons insiden akan membuat ruang Chat insiden, mengisinya dengan anggota tim, dan mengirim pesan ke ruang tersebut.
Anggota tim mendiskusikan insiden di ruang Chat.
Anggota tim memanggil perintah garis miring untuk menandakan penyelesaian pada insiden.
Panggilan HTTP ke Chat API menggunakan layanan Chat Lanjutan Apps Script akan mencantumkan semua pesan Chat ruang.
Vertex AI menerima pesan yang tercantum dan membuat ringkasan.
Layanan
DocumentApp
Apps Script membuat dokumen Dokumen dan menambahkan ringkasan Vertex AI ke dokumen tersebut.Aplikasi Google Chat respons insiden memanggil Chat API untuk mengirim pesan yang membagikan link ke dokumen ringkasan Dokumen.
Menyiapkan lingkungan
Bagian ini menunjukkan cara membuat dan mengonfigurasi project Google Cloud untuk aplikasi Chat.
Membuat project Google Cloud
Konsol Google Cloud
- Di konsol Google Cloud, buka Menu > IAM & Admin > Create a Project.
-
Di kolom Project Name, masukkan nama deskriptif untuk project Anda.
Opsional: Untuk mengedit ID Project, klik Edit. Project ID tidak dapat diubah setelah project dibuat. Jadi, pilih ID yang sesuai dengan kebutuhan Anda sepanjang waktu project tersebut.
- Di kolom Location, klik Browse untuk menampilkan lokasi potensial project. Kemudian, klik Select.
- Klik Create. Konsol Google Cloud akan membuka halaman Dashboard dan project Anda akan dibuat dalam beberapa menit.
gcloud CLI
Di salah satu lingkungan pengembangan berikut, akses Google Cloud CLI (`gcloud`):
-
Cloud Shell: Untuk menggunakan terminal online dengan gcloud CLI yang sudah disiapkan, aktifkan Cloud Shell.
Mengaktifkan Cloud Shell -
Local Shell: Untuk menggunakan lingkungan pengembangan lokal,
instal dan
initialize
gcloud CLI.
Untuk membuat project Cloud, gunakan perintah `gcloud projects create`:gcloud projects create PROJECT_ID
Mengaktifkan penagihan untuk project Cloud
Konsol Google Cloud
- Di konsol Google Cloud, buka Billing. Klik Menu > Penagihan > Project Saya.
- Di bagian Select an organization, pilih organisasi yang terkait dengan project Google Cloud Anda.
- Di baris project, buka menu Actions ( ), klik Change billing, dan pilih akun Penagihan Cloud.
- Klik Tetapkan akun.
gcloud CLI
- Untuk menampilkan akun penagihan yang tersedia, jalankan:
gcloud billing accounts list
- Tautkan akun penagihan dengan project Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Ganti kode berikut:
PROJECT_ID
adalah Project ID untuk project Cloud yang ingin Anda aktifkan penagihannya.BILLING_ACCOUNT_ID
adalah ID akun penagihan yang akan ditautkan dengan project Google Cloud.
Mengaktifkan API
Konsol Google Cloud
Di konsol Google Cloud, aktifkan Google Chat API, Google Docs API, Admin SDK API, dan Vertex AI API.
Pastikan Anda mengaktifkan API di project Cloud yang benar, lalu klik Next.
Pastikan Anda mengaktifkan API yang benar, lalu klik Enable.
gcloud CLI
Jika perlu, tetapkan project Cloud saat ini ke project yang Anda buat menggunakan perintah
gcloud config set project
:gcloud config set project PROJECT_ID
Ganti PROJECT_ID dengan Project ID dari project Cloud yang Anda buat.
Aktifkan Google Chat API, Google Docs API, Admin SDK API, dan Vertex AI API dengan perintah
gcloud services enable
:gcloud services enable chat.googleapis.com docs.googleapis.com admin.googleapis.com aiplatform.googleapis.com
Menyiapkan autentikasi dan otorisasi
Autentikasi dan otorisasi memungkinkan aplikasi Chat mengakses resource di Google Workspace dan Google Cloud untuk memproses respons insiden.
Dalam tutorial ini, Anda akan memublikasikan aplikasi secara internal sehingga boleh menggunakan informasi placeholder. Sebelum memublikasikan aplikasi secara eksternal, ganti informasi placeholder dengan informasi sebenarnya untuk layar izin.
Di konsol Google Cloud, buka Menu > APIs & Services > OAuth consent screen.
Di bagian Jenis pengguna, pilih Internal, lalu klik Buat.
Di App name, ketik
Incident Management
.Di Email dukungan pengguna, pilih alamat email Anda atau grup Google yang sesuai.
Di bagian Informasi kontak developer, masukkan alamat email Anda.
Klik Save and Continue.
Klik Tambahkan atau Hapus Cakupan. Sebuah panel akan muncul dan berisi daftar cakupan untuk setiap API yang telah diaktifkan di project Cloud Anda.
Pada bagian Tambahkan cakupan secara manual, tempel cakupan berikut:
https://www.googleapis.com/auth/chat.spaces.create
https://www.googleapis.com/auth/chat.memberships
https://www.googleapis.com/auth/chat.memberships.app
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/admin.directory.user.readonly
https://www.googleapis.com/auth/script.external_request
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/cloud-platform
Klik Add to Table.
Klik Perbarui.
Klik Save and Continue.
Tinjau ringkasan pendaftaran aplikasi, lalu klik Kembali ke Dasbor.
Membuat dan men-deploy aplikasi Chat
Di bagian berikut, Anda akan menyalin dan mengupdate seluruh project Apps Script yang berisi semua kode aplikasi yang diperlukan untuk aplikasi Chat Anda, sehingga Anda tidak perlu menyalin dan menempel setiap file.
Beberapa fungsi menyertakan garis bawah di akhir namanya, seperti processSlashCommand_()
dari ChatApp.gs
. Garis bawah menyembunyikan fungsi dari halaman web inisialisasi insiden saat dibuka di browser. Untuk mengetahui informasi selengkapnya, lihat Fungsi pribadi.
Apps Script mendukung dua jenis file, skrip .gs
dan file
.html
. Untuk mematuhi dukungan ini, JavaScript sisi klien aplikasi disertakan
dalam tag <script />
dan CSS-nya disertakan di dalam tag <style />
di dalam
file HTML.
Anda juga dapat melihat seluruh project di GitHub.
Berikut ini ringkasan setiap file:
Consts.gs
Menentukan konstanta yang dirujuk oleh file kode lain, termasuk project ID Cloud, ID lokasi Vertex AI, dan ID perintah garis miring untuk menutup insiden.
Lihat kode
Consts.gs
ChatApp.gs
Menangani peristiwa interaksi Chat, termasuk pesan, klik kartu, perintah garis miring, dan dialog. Merespons perintah garis miring
/closeIncident
dengan membuka dialog untuk mengumpulkan detail resolusi insiden. Membaca pesan dalam ruang dengan memanggil metodespaces.messages.list
di Chat API. Mendapatkan ID pengguna menggunakan layanan Direktori Admin SDK di Apps Script.Lihat kode
ChatApp.gs
ChatSpaceCreator.gs
Menerima data formulir yang dimasukkan pengguna di halaman web inisialisasi insiden, dan menggunakannya untuk menyiapkan ruang Chat dengan membuat dan mengisinya, lalu memposting pesan tentang insiden.
Lihat kode
ChatSpaceCreator.gs
DocsApi.gs
Memanggil Google Docs API untuk membuat dokumen Google Dokumen di Google Drive pengguna dan menulis ringkasan informasi insiden, yang dibuat di
VertexAiApi.gs
, ke dokumen tersebut.Lihat kode
DocsApi.gs
VertexAiApi.gs
Merangkum percakapan di ruang Chat menggunakan Vertex AI. Ringkasan ini diposting dalam dokumen yang dibuat khusus di
DocsAPI.gs
.Lihat kode
VertexAiApi.gs
WebController.gs
Menyajikan situs inisialisasi insiden.
Lihat kode
WebController.gs
Index.html
HTML yang berisi situs inisialisasi insiden.
Lihat kode
Index.html
JavaScript.html
Menangani perilaku formulir termasuk pengiriman, error, dan penghapusan, untuk situs inisialisasi insiden. Fungsi ini disertakan ke dalam
Index.html
oleh fungsiinclude
kustom diWebController.gs
.Lihat kode
JavaScript.html
Stylesheet.html
CSS untuk situs inisialisasi insiden. Disertakan ke dalam
Index.html
oleh fungsiinclude
kustom diWebController.gs
.Lihat kode
Stylesheet.html
Menemukan nomor dan ID project Cloud
Di konsol Google Cloud, buka project Cloud Anda.
Klik Setelan dan Utilitas > Setelan project.
Catat nilai di kolom Project number dan Project ID. Anda akan menggunakannya di bagian berikut.
Membuat project Apps Script
Untuk membuat project Apps Script dan menghubungkannya dengan project Cloud Anda:
- Klik tombol berikut untuk membuka project Apps Script Respons insiden dengan Google Chat.
Buka project - Klik Ringkasan.
- Di halaman ringkasan, klik Buat salinan.
Beri nama salinan project Apps Script Anda:
Klik Salin Respons insiden dengan Google Chat.
Di Project title, ketik
Incident Management Chat app
.Klik Ganti nama.
Di salinan project Apps Script, buka file
Consts.gs
dan gantiYOUR_PROJECT_ID
dengan ID project Cloud Anda.
Menetapkan project Cloud project Apps Script
- Di project Apps Script, klik Setelan Project.
- Pada Google Cloud Platform (GCP) Project, klik Change project.
- Di GCP project number, tempel nomor project project Cloud Anda.
- Klik Set project. Project Cloud dan project Apps Script kini telah terhubung.
Membuat deployment Apps Script
Setelah semua kode siap, deploy project Apps Script. Anda dapat menggunakan ID deployment saat mengonfigurasi aplikasi Chat di Google Cloud.
Di Apps Script, buka project aplikasi respons insiden.
Klik Deploy > New deployment.
Jika Add-on dan Web app belum dipilih, di samping Select type, klik deployment types , lalu pilih Add-on dan Web app.
Di Description, masukkan deskripsi untuk versi ini, seperti
Complete version of incident management app
.Di bagian Execute as, pilih Pengguna yang mengakses aplikasi web
Di bagian Siapa yang memiliki akses, pilih Siapa saja dalam organisasi Workspace Anda, dengan "organisasi Workspace Anda" adalah nama organisasi Google Workspace Anda.
Klik Deploy. Apps Script melaporkan deployment yang berhasil dan memberikan ID deployment serta URL untuk halaman web inisialisasi insiden.
Catat URL Aplikasi web untuk dikunjungi nanti saat Anda memulai insiden. Salin ID Deployment. Anda dapat menggunakan ID ini saat mengonfigurasi aplikasi Chat di Konsol Google Cloud.
Klik Done.
Mengonfigurasi aplikasi Chat di konsol Google Cloud
Bagian ini menunjukkan cara mengonfigurasi Google Chat API di Konsol Google Cloud dengan informasi tentang aplikasi Chat Anda, termasuk ID deployment yang baru saja dibuat dari project Apps Script.
Di konsol Google Cloud, klik Menu > More products > Google Workspace > Product Library > Google Chat API > Manage > Configuration.
Di App name, ketik
Incident Management
.Di Avatar URL, ketik
https://developers.google.com/chat/images/quickstart-app-avatar.png
.Di Description, ketik
Responds to incidents.
.Klik tombol Enable Interactive features ke posisi aktif.
Di bagian Functionality, pilih Receive 1:1 messages, Join spaces and group conversations.
Di bawah Connection settings, pilih Apps Script project.
Di ID Deployment, tempel ID Deployment Apps Script yang Anda salin sebelumnya dari deployment project Apps Script.
Daftarkan perintah garis miring yang digunakan oleh aplikasi Chat yang diimplementasikan sepenuhnya:
Di bagian Perintah garis miring, klik Tambahkan perintah garis miring.
Pada Name, ketik
/closeIncident
.Di Command ID, ketik
1
.Di Description, ketik
Closes the incident being discussed in the space.
Pilih Opens a dialog.
Klik Done. Perintah garis miring telah didaftarkan dan dicantumkan.
Di bagian Visibility, pilih Jadikan aplikasi Chat ini tersedia untuk orang dan grup tertentu di Domain Workspace Anda, lalu masukkan alamat email.
Di bagian Logs, pilih Log errors to Logging.
Klik Save. Pesan konfigurasi tersimpan akan muncul, yang berarti aplikasi siap diuji.
Menguji aplikasi Chat
Untuk menguji aplikasi Chat manajemen insiden, mulai insiden dari halaman web dan verifikasi bahwa aplikasi Chat berfungsi seperti yang diharapkan:
Buka URL aplikasi web deployment Apps Script.
Saat Apps Script meminta izin untuk mengakses data Anda, klik Tinjau izin, login dengan Akun Google yang sesuai di domain Google Workspace Anda, lalu klik Izinkan.
Halaman web inisialisasi insiden akan terbuka. Masukkan informasi pengujian:
- Di Incident title, ketik
The First Incident
. - Secara opsional, di bagian Perespons insiden, masukkan alamat email rekan petugas respons insiden Anda. Mereka harus merupakan pengguna dengan akun Google Chat di organisasi Google Workspace Anda. Jika tidak, pembuatan ruang akan gagal. Jangan masukkan alamat email Anda sendiri karena disertakan secara otomatis.
- Di Initial message, ketik
Testing the incident management Chat app.
- Di Incident title, ketik
Klik Create Chat Space. Pesan
creating space
akan muncul.Setelah ruang dibuat, pesan
Space created!
akan muncul. Klik Buka ruang, yang akan membuka ruang di Chat di tab baru.Secara opsional, Anda dan responden insiden lainnya dapat mengirim pesan di ruang. Aplikasi ini merangkum pesan-pesan tersebut menggunakan Vertex AI dan membagikan dokumen retrospektif.
Untuk mengakhiri respons insiden dan memulai proses penyelesaian, ketik
/closeIncident
di ruang Chat. Dialog manajemen insiden akan terbuka.Di bagian Tutup insiden, masukkan deskripsi untuk penyelesaian insiden, seperti
Test complete
.Klik Tutup Insiden.
Aplikasi Incident Management mencantumkan pesan dalam ruang, merangkumnya dengan Vertex AI, menempelkan ringkasan dalam dokumen Google Dokumen, dan membagikan dokumen di ruang.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, sebaiknya hapus project Cloud.
- Pada Konsol Google Cloud, buka halaman Kelola resource Klik Menu > IAM & Admin > Manage Resources.
- Dalam daftar project, pilih project yang ingin Anda hapus, lalu klik Delete .
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
Topik terkait
- Menjawab pertanyaan berdasarkan percakapan Chat dengan aplikasi Chat Gemini AI
- Mengelola project dengan Google Chat, Vertex AI, dan Firestore
- Aplikasi respons insiden mengautentikasi dengan kredensial pengguna untuk memanggil API
dan memanggil layanan Google Cloud, seperti Chat API dan Vertex AI API.
Artinya, pengguna yang melakukan inisialisasi insiden harus memiliki akses ke layanan
ini. Agar aplikasi lebih andal, sebaiknya panggil Vertex AI API
dengan sebagai akun layanan, bukan kredensial pengguna dari pengguna yang memanggil
perintah garis miring
/closeIncident
. Guna mendapatkan bantuan untuk mengonfigurasi akun layanan untuk Vertex AI API, lihat Menggunakan akun layanan kustom.