Objek Peristiwa

Pemicu sederhana dan pemicu yang dapat diinstal memungkinkan Apps Script menjalankan fungsi secara otomatis jika terjadi peristiwa tertentu. Saat pemicu diaktifkan, Apps Script meneruskan objek peristiwa ke fungsi sebagai argumen, yang biasanya disebut e. Objek peristiwa berisi informasi tentang konteks yang menyebabkan peristiwa pemicu untuk diaktifkan. Misalnya, kode contoh di bawah menunjukkan onEdit(e) sederhana pemicu untuk skrip Google Spreadsheet yang menggunakan objek peristiwa untuk menentukan sel telah 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 dalam {i>spreadsheet<i}.

Buka

(sederhana dan dapat diinstal)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

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

Spreadsheet
triggerUid

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

4034124084959907503
user

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

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

Spreadsheet
triggerUid

ID pemicu yang menghasilkan peristiwa ini.

4034124084959907503
user

Objek User, yang merepresentasikan 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 berupa sel tunggal. Tidak akan ditentukan jika sel tidak memiliki status sebelumnya saat ini.

1234
range

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

Range
source

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

Spreadsheet
triggerUid

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

4034124084959907503
user

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

amin@example.com
value

Nilai sel baru setelah edit. 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 telah diedit.

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

LIMITED
source

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

Document
triggerUid

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

4034124084959907503
user

Objek User, yang merepresentasikan 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.

Buka

(sederhana)
authMode

Nilai dari enum ScriptApp.AuthMode.

LIMITED
source

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

Presentation
user

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

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

LIMITED
source

Objek Form, mewakili file Google Formulir tempat skrip diikat.

Form
triggerUid

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

4034124084959907503
user

Objek User, yang merepresentasikan 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, 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. Sebaliknya, menunjukkan bahwa kode Anda perlu melakukan operasi sinkronisasi inkremental untuk memilih perubahan terbaru ke kalender. Untuk deskripsi lengkap prosedur ini, lihat Panduan sinkronisasi resource untuk Kalender API.

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

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

EventUpdated

(dapat diinstal)
authMode

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

Instal

(sederhana)
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 dieksekusi pada waktu tertentu atau yang 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 pisah, nama properti 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 pisah, nama properti 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 pisah, nama properti harus diakses melalui e['week-of-year'], bukan notasi titik.

52
year

Tahun.

2015