رفتن به محتوای اصلی

رویدادها

رویداد (Event) این اجزای اصلی را دارد: عنوان، زمان شروع/پایان، پرچم allDay و calendarUid به یک تقویم زندهٔ همان حساب. نوشتن رویدادها CRUD جدا ندارد و فقط از sync انجام می‌شود؛ قرارداد زمان‌ها در زمان‌ها.

تکرار (recurrence):

  • rrule مقدار قانون تکرار به‌شکل FREQ=WEEKLY;BYDAY=MO است (بدون پیشوند RRULE:). سرور پیشوند را حذف و قانون را اعتبارسنجی می‌کند؛ مقدار نامعتبر خطای همان آیتم sync می‌شود.
  • exdate فهرست شروعِ استثناهاست: رشتهٔ ISO با کاما جدا شده. مقدار نامعتبر، خطای همان آیتم است.
  • سرور فقط رکورد master را نگه می‌دارد؛ گسترش رخدادهای تکرارشونده به نمونه‌های مجزا مسئولیت کلاینت است.
  • فیلدهای رزروشدهٔ schema برای نمونه‌های تکرار، قابلیت ویرایش تک‌رخداد نیستند.

منشأ و شناسهٔ بیرونی:

  • source/sourceId منشأ رویداد و شناسهٔ آن نزد منبع را نگه می‌دارند.
  • providerId عدد صحیح امن اختیاری/nullable در بازهٔ -9007199254740991..9007199254740991 است؛ ذخیره و pull می‌شود، غیبت در patch حفظ و null پاک می‌کند.
  • وجود این فیلدها اتصال فعال به Google/Android نیست و providerId جایگزین uid نیست.

iCal پیاده نشده و DTO رویداد فیلد ical ندارد. مرجع فیلدها: packages/contracts/src/sync.ts.