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