سرویس پیشرفته Calendar به شما امکان می دهد از API عمومی Google Calendar در Apps Script استفاده کنید. بسیار شبیه به سرویس تقویم داخلی Apps Script، این API به اسکریپتها اجازه میدهد تا به تقویم Google کاربر، از جمله تقویمهای اضافی که کاربر در آنها مشترک است، دسترسی داشته باشند و آن را تغییر دهند. در بیشتر موارد، استفاده از سرویس داخلی آسانتر است، اما این سرویس پیشرفته چند ویژگی اضافی از جمله تنظیم رنگ پسزمینه برای رویدادهای فردی را فراهم میکند.
مرجع
برای اطلاعات دقیق در مورد این سرویس، به مستندات مرجع برای API عمومی Google Calendar مراجعه کنید. مانند همه سرویسهای پیشرفته در Apps Script، سرویس تقویم پیشرفته از همان اشیا، روشها و پارامترهای API عمومی استفاده میکند. برای اطلاعات بیشتر، نحوه تعیین امضای روش را ببینید.
برای گزارش مشکلات و یافتن پشتیبانی دیگر، راهنمای پشتیبانی تقویم را ببینید.
هدرهای درخواست HTTP
سرویس پیشرفته تقویم میتواند سرصفحههای درخواست HTTP If-Match
و If-None-Match
را بپذیرد. برای جزئیات، به مستندات مرجع مراجعه کنید.
کد نمونه
کد نمونه زیر از نسخه 3 API استفاده می کند.
ایجاد رویدادها
مثال زیر نحوه ایجاد یک رویداد در تقویم پیش فرض کاربر را نشان می دهد.
فهرست بندی تقویم ها
مثال زیر نحوه بازیابی جزئیات مربوط به تقویم های نشان داده شده در لیست تقویم کاربر را نشان می دهد.
فهرست کردن رویدادها
مثال زیر نشان می دهد که چگونه می توان 10 رویداد بعدی را در تقویم پیش فرض کاربر فهرست کرد.
تغییر مشروط یک رویداد
مثال زیر نحوه بهروزرسانی شرطی یک رویداد Calendar را با استفاده از هدر If-Match
نشان میدهد. اسکریپت یک رویداد جدید ایجاد می کند، 30 ثانیه صبر می کند، سپس رویداد را فقط در صورتی به روز می کند که جزئیات رویداد از زمان ایجاد رویداد تغییر نکرده باشد.
بازیابی مشروط یک رویداد
مثال زیر نحوه واکشی مشروط یک رویداد Calendar را با استفاده از هدر If-None-Match
نشان می دهد. اسکریپت یک رویداد جدید ایجاد می کند، سپس رویداد را برای تغییرات به مدت 30 ثانیه نظرسنجی می کند. هر زمان که رویداد تغییر کند، نسخه جدید واکشی می شود.
همگام سازی رویدادها
مثال زیر نحوه بازیابی رویدادها را با استفاده از نشانه های همگام نشان می دهد. هنگامی که یک نشانه همگامسازی را در درخواست سرویس پیشرفته تقویم اضافه میکنید، پاسخ حاصل تنها شامل مواردی میشود که از زمان ایجاد آن نشانه تغییر کردهاند و پردازش کارآمدتری را ممکن میسازد. برای جزئیات بیشتر در مورد فرآیند همگامسازی، به همگامسازی کارآمد منابع مراجعه کنید.
مثال زیر از همان روش getRelativeDate(daysOffset, hour)
استفاده می کند که در مثال های بالا تعریف شده است.