Đối tượng sự kiện

Điều kiện kích hoạt đơn giảnđiều kiện kích hoạt có thể cài đặt cho phép Apps Script tự động chạy một hàm nếu một sự kiện nhất định xảy ra. Khi một điều kiện kích hoạt kích hoạt, Apps Script sẽ truyền hàm một đối tượng sự kiện làm đối số, thường được gọi là e. Đối tượng sự kiện chứa thông tin về ngữ cảnh khiến điều kiện kích hoạt kích hoạt. Ví dụ: mã mẫu bên dưới cho thấy một điều kiện kích hoạt onEdit(e) đơn giản cho một tập lệnh Google Trang tính sử dụng đối tượng sự kiện để xác định ô nào đã được chỉnh sửa.

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());
}

Trang này trình bày chi tiết các trường trong đối tượng sự kiện cho nhiều loại điều kiện kích hoạt.

Sự kiện trên Google Trang tính

Các điều kiện kích hoạt dành riêng cho Google Trang tính cho phép tập lệnh phản hồi với thao tác của người dùng trong bảng tính.

Đang mở

(đơn giảndễ cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

LIMITED
source

Đối tượng Spreadsheet, đại diện cho tệp Google Trang tính mà tập lệnh liên kết với tập lệnh.

Spreadsheet
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này (chỉ trình kích hoạt có thể cài đặt).

4034124084959907503
user

Đối tượng User, đại diện cho người dùng đang hoạt động, nếu có (tuỳ thuộc vào một tập hợp các hạn chế phức tạp về bảo mật).

amin@example.com

Chuyển

(có thể cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

FULL
changeType

Loại thay đổi (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT hoặc OTHER).

INSERT_ROW
source

Đối tượng Spreadsheet, đại diện cho tệp Google Trang tính mà tập lệnh liên kết với tập lệnh.

Spreadsheet
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này.

4034124084959907503
user

Đối tượng User, đại diện cho người dùng đang hoạt động, nếu có (tuỳ thuộc vào một tập hợp các hạn chế phức tạp về bảo mật).

amin@example.com

Chỉnh sửa

(đơn giảndễ cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

LIMITED
oldValue

Giá trị của ô trước khi chỉnh sửa, nếu có. Chỉ có sẵn nếu dải ô đã chỉnh sửa là một ô duy nhất. Sẽ không xác định nếu ô không có nội dung trước đó.

1234
range

Một đối tượng Range, đại diện cho ô hoặc dải ô đã được chỉnh sửa.

Range
source

Đối tượng Spreadsheet, đại diện cho tệp Google Trang tính mà tập lệnh liên kết với tập lệnh.

Spreadsheet
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này (chỉ trình kích hoạt có thể cài đặt).

4034124084959907503
user

Đối tượng User, đại diện cho người dùng đang hoạt động, nếu có (tuỳ thuộc vào một tập hợp các hạn chế phức tạp về bảo mật).

amin@example.com
value

Giá trị mới của ô sau khi chỉnh sửa. Chỉ có sẵn nếu dải ô được chỉnh sửa là một ô duy nhất.

10

Gửi biểu mẫu

(có thể cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

FULL
namedValues

Đối tượng chứa tên câu hỏi và giá trị từ lượt gửi biểu mẫu.

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

Một đối tượng Range, đại diện cho ô hoặc dải ô đã được chỉnh sửa.

Range
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này.

4034124084959907503
values

Mảng có các giá trị theo cùng thứ tự xuất hiện trong bảng tính.

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

Sự kiện trên Google Tài liệu

Điều kiện kích hoạt cho phép Google Tài liệu phản hồi khi người dùng mở một tài liệu.

Đang mở

(đơn giảndễ cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

LIMITED
source

Đối tượng Document, đại diện cho tệp Google Tài liệu liên kết với tập lệnh.

Document
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này (chỉ trình kích hoạt có thể cài đặt).

4034124084959907503
user

Đối tượng User, đại diện cho người dùng đang hoạt động, nếu có (tuỳ thuộc vào một tập hợp các hạn chế phức tạp về bảo mật).

amin@example.com

Sự kiện trên Google Trang trình bày

Lệnh kích hoạt cho phép Google Trang trình bày phản hồi khi người dùng mở bản trình bày.

Đang mở

(đơn giản)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

LIMITED
source

Đối tượng Presentation, đại diện cho tệp Google Trang trình bày mà tập lệnh liên kết với tập lệnh.

Presentation
user

Đối tượng User, đại diện cho người dùng đang hoạt động, nếu có (tuỳ thuộc vào một tập hợp các hạn chế phức tạp về bảo mật).

amin@example.com

Sự kiện trên Google Biểu mẫu

Các điều kiện kích hoạt dành riêng cho Google Biểu mẫu cho phép tập lệnh phản hồi khi người dùng chỉnh sửa biểu mẫu hoặc gửi phản hồi.

Đang mở

* (đơn giảndễ cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

LIMITED
source

Đối tượng Form, đại diện cho tệp Google Biểu mẫu liên kết với tập lệnh.

Form
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này (chỉ trình kích hoạt có thể cài đặt).

4034124084959907503
user

Đối tượng User, đại diện cho người dùng đang hoạt động, nếu có (tuỳ thuộc vào một tập hợp các hạn chế phức tạp về bảo mật).

amin@example.com

* Sự kiện này không xảy ra khi người dùng mở biểu mẫu để trả lời, mà xảy ra khi người chỉnh sửa mở biểu mẫu để sửa đổi.

Gửi biểu mẫu

(có thể cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

FULL
response

Đối tượng FormResponse, đại diện cho phản hồi của người dùng đối với biểu mẫu nói chung.

FormResponse
source

Đối tượng Form, đại diện cho tệp Google Biểu mẫu liên kết với tập lệnh.

Form
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này.

4034124084959907503

Sự kiện trên Lịch Google

Điều kiện kích hoạt lịch sẽ kích hoạt khi các sự kiện trên lịch của người dùng được cập nhật (tạo, chỉnh sửa hoặc xoá).

Các trình kích hoạt này không cho bạn biết sự kiện nào đã thay đổi hoặc sự kiện đó thay đổi như thế nào. Thay vào đó, chúng cho biết rằng mã của bạn cần thực hiện hoạt động đồng bộ hoá gia tăng để chọn các thay đổi gần đây đối với lịch. Để biết nội dung mô tả đầy đủ về quy trình này, hãy xem Hướng dẫn đồng bộ hoá tài nguyên dành cho API Lịch.

Để đồng bộ hoá với Lịch trong Apps Script, hãy thực hiện các bước sau:

  1. Bật dịch vụ Lịch nâng cao cho dự án tập lệnh. Dịch vụ Lịch tích hợp sẵn không đủ để thực hiện quy trình công việc này.
  2. Xác định lịch nào cần được đồng bộ hóa. Đối với mỗi lịch như vậy, hãy thực hiện thao tác đồng bộ hoá ban đầu bằng cách sử dụng phương thức Events.list() của dịch vụ Lịch nâng cao.
  3. Kết quả của lần đồng bộ hoá ban đầu sẽ trả về một nextSyncToken cho lịch đó. Lưu trữ mã thông báo này để sử dụng sau.
  4. Khi điều kiện kích hoạt EventUpdated của Apps Script kích hoạt và cho biết có sự thay đổi trên lịch, hãy tiến hành đồng bộ hoá gia tăng cho lịch bị ảnh hưởng bằng cách sử dụng nextSyncToken đã lưu trữ. Về cơ bản, đây là một yêu cầu Events.list() khác, nhưng việc cung cấp nextSyncToken sẽ giới hạn phản hồi cho các sự kiện đã thay đổi kể từ lần đồng bộ hoá gần nhất.
  5. Kiểm tra phản hồi của quá trình đồng bộ hoá để tìm hiểu những sự kiện nào đã được cập nhật và mã của bạn phản hồi phù hợp. Ví dụ: Bạn có thể ghi nhật ký thay đổi, cập nhật bảng tính, gửi thông báo qua email hoặc thực hiện các thao tác khác.
  6. Cập nhật nextSyncToken mà bạn đã lưu trữ cho lịch đó bằng mã mà yêu cầu đồng bộ hoá gia tăng trả về. Điều này buộc thao tác đồng bộ hoá tiếp theo chỉ trả về những thay đổi mới nhất.

EventUpdated

(có thể cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

FULL
calendarId

Mã chuỗi của lịch cập nhật sự kiện.

susan@example.com
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này.

4034124084959907503

Sự kiện tiện ích bổ sung của Google Workspace

Trình kích hoạt onInstall() sẽ tự động chạy khi người dùng cài đặt một tiện ích bổ sung.

Cài đặt

(đơn giản)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

FULL

Sự kiện trong ứng dụng Google Chat

Để tìm hiểu về các đối tượng sự kiện trong Google Chat, hãy xem bài viết Nhận và trả lời các hoạt động tương tác với ứng dụng Google Chat.

Sự kiện theo thời gian

Điều kiện kích hoạt theo thời gian (còn gọi là điều kiện kích hoạt đồng hồ) cho phép tập lệnh thực thi tại một thời điểm cụ thể hoặc trong một khoảng thời gian định kỳ.

Theo thời gian (có thể cài đặt)
authMode

Một giá trị từ enum ScriptApp.AuthMode.

FULL
day-of-month

Trong khoảng từ 1 đến 31.

Vì tên thuộc tính này chứa dấu gạch ngang nên bạn phải truy cập vào tên này thông qua e['day-of-month'] thay vì ký hiệu dấu chấm.

31
day-of-week

Trong khoảng thời gian từ 1 (thứ Hai) đến 7 (Chủ Nhật).

Vì tên thuộc tính này chứa dấu gạch ngang nên bạn phải truy cập vào tên này thông qua e['day-of-week'] thay vì ký hiệu dấu chấm.

7
hour

Trong khoảng từ 0 đến 23.

23
minute

Trong khoảng từ 0 đến 59.

59
month

Trong khoảng từ 1 đến 12.

12
second

Trong khoảng từ 0 đến 59.

59
timezone

Múi giờ.

UTC
triggerUid

Mã trình kích hoạt đã tạo ra sự kiện này.

4034124084959907503
week-of-year

Trong khoảng từ 1 đến 52.

Vì tên thuộc tính này chứa dấu gạch ngang nên bạn phải truy cập vào tên này thông qua e['week-of-year'] thay vì ký hiệu dấu chấm.

52
year

Năm.

2015