ออบเจ็กต์เหตุการณ์

ทริกเกอร์แบบง่ายและทริกเกอร์ที่ติดตั้งได้ช่วยให้ Apps Script เรียกใช้ฟังก์ชันโดยอัตโนมัติหากมีเหตุการณ์บางอย่างเกิดขึ้น เมื่อทริกเกอร์เริ่มทำงาน Apps Script จะส่งฟังก์ชันของออบเจ็กต์เหตุการณ์เป็นอาร์กิวเมนต์ ซึ่งโดยทั่วไปจะเรียกว่า e ออบเจ็กต์เหตุการณ์มีข้อมูลเกี่ยวกับบริบทที่ทำให้ทริกเกอร์เริ่มทำงาน เช่น โค้ดตัวอย่างด้านล่างแสดงทริกเกอร์ onEdit(e) แบบง่ายสำหรับสคริปต์ Google ชีตที่ใช้ออบเจ็กต์เหตุการณ์เพื่อระบุว่าเซลล์ใดมีการแก้ไข

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

หน้านี้แสดงรายละเอียดช่องในออบเจ็กต์เหตุการณ์สำหรับทริกเกอร์ประเภทต่างๆ

กิจกรรมใน Google ชีต

ทริกเกอร์เฉพาะ Google ชีตแบบต่างๆ ช่วยให้สคริปต์ตอบสนองต่อการกระทำของผู้ใช้ในสเปรดชีตได้

เปิด

(แบบง่ายและติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

LIMITED
source

ออบเจ็กต์ Spreadsheet ซึ่งแสดงไฟล์ Google ชีตที่มีการเชื่อมโยงสคริปต์

Spreadsheet
triggerUid

รหัสของทริกเกอร์ที่สร้างเหตุการณ์นี้ (ทริกเกอร์ที่ติดตั้งได้เท่านั้น)

4034124084959907503
user

ออบเจ็กต์ User ซึ่งแสดงผู้ใช้ที่ใช้งานอยู่ หากมี (ขึ้นอยู่กับชุดข้อจำกัดด้านความปลอดภัยที่ซับซ้อน)

amin@example.com

เปลี่ยน

(ติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

FULL
changeType

ประเภทการเปลี่ยนแปลง (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT หรือ OTHER)

INSERT_ROW
source

ออบเจ็กต์ Spreadsheet ซึ่งแสดงไฟล์ Google ชีตที่เชื่อมโยงกับสคริปต์

Spreadsheet
triggerUid

รหัสของทริกเกอร์ที่ทำให้เกิดเหตุการณ์นี้

4034124084959907503
user

ออบเจ็กต์ User ซึ่งแสดงผู้ใช้ที่ใช้งานอยู่ หากมี (ขึ้นอยู่กับชุดข้อจำกัดด้านความปลอดภัยที่ซับซ้อน)

amin@example.com

แก้ไข

(แบบง่ายและติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

LIMITED
oldValue

ค่าเซลล์ก่อนแก้ไข หากมี ใช้ได้เฉพาะเมื่อช่วงที่แก้ไขเป็นเซลล์เดียว ไม่ระบุหากเซลล์ไม่มีเนื้อหาก่อนหน้า

1234
range

ออบเจ็กต์ Range ซึ่งแสดงเซลล์หรือช่วงของเซลล์ที่แก้ไข

Range
source

ออบเจ็กต์ Spreadsheet ซึ่งแสดงไฟล์ Google ชีตที่มีการเชื่อมโยงสคริปต์

Spreadsheet
triggerUid

รหัสของทริกเกอร์ที่สร้างเหตุการณ์นี้ (ทริกเกอร์ที่ติดตั้งได้เท่านั้น)

4034124084959907503
user

ออบเจ็กต์ User ซึ่งแสดงผู้ใช้ที่ใช้งานอยู่ หากมี (ขึ้นอยู่กับชุดข้อจำกัดด้านความปลอดภัยที่ซับซ้อน)

amin@example.com
value

ค่าของเซลล์ใหม่หลังแก้ไข ใช้ได้เฉพาะเมื่อช่วงที่แก้ไขเป็นเซลล์เดียว

10

การส่งแบบฟอร์ม

(ติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

FULL
namedValues

ออบเจ็กต์ที่มีชื่อและค่าคำถามจากการส่งแบบฟอร์ม

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

ออบเจ็กต์ Range ซึ่งแสดงเซลล์หรือช่วงของเซลล์ที่แก้ไข

Range
triggerUid

รหัสของทริกเกอร์ที่ทำให้เกิดเหตุการณ์นี้

4034124084959907503
values

อาร์เรย์ที่มีค่าในลำดับเดียวกันกับที่ปรากฏในสเปรดชีต

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

กิจกรรมของ Google เอกสาร

ทริกเกอร์ช่วยให้ Google เอกสารตอบกลับเมื่อผู้ใช้เปิดเอกสารได้

เปิด

(แบบง่ายและติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

LIMITED
source

ออบเจ็กต์ Document ซึ่งแสดงไฟล์ Google เอกสารที่เชื่อมโยงกับสคริปต์

Document
triggerUid

รหัสของทริกเกอร์ที่สร้างเหตุการณ์นี้ (ทริกเกอร์ที่ติดตั้งได้เท่านั้น)

4034124084959907503
user

ออบเจ็กต์ User ซึ่งแสดงผู้ใช้ที่ใช้งานอยู่ หากมี (ขึ้นอยู่กับชุดข้อจำกัดด้านความปลอดภัยที่ซับซ้อน)

amin@example.com

เหตุการณ์ใน Google สไลด์

ทริกเกอร์ช่วยให้ Google สไลด์ตอบกลับเมื่อผู้ใช้เปิดงานนำเสนอ

เปิด

(แบบง่าย)
authMode

ค่าจาก enum ScriptApp.AuthMode

LIMITED
source

ออบเจ็กต์ Presentation ซึ่งแสดงไฟล์ Google สไลด์ที่เชื่อมโยงกับสคริปต์

Presentation
user

ออบเจ็กต์ User ซึ่งแสดงผู้ใช้ที่ใช้งานอยู่ หากมี (ขึ้นอยู่กับชุดข้อจำกัดด้านความปลอดภัยที่ซับซ้อน)

amin@example.com

เหตุการณ์ของ Google ฟอร์ม

ทริกเกอร์เฉพาะ Google ฟอร์มทำให้สคริปต์ตอบสนองเมื่อผู้ใช้แก้ไขแบบฟอร์มหรือส่งคำตอบ

เปิด

* (แบบง่ายและติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

LIMITED
source

ออบเจ็กต์ Form ซึ่งแสดงไฟล์ Google ฟอร์มที่เชื่อมโยงกับสคริปต์

Form
triggerUid

รหัสของทริกเกอร์ที่สร้างเหตุการณ์นี้ (ทริกเกอร์ที่ติดตั้งได้เท่านั้น)

4034124084959907503
user

ออบเจ็กต์ User ซึ่งแสดงผู้ใช้ที่ใช้งานอยู่ หากมี (ขึ้นอยู่กับชุดข้อจำกัดด้านความปลอดภัยที่ซับซ้อน)

amin@example.com

* เหตุการณ์นี้จะเกิดขึ้นเมื่อผู้ใช้เปิดแบบฟอร์มเพื่อตอบกลับ แต่เป็นเวลาที่ผู้แก้ไขเปิดแบบฟอร์มเพื่อแก้ไข

การส่งแบบฟอร์ม

(ติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

FULL
response

ออบเจ็กต์ FormResponse ที่แสดงคำตอบทั้งหมดของผู้ใช้ต่อแบบฟอร์ม

FormResponse
source

ออบเจ็กต์ Form ซึ่งแสดงไฟล์ Google ฟอร์มที่เชื่อมโยงกับสคริปต์

Form
triggerUid

รหัสของทริกเกอร์ที่ทำให้เกิดเหตุการณ์นี้

4034124084959907503

กิจกรรมใน Google ปฏิทิน

ทริกเกอร์ปฏิทินจะเริ่มทำงานเมื่อมีการอัปเดตกิจกรรมในปฏิทินของผู้ใช้ (สร้าง แก้ไข หรือลบ)

ตัวทริกเกอร์เหล่านี้ไม่ได้บอกคุณว่าเหตุการณ์ใดมีการเปลี่ยนแปลงหรือการเปลี่ยนแปลงอย่างไร แต่จะระบุว่าโค้ดต้องดำเนินการซิงค์เพิ่มเติมเพื่อรับการเปลี่ยนแปลงล่าสุดในปฏิทิน หากต้องการดูคำอธิบายทั้งหมดของขั้นตอนนี้ โปรดดูคำแนะนำเกี่ยวกับการซิงค์ทรัพยากรสำหรับ API ของปฏิทิน

หากต้องการซิงค์ข้อมูลกับปฏิทินใน Apps Script ให้ดำเนินการตามขั้นตอนต่อไปนี้

  1. เปิดใช้บริการขั้นสูงของปฏิทินสำหรับโปรเจ็กต์สคริปต์ บริการปฏิทินในตัวนั้นไม่เพียงพอสำหรับเวิร์กโฟลว์นี้
  2. กำหนดปฏิทินที่ควรซิงค์ สำหรับแต่ละปฏิทิน ให้ดำเนินการซิงค์ครั้งแรก โดยใช้เมธอด Events.list() ของบริการขั้นสูงของปฏิทิน
  3. ผลลัพธ์ของการซิงค์ครั้งแรกจะแสดง nextSyncToken สำหรับปฏิทินนั้น เก็บโทเค็นนี้เพื่อใช้ในภายหลัง
  4. เมื่อทริกเกอร์ EventUpdated ของ Apps Script เริ่มทำงานซึ่งระบุการเปลี่ยนแปลงกิจกรรมในปฏิทิน ให้ทำการซิงค์ที่เพิ่มขึ้นสำหรับปฏิทินที่ได้รับผลกระทบโดยใช้ nextSyncToken ที่จัดเก็บไว้ ส่วนนี่จะเป็นคำขอ Events.list() อีกแบบหนึ่ง แต่การระบุ nextSyncToken จะจำกัดการตอบกลับเฉพาะเหตุการณ์ที่มีการเปลี่ยนแปลงหลังจากการซิงค์ครั้งล่าสุดเท่านั้น
  5. ตรวจสอบการตอบสนองของการซิงค์เพื่อดูว่าเหตุการณ์ใดได้รับการอัปเดตและโค้ดตอบสนองอย่างเหมาะสม เช่น คุณสามารถบันทึกการเปลี่ยนแปลง อัปเดตสเปรดชีต ส่งประกาศทางอีเมล หรือดำเนินการอื่นๆ
  6. อัปเดต nextSyncToken ที่คุณจัดเก็บไว้สำหรับปฏิทินนั้นด้วยรายการที่แสดงโดยคำขอซิงค์ที่เพิ่มขึ้น ซึ่งจะบังคับให้การดำเนินการซิงค์ครั้งถัดไป แสดงการเปลี่ยนแปลงล่าสุดเท่านั้น

EventUpdated

(ติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

FULL
calendarId

รหัสสตริงของปฏิทินที่มีการอัปเดตกิจกรรม

susan@example.com
triggerUid

รหัสของทริกเกอร์ที่ทำให้เกิดเหตุการณ์นี้

4034124084959907503

กิจกรรมส่วนเสริมของ Google Workspace

ทริกเกอร์ onInstall() จะทำงานโดยอัตโนมัติเมื่อผู้ใช้ติดตั้งส่วนเสริม

ติดตั้ง

(แบบง่าย)
authMode

ค่าจาก enum ScriptApp.AuthMode

FULL

เหตุการณ์ในแอป Google Chat

ดูข้อมูลเกี่ยวกับออบเจ็กต์เหตุการณ์ใน Google Chat ได้ที่รับและตอบกลับการโต้ตอบกับแอป Google Chat

เหตุการณ์ที่ต้องเกิดขึ้นตามเวลา

ทริกเกอร์ที่ขึ้นอยู่กับเวลา (หรือที่เรียกว่าทริกเกอร์นาฬิกา) ช่วยให้สคริปต์ทำงานตามเวลาที่กำหนดไว้หรือตามรอบเวลาได้

ตามเวลา (ติดตั้งได้)
authMode

ค่าจาก enum ScriptApp.AuthMode

FULL
day-of-month

ตั้งแต่ 1 ถึง 31

เนื่องจากชื่อพร็อพเพอร์ตี้นี้มีขีดกลางและต้องเข้าถึงผ่าน e['day-of-month'] แทนที่จะเป็นสัญลักษณ์จุด

31
day-of-week

ระหว่าง 1 (วันจันทร์) ถึง 7 (วันอาทิตย์)

เนื่องจากชื่อพร็อพเพอร์ตี้นี้มีขีดกลางและต้องเข้าถึงผ่าน e['day-of-week'] แทนที่จะเป็นสัญลักษณ์จุด

7
hour

ตั้งแต่ 0 ถึง 23

23
minute

ตั้งแต่ 0 ถึง 59

59
month

ตั้งแต่ 1 ถึง 12

12
second

ตั้งแต่ 0 ถึง 59

59
timezone

เขตเวลา

UTC
triggerUid

รหัสของทริกเกอร์ที่ทำให้เกิดเหตุการณ์นี้

4034124084959907503
week-of-year

ตั้งแต่ 1 ถึง 52

เนื่องจากชื่อพร็อพเพอร์ตี้นี้มีขีดกลางและต้องเข้าถึงผ่าน e['week-of-year'] แทนที่จะเป็นสัญลักษณ์จุด

52
year

ปี

2015