บริการปฏิทินขั้นสูงช่วยให้คุณใช้ API ของ Google ปฏิทินสาธารณะใน Apps Script ได้ API นี้ช่วยให้สคริปต์เข้าถึงและแก้ไข Google ปฏิทินของผู้ใช้ได้ รวมถึงปฏิทินเพิ่มเติมที่ผู้ใช้สมัครรับข้อมูล ซึ่งคล้ายกับบริการปฏิทินในตัวของ Apps Script ในกรณีส่วนใหญ่ บริการในตัวจะใช้งานง่ายกว่า แต่บริการขั้นสูงนี้จะมีฟีเจอร์เพิ่มเติมเล็กน้อย เช่น การตั้งค่าสีพื้นหลังสำหรับแต่ละกิจกรรม
ข้อมูลอ้างอิง
สำหรับข้อมูลโดยละเอียดเกี่ยวกับบริการนี้ โปรดดูเอกสารอ้างอิงสำหรับ Google Calendar API สาธารณะ เช่นเดียวกับบริการขั้นสูงทั้งหมดใน Apps Script บริการปฏิทินขั้นสูงจะใช้ออบเจ็กต์ เมธอด และพารามิเตอร์เดียวกันกับ API สาธารณะ โปรดดูข้อมูลเพิ่มเติมที่หัวข้อวิธีกำหนดลายเซ็นของเมธอด
หากต้องการรายงานปัญหาและค้นหาการสนับสนุนอื่นๆ โปรดดูคู่มือการสนับสนุนปฏิทิน
ส่วนหัวของคำขอ HTTP
บริการปฏิทินขั้นสูงสามารถยอมรับส่วนหัวของคำขอ HTTP If-Match
และ If-None-Match
ดูรายละเอียดได้ที่เอกสารอ้างอิง
รหัสตัวอย่าง
โค้ดตัวอย่างด้านล่างใช้ API เวอร์ชัน 3
การสร้างเหตุการณ์
ตัวอย่างต่อไปนี้แสดงวิธีสร้างกิจกรรมในปฏิทินเริ่มต้นของผู้ใช้
แสดงรายการปฏิทิน
ตัวอย่างต่อไปนี้แสดงวิธีเรียกดูรายละเอียดเกี่ยวกับปฏิทินที่แสดงในรายการปฏิทินของผู้ใช้
เหตุการณ์ในรายการ
ตัวอย่างต่อไปนี้แสดงวิธีแสดงรายการกิจกรรม 10 รายการถัดไปที่กำลังจะเกิดขึ้นในปฏิทินเริ่มต้นของผู้ใช้
การแก้ไขเหตุการณ์แบบมีเงื่อนไข
ตัวอย่างต่อไปนี้แสดงวิธีอัปเดตกิจกรรมในปฏิทินแบบมีเงื่อนไขโดยใช้ส่วนหัว If-Match
สคริปต์นี้จะสร้างกิจกรรมใหม่ รอ 30 วินาที แล้วอัปเดตกิจกรรมเฉพาะในกรณีที่ไม่มีการเปลี่ยนแปลงรายละเอียดกิจกรรมนับตั้งแต่ที่สร้างกิจกรรมเท่านั้น
การเรียกข้อมูลกิจกรรมแบบมีเงื่อนไข
ตัวอย่างต่อไปนี้แสดงวิธีดึงข้อมูลกิจกรรมในปฏิทินแบบมีเงื่อนไขโดยใช้ส่วนหัว If-None-Match
สคริปต์จะสร้างเหตุการณ์ใหม่ แล้วสำรวจกิจกรรมนั้นเพื่อดูการเปลี่ยนแปลงเป็นเวลา 30 วินาที เมื่อเหตุการณ์มีการเปลี่ยนแปลง
ระบบจะดึงข้อมูลเวอร์ชันใหม่
การซิงค์กิจกรรม
ตัวอย่างต่อไปนี้แสดงวิธีเรียกเหตุการณ์โดยใช้โทเค็นการซิงค์ เมื่อคุณรวมโทเค็นการซิงค์ในคำขอบริการขั้นสูงของปฏิทิน การตอบกลับที่ได้จะรวมเฉพาะรายการที่มีการเปลี่ยนแปลงตั้งแต่โทเค็นนั้นสร้างขึ้น ซึ่งทำให้การประมวลผลมีประสิทธิภาพมากขึ้น ดูรายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการซิงค์ได้ที่ซิงค์ข้อมูลทรัพยากรอย่างมีประสิทธิภาพ
ตัวอย่างต่อไปนี้ใช้เมธอด getRelativeDate(daysOffset, hour)
เดียวกันกับที่กำหนดไว้ในตัวอย่างด้านบน