Pemicu sederhana dan pemicu yang dapat diinstal memungkinkan Apps Script menjalankan fungsi secara otomatis jika peristiwa tertentu terjadi. Saat pemicu diaktifkan, Apps Script akan meneruskan objek peristiwa ke fungsi sebagai argumen, biasanya disebut e
. Objek peristiwa berisi informasi tentang konteks yang menyebabkan
pemicu diaktifkan. Misalnya, kode contoh di bawah menunjukkan pemicu onEdit(e)
sederhana untuk skrip Google Spreadsheet yang menggunakan objek peristiwa untuk menentukan sel mana yang diedit.
function onEdit(e){
// Set a comment on the edited cell to indicate when it was changed.
var range = e.range;
range.setNote('Last modified: ' + new Date());
}
Halaman ini menjelaskan kolom dalam objek peristiwa untuk berbagai jenis pemicu.
Acara Google Spreadsheet
Berbagai pemicu khusus Google Spreadsheet memungkinkan skrip merespons tindakan pengguna dalam spreadsheet.
Buka(sederhana dan dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum LIMITED |
source |
Objek Spreadsheet |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini (hanya pemicu yang dapat diinstal). 4034124084959907503 |
user |
Objek amin@example.com |
Ubah(dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum FULL |
changeType |
Jenis perubahan ( INSERT_ROW |
source |
Objek
Spreadsheet |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini. 4034124084959907503 |
user |
Objek amin@example.com |
Edit(sederhana dan dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum LIMITED |
oldValue |
Nilai sel sebelum pengeditan, jika ada. Hanya tersedia jika rentang yang diedit berupa satu sel. Tidak akan ditentukan jika sel tidak memiliki konten sebelumnya. 1234 |
range |
Objek Range |
source |
Objek Spreadsheet |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini (hanya pemicu yang dapat diinstal). 4034124084959907503 |
user |
Objek amin@example.com |
value |
Nilai sel baru setelah edit. Hanya tersedia jika rentang yang diedit berupa sel tunggal. 10 |
Pengiriman formulir(dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum FULL |
namedValues |
Objek yang berisi nama dan nilai pertanyaan dari pengiriman formulir. { 'First Name': ['Jane'], 'Timestamp': ['6/7/2015 20:54:13'], 'Last Name': ['Doe'] } |
range |
Objek Range |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini. 4034124084959907503 |
values |
Larik dengan nilai-nilai dalam urutan yang sama seperti yang muncul di {i>spreadsheet<i}. ['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill', '28', 'Susan', '25'] |
Acara Google Dokumen
Pemicu memungkinkan Google Dokumen merespons saat pengguna membuka dokumen.
Buka(sederhana dan dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum LIMITED |
source |
Objek Document |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini (hanya pemicu yang dapat diinstal). 4034124084959907503 |
user |
Objek amin@example.com |
Acara Google Slide
Pemicu memungkinkan Google Slide merespons saat pengguna membuka presentasi.
Buka(sederhana) |
|
---|---|
authMode |
Nilai dari enum LIMITED |
source |
Objek Presentation |
user |
Objek amin@example.com |
Acara Google Formulir
Pemicu khusus Google Formulir memungkinkan skrip merespons saat pengguna mengedit formulir atau mengirimkan respons.
Buka* (sederhana dan dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum LIMITED |
source |
Objek Form |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini (hanya pemicu yang dapat diinstal). 4034124084959907503 |
user |
Objek amin@example.com |
* Peristiwa ini tidak terjadi saat pengguna membuka formulir untuk merespons, melainkan saat editor membuka formulir untuk mengubahnya.
Pengiriman formulir(dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum FULL |
response |
Objek FormResponse |
source |
Objek Form |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini. 4034124084959907503 |
Acara Google Kalender
Pemicu kalender diaktifkan saat acara kalender pengguna diperbarui (dibuat, diedit, atau dihapus).
Pemicu ini tidak memberi tahu Anda peristiwa mana yang berubah atau bagaimana perubahannya. Sebaliknya, tanda tersebut menunjukkan bahwa kode Anda perlu melakukan operasi sinkronisasi inkremental untuk mengambil perubahan terbaru pada kalender. Untuk deskripsi lengkap prosedur ini, lihat Panduan menyinkronkan resource untuk Kalender API.
Untuk menyinkronkan dengan Kalender di Apps Script, lakukan langkah-langkah berikut:
- Aktifkan layanan lanjutan Kalender untuk project skrip. Layanan Kalender bawaan tidak memadai untuk alur kerja ini.
- Tentukan kalender apa yang harus disinkronkan. Untuk setiap kalender tersebut, lakukan operasi sinkronisasi awal menggunakan metode Events.list() layanan lanjutan Kalender.
- Hasil sinkronisasi awal menampilkan
nextSyncToken
untuk kalender tersebut. Simpan token ini untuk digunakan nanti. - Saat pemicu
EventUpdated
Apps Script diaktifkan yang menunjukkan perubahan acara kalender, lakukan sinkronisasi inkremental untuk kalender yang terpengaruh menggunakannextSyncToken
yang disimpan. Ini pada dasarnya adalah permintaan Events.list() lainnya, tetapi menyediakannextSyncToken
akan membatasi respons hanya ke peristiwa yang telah berubah sejak sinkronisasi terakhir. - Periksa respons sinkronisasi untuk mempelajari peristiwa yang diperbarui dan agar kode Anda merespons dengan tepat. Misalnya, Anda dapat mencatat perubahan ke dalam log, mengupdate spreadsheet, mengirim pemberitahuan email, atau melakukan tindakan lainnya.
- Perbarui
nextSyncToken
yang Anda simpan untuk kalender tersebut dengan data yang ditampilkan oleh permintaan sinkronisasi inkremental. Hal ini memaksa operasi sinkronisasi berikutnya untuk hanya menampilkan perubahan terbaru.
EventUpdated(dapat diinstal) |
|
---|---|
authMode |
Nilai dari enum FULL |
calendarId |
ID string kalender tempat pembaruan acara terjadi. susan@example.com |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini. 4034124084959907503 |
Acara Add-on Google Workspace
Pemicu onInstall()
berjalan
secara otomatis saat pengguna menginstal add-on.
Menginstal(sederhana) |
|
---|---|
authMode |
Nilai dari enum FULL |
Peristiwa aplikasi Google Chat
Untuk mempelajari objek peristiwa di Google Chat, lihat Menerima dan merespons interaksi dengan aplikasi Google Chat.
Acara berbasis waktu
Pemicu berbasis waktu (juga disebut pemicu jam) memungkinkan skrip dieksekusi pada waktu tertentu atau pada interval berulang.
Berdasarkan waktu (dapat diinstal) | |
---|---|
authMode |
Nilai dari enum FULL |
day-of-month |
Antara Karena nama properti ini berisi tanda pisah, nama properti ini harus diakses melalui 31 |
day-of-week |
Antara Karena nama properti ini berisi tanda pisah, nama properti ini harus diakses melalui 7 |
hour |
Antara 23 |
minute |
Antara 59 |
month |
Antara 12 |
second |
Antara 59 |
timezone |
Zona waktu. UTC |
triggerUid |
ID pemicu yang menghasilkan peristiwa ini. 4034124084959907503 |
week-of-year |
Antara Karena nama properti ini berisi tanda pisah, nama properti ini harus diakses melalui 52 |
year |
Tahun. 2015 |