การสร้างอินเทอร์เฟซของ Google ปฏิทิน

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

เมื่อสร้างอินเทอร์เฟซส่วนเสริมสำหรับ Google ปฏิทิน คุณอาจระบุหน้าแรก คุณสามารถใช้หน้าแรกเดียวกันสำหรับหลายโฮสต์ หรือออกแบบโฮสต์ใดโฮสต์หนึ่งสำหรับ Google ปฏิทินก็ได้

นอกจากนี้ ส่วนเสริมยังจะกำหนดอินเทอร์เฟซที่ปรากฏขึ้นเมื่อผู้ใช้เปิดกิจกรรมในปฏิทินได้อีกด้วย

การเข้าถึง UI ส่วนเสริม

ส่วนเสริมของ Google Workspace สามารถกำหนดอินเทอร์เฟซหน้าแรก อินเทอร์เฟซกิจกรรมของ Google ปฏิทิน อินเทอร์เฟซการเลือกไฟล์แนบ หรือทั้ง 3 ประเภทตามวิธีการเปิด ดังนี้

  • หากผู้ใช้คลิกไอคอนส่วนเสริมขณะอยู่ในมุมมองปฏิทิน ส่วนเสริมจะเรียกใช้ฟังก์ชัน calendar.homepageTrigger ที่เกี่ยวข้อง (หากมี) ฟังก์ชันนี้จะสร้างและแสดงผล การ์ดหน้าแรกไปยังปฏิทินเพื่อแสดง หากไม่ได้กำหนดฟังก์ชัน calendar.homepageTrigger ไว้ ระบบจะแสดงการ์ดหน้าแรกทั่วไปแทน
  • หากผู้ใช้เปิดกิจกรรมในปฏิทิน แล้วคลิกไอคอนส่วนเสริม หรือส่วนเสริมนั้นเปิดอยู่เมื่อผู้ใช้เปิดกิจกรรม ส่วนเสริมจะเรียกใช้ฟังก์ชัน eventOpenTrigger ที่เกี่ยวข้อง (หากมี) ฟังก์ชันนี้จะสร้างอินเทอร์เฟซกิจกรรมในปฏิทินของส่วนเสริม และกลับไปยัง Google ปฏิทินเพื่อแสดง
  • หากส่วนเสริมกำหนดฟังก์ชัน eventAttachmentTrigger ส่วนเสริมนั้นจะปรากฏเป็นผู้ให้บริการไฟล์แนบเมื่อผู้ใช้คลิกเพิ่มไฟล์แนบขณะแก้ไขกิจกรรมในปฏิทิน เมื่อเลือกส่วนเสริมแล้ว ฟังก์ชัน eventAttachmentTrigger จะสร้างอินเทอร์เฟซการเลือกไฟล์แนบของส่วนเสริมและส่งไปยัง Google ปฏิทินเพื่อแสดง

การสร้างอินเทอร์เฟซปฏิทินที่เป็นส่วนเสริม

คุณขยายเวลาการใช้งาน Google ปฏิทินได้ด้วยส่วนเสริม Google Workspace โดยทำตามขั้นตอนต่อไปนี้

  1. เลือกว่าต้องการให้ส่วนเสริมมีหน้าแรกสำหรับปฏิทินโดยเฉพาะหรือไม่ นอกจากนี้ ให้ตัดสินใจว่าคุณจะมีอินเทอร์เฟซที่กำหนดเองขณะที่ผู้ใช้แก้ไขกิจกรรมในปฏิทินหรือไม่
  2. เพิ่มช่อง addOns.common และ addOns.calendar ที่เหมาะสมลงในไฟล์ Manifest ของโปรเจ็กต์สคริปต์ส่วนเสริม ซึ่งรวมถึงขอบเขตใดก็ตามที่จำเป็น
  3. หากคุณระบุหน้าแรกสำหรับปฏิทินโดยเฉพาะ ให้ใช้ฟังก์ชัน calendar.homepageTrigger เพื่อสร้างอินเทอร์เฟซนี้ คุณยังเลือกใช้อินเทอร์เฟซ common.homepageTrigger กับโฮสต์ Google Workspace หลายรายได้ด้วย
  4. หากคุณให้บริการอินเทอร์เฟซกิจกรรมในปฏิทิน คุณต้องใช้ฟังก์ชัน calendar.eventOpenTrigger เพื่อสร้างอินเทอร์เฟซนี้ ดูรายละเอียดได้ที่ การขยายอินเทอร์เฟซกิจกรรมในปฏิทิน
  5. ใช้ฟังก์ชันเรียกกลับที่เกี่ยวข้องซึ่งจำเป็นต่อการตอบสนองการโต้ตอบใน UI ของผู้ใช้ เช่น การคลิกปุ่ม

หน้าแรกของปฏิทิน

Google ปฏิทินรองรับการแสดงหน้าแรกที่เป็นส่วนเสริมของ Google Workspace หากต้องการแสดงหน้าแรกทั่วไปของส่วนเสริมใน Google ปฏิทิน เพียงตรวจสอบว่ามีช่อง addOns.calendar ในไฟล์ Manifest ของส่วนเสริม

หรือเพิ่ม calendar.homepageTrigger ไปยังไฟล์ Manifest ของส่วนเสริมเพื่อระบุหน้าแรกสำหรับปฏิทินโดยเฉพาะ

ทั้ง 2 กรณีนี้ คุณต้องระบุชื่อของฟังก์ชันทริกเกอร์หน้าแรกในโปรเจ็กต์สคริปต์ของส่วนเสริม ฟังก์ชันนี้จะถูกเรียกโดยอัตโนมัติเพื่อสร้างหน้าแรกของ Google ปฏิทิน เมื่อจำเป็น คุณต้องใช้ฟังก์ชันนี้เพื่อสร้างและแสดงผล Card รายการเดียวหรืออาร์เรย์ของออบเจ็กต์ Card ที่ประกอบกันเป็นหน้าแรก ฟังก์ชันทริกเกอร์หน้าแรกจะส่งออบเจ็กต์เหตุการณ์เป็นพารามิเตอร์ที่มีข้อมูลทั่วไปบางอย่าง เช่น แพลตฟอร์มของไคลเอ็นต์ คุณสามารถใช้ข้อมูลออบเจ็กต์เหตุการณ์เพื่อปรับแต่งโครงสร้างของหน้าแรก

การขยายอินเทอร์เฟซกิจกรรมในปฏิทิน

Google ปฏิทินจะใช้ทริกเกอร์ตามบริบทในการกำหนดอินเทอร์เฟซ (หากมี) ที่จะแสดงเมื่อผู้ใช้แก้ไขกิจกรรมในปฏิทิน เมื่อทริกเกอร์เริ่มทำงาน ทริกเกอร์จะเรียกใช้ฟังก์ชันทริกเกอร์ตามบริบทที่ระบุโดยช่อง calendar.eventOpenTrigger ในไฟล์ Manifest ของส่วนเสริม

คุณต้องใช้ฟังก์ชันที่มีชื่ออยู่ในช่อง calendar.eventOpenTrigger ฟังก์ชันนี้ยอมรับออบเจ็กต์เหตุการณ์เป็นอาร์กิวเมนต์และต้องแสดงผลออบเจ็กต์ Card รายการเดียวหรืออาร์เรย์ของออบเจ็กต์ Card เพื่อให้ปฏิทินแสดงขณะที่ผู้ใช้เปิดกิจกรรมอยู่

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

ระบบจะสร้างออบเจ็กต์เหตุการณ์และส่งไปยังฟังก์ชันทริกเกอร์ตามบริบทของ calendar.eventOpenTrigger เมื่อผู้ใช้เปิดกิจกรรมในปฏิทิน ฟังก์ชันทริกเกอร์สามารถใช้ข้อมูลในออบเจ็กต์เหตุการณ์นี้เพื่อกำหนดวิธีสร้างการ์ดส่วนเสริมหรือควบคุมลักษณะการทำงานของส่วนเสริม นอกจากนี้ ระบบจะสร้างและส่งต่อออบเจ็กต์เหตุการณ์ไปยัง homepageTrigger ฟังก์ชันการทำงานเมื่อเปิดส่วนเสริมเป็นครั้งแรก และเมื่อผู้ใช้คลิกหรือเลือกวิดเจ็ตแบบอินเทอร์แอกทีฟ

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

การอัปเดตกิจกรรมในปฏิทิน

นอกเหนือจากบริบท calendar.eventOpenTrigger ที่เริ่มทำงานเมื่อผู้ใช้เปิดกิจกรรมในปฏิทินเพื่อแก้ไขแล้ว คุณยังกำหนด calendar.eventUpdateTrigger ที่จะเริ่มทำงานเมื่อผู้ใช้อัปเดตและบันทึกกิจกรรมในปฏิทินได้เช่นกัน ทริกเกอร์นี้จะเริ่มทำงานเมื่อผู้ใช้ทำการแก้ไขต่อไปนี้อย่างน้อย 1 รายการ

  • เพิ่มผู้เข้าร่วมอย่างน้อย 1 คน
  • นำผู้เข้าร่วมออกอย่างน้อย 1 คน
  • เพิ่มหรือเปลี่ยนไปใช้โซลูชันการประชุมอื่น

เมื่อทริกเกอร์นี้เริ่มทํางาน ทริกเกอร์จะดําเนินการฟังก์ชันทริกเกอร์ที่ระบุโดยช่อง Manifest calendar.eventUpdateTrigger ฟังก์ชันนี้จะทำงานก่อนที่การแก้ไขกิจกรรมในปฏิทินจะได้รับการบันทึก

calendar.eventUpdateTrigger โดยทั่วไปจะใช้เพื่อทำสิ่งต่อไปนี้อย่างน้อย 1 อย่าง

  • อัปเดตอินเทอร์เฟซกิจกรรมในปฏิทินของส่วนเสริมเพื่อตอบสนองการเปลี่ยนแปลงของผู้ใช้ในกิจกรรมในปฏิทิน
  • ซิงค์ข้อมูลกิจกรรมในปฏิทินกับระบบของบุคคลที่สาม เช่น ระบบการประชุมที่เชื่อมต่อกับ Google ปฏิทิน

หากต้องการให้ส่วนเสริมปรับเปลี่ยนข้อมูลของกิจกรรมในปฏิทิน (เช่น รายชื่อผู้เข้าร่วม) คุณต้องตั้งค่าช่อง Manifest calendar.currentEventAccess ของส่วนเสริมเป็น WRITE หรือ READ_WRITE ส่วนเสริมต้องมีhttps://www.googleapis.com/auth/calendar.addons.current.event.write ขอบเขตด้วย

การเพิ่มโซลูชันการประชุม

โซลูชันการประชุมเป็นตัวแทนตัวเลือกการประชุมของบุคคลที่สามที่ผู้ใช้สามารถแนบไปกับกิจกรรมใน Google ปฏิทินได้ เอกสารประกอบภาพรวมการประชุมของบุคคลที่สามมีรายละเอียดเกี่ยวกับวิธีสร้างส่วนเสริมที่จะเพิ่มโซลูชันการประชุมใหม่ๆ ไม่จำเป็นต้องสร้าง UI สำหรับส่วนขยายประเภทนี้ โซลูชันที่เพิ่มจะปรากฏเป็นตัวเลือกในเมนูแบบเลื่อนลงของ UI กิจกรรมใน Google ปฏิทิน