บริการปฏิทินขั้นสูงช่วยให้คุณใช้ Google Calendar API สาธารณะใน 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)
เดียวกันกับที่กำหนดไว้ในตัวอย่างด้านบน