Objek Peristiwa

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 fungsi objek peristiwa sebagai argumen, yang 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.

Peristiwa Google Spreadsheet

Berbagai pemicu khusus Google Spreadsheet memungkinkan skrip merespons tindakan pengguna di spreadsheet.

Buka

(sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

Objek Spreadsheet, yang mewakili file Google Spreadsheet yang terikat dengan skrip.

Spreadsheet
triggerUid

ID pemicu yang menghasilkan peristiwa ini (khusus pemicu yang dapat diinstal).

4034124084959907503
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada kumpulan batasan keamanan yang kompleks).

amin@example.com

Ubah

(dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

FULL
changeType

Jenis perubahan (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT, atau OTHER).

INSERT_ROW
source

Objek Spreadsheet, yang mewakili file Google Spreadsheet tempat skrip terikat.

Spreadsheet
triggerUid

ID pemicu yang menghasilkan peristiwa ini.

4034124084959907503
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada kumpulan batasan keamanan yang kompleks).

amin@example.com

Edit

(sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
oldValue

Nilai sel sebelum pengeditan, jika ada. Hanya tersedia jika rentang yang diedit adalah satu sel. Tidak akan ditentukan jika sel tidak memiliki konten sebelumnya.

1234
range

Objek Range, yang mewakili sel atau rentang sel yang diedit.

Range
source

Objek Spreadsheet, yang mewakili file Google Spreadsheet tempat skrip terikat.

Spreadsheet
triggerUid

ID pemicu yang menghasilkan peristiwa ini (khusus pemicu yang dapat diinstal).

4034124084959907503
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada kumpulan batasan keamanan yang kompleks).

amin@example.com
value

Nilai sel baru setelah pengeditan. Hanya tersedia jika rentang yang diedit berupa sel tunggal.

10

Pengiriman formulir

(dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

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, yang mewakili sel atau rentang sel yang diedit.

Range
triggerUid

ID pemicu yang menghasilkan peristiwa ini.

4034124084959907503
values

Array dengan nilai dalam urutan yang sama seperti yang muncul di spreadsheet.

['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill',
'28', 'Susan', '25']

Peristiwa Google Dokumen

Pemicu memungkinkan Google Dokumen merespons saat pengguna membuka dokumen.

Buka

(sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

Objek Document, yang mewakili file Google Dokumen tempat skrip terikat.

Document
triggerUid

ID pemicu yang menghasilkan peristiwa ini (khusus pemicu yang dapat diinstal).

4034124084959907503
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada serangkaian pembatasan keamanan yang kompleks).

amin@example.com

Peristiwa Google Slide

Pemicu memungkinkan Google Slide merespons saat pengguna membuka presentasi.

Buka

(simple)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

Objek Presentation, yang mewakili file Google Slide yang terikat dengan skrip.

Presentation
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada kumpulan batasan keamanan yang kompleks).

amin@example.com

Peristiwa 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 ScriptApp.AuthMode.

LIMITED
source

Objek Form, yang mewakili file Google Formulir tempat skrip terikat.

Form
triggerUid

ID pemicu yang menghasilkan peristiwa ini (khusus pemicu yang dapat diinstal).

4034124084959907503
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada kumpulan batasan keamanan yang kompleks).

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 ScriptApp.AuthMode.

FULL
response

Objek FormResponse, yang mewakili respons pengguna terhadap formulir secara keseluruhan.

FormResponse
source

Objek Form, yang mewakili file Google Formulir yang terikat dengan skrip.

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 peristiwa tersebut berubah. Sebaliknya, kode 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:

  1. Aktifkan layanan lanjutan Kalender untuk project skrip. Layanan Kalender bawaan tidak memadai untuk alur kerja ini.
  2. Tentukan kalender apa yang harus disinkronkan. Untuk setiap kalender tersebut, lakukan operasi sinkronisasi awal menggunakan metode Events.list() layanan lanjutan Kalender.
  3. Hasil sinkronisasi awal menampilkan nextSyncToken untuk kalender tersebut. Simpan token ini untuk digunakan nanti.
  4. Saat pemicu EventUpdated Apps Script diaktifkan yang menunjukkan perubahan peristiwa kalender, lakukan sinkronisasi inkremental untuk kalender yang terpengaruh menggunakan nextSyncToken yang disimpan. Ini pada dasarnya adalah permintaan Events.list() lain, tetapi memberikan nextSyncToken akan membatasi respons hanya ke peristiwa yang telah berubah sejak sinkronisasi terakhir.
  5. Periksa respons sinkronisasi untuk mempelajari peristiwa yang diperbarui dan membuat kode Anda merespons dengan tepat. Misalnya, Anda dapat mencatat perubahan, memperbarui spreadsheet, mengirim pemberitahuan email, atau melakukan tindakan lainnya.
  6. Perbarui nextSyncToken yang Anda simpan untuk kalender tersebut dengan yang ditampilkan oleh permintaan sinkronisasi inkremental. Hal ini memaksa operasi sinkronisasi berikutnya untuk hanya menampilkan perubahan terbaru.

EventUpdated

(dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

FULL
calendarId

ID string kalender tempat pembaruan acara terjadi.

susan@example.com
triggerUid

ID pemicu yang menghasilkan peristiwa ini.

4034124084959907503

Peristiwa Add-on Google Workspace

Pemicu onInstall() dijalankan secara otomatis saat pengguna menginstal add-on.

Instal

(simple)
authMode

Nilai dari enum ScriptApp.AuthMode.

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 dijalankan pada waktu tertentu atau pada interval berulang.

Berbasis waktu (dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

FULL
day-of-month

Antara 1 dan 31.

Karena nama properti ini berisi tanda hubung, properti ini harus diakses melalui e['day-of-month'], bukan notasi titik.

31
day-of-week

Antara 1 (Senin) dan 7 (Minggu).

Karena nama properti ini berisi tanda hubung, properti ini harus diakses melalui e['day-of-week'], bukan notasi titik.

7
hour

Antara 0 dan 23.

23
minute

Antara 0 sampai 59.

59
month

Antara 1 sampai 12.

12
second

Antara 0 sampai 59.

59
timezone

Zona waktu.

UTC
triggerUid

ID pemicu yang menghasilkan peristiwa ini.

4034124084959907503
week-of-year

Antara 1 dan 52.

Karena nama properti ini berisi tanda pisah, nama properti ini harus diakses melalui e['week-of-year'], bukan notasi titik.

52
year

Tahun.

2015