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 objek peristiwa ke fungsi 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.

Acara Google Spreadsheet

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

Terbuka

(sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

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

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 serangkaian batasan keamanan yang kompleks).

amin@example.com

Transfer

(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 diikat.

Spreadsheet
triggerUid

ID pemicu yang menghasilkan peristiwa ini.

4034124084959907503
user

Objek User, yang mewakili pengguna aktif, jika tersedia (bergantung pada serangkaian 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 diikat.

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 serangkaian batasan keamanan yang kompleks).

amin@example.com
value

Nilai sel baru setelah pengeditan. Hanya tersedia jika rentang yang diedit adalah satu sel.

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']

Acara Google Dokumen

Pemicu memungkinkan Google Dokumen merespons saat pengguna membuka dokumen.

Terbuka

(sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

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

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 batasan keamanan yang kompleks).

amin@example.com

Acara Google Slide

Pemicu memungkinkan Google Slide merespons saat pengguna membuka presentasi.

Terbuka

(sederhana)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

Objek Presentation, yang mewakili file Google Slide tempat skrip diikat.

Presentation
user

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

amin@example.com

Peristiwa Google Formulir

Pemicu khusus Google Formulir memungkinkan skrip merespons saat pengguna mengedit formulir atau mengirimkan respons.

Terbuka

* (sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

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

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 serangkaian 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 tempat skrip diikat.

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. Sebagai gantinya, stempel waktu ini menunjukkan bahwa kode Anda perlu melakukan operasi sinkronisasi inkremental untuk menerapkan perubahan terbaru pada kalender. Untuk deskripsi lengkap prosedur ini, lihat Panduan sinkronisasi resource untuk Calendar API.

Untuk menyinkronkan dengan Kalender di Apps Script, lakukan langkah-langkah berikut:

  1. Aktifkan layanan lanjutan Kalender untuk project skrip. Layanan Kalender bawaan tidak cukup untuk alur kerja ini.
  2. Menentukan kalender apa yang harus disinkronkan. Untuk setiap kalender tersebut, lakukan operasi sinkronisasi awal menggunakan metode Events.list() pada layanan lanjutan Kalender.
  3. Hasil sinkronisasi awal akan menampilkan nextSyncToken untuk kalender tersebut. Simpan token ini untuk digunakan nanti.
  4. Saat pemicu EventUpdated Apps Script diaktifkan yang menunjukkan perubahan acara kalender, lakukan sinkronisasi inkremental untuk kalender yang terpengaruh menggunakan nextSyncToken yang tersimpan. Ini pada dasarnya adalah permintaan Events.list() lain, tetapi memberikan nextSyncToken akan membatasi respons hanya untuk peristiwa yang telah berubah sejak sinkronisasi terakhir.
  5. Periksa respons sinkronisasi untuk mempelajari peristiwa yang telah diperbarui dan buat kode Anda merespons dengan tepat. Misalnya, Anda dapat mencatat perubahan, mengupdate spreadsheet, mengirim pemberitahuan email, atau melakukan tindakan lainnya.
  6. Update 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

Acara Add-on Google Workspace

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

Menginstal

(sederhana)
authMode

Nilai dari enum ScriptApp.AuthMode.

FULL

Peristiwa aplikasi Google Chat

Untuk mempelajari objek peristiwa di Google Chat, baca artikel Menerima dan merespons interaksi dengan aplikasi Google Chat Anda.

Peristiwa berbasis waktu

Pemicu berdasarkan waktu (juga disebut pemicu jam) memungkinkan skrip dieksekusi pada waktu tertentu atau pada interval berulang.

Berdasarkan waktu (dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

FULL
day-of-month

Antara 1 sampai 31.

Karena nama properti ini berisi tanda hubung, nama 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, nama properti ini harus diakses melalui e['day-of-week'], bukan notasi titik.

7
hour

Antara 0 sampai 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 sampai 52.

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

52
year

Tahun.

2015