Guide 2026년 6월 14일

일정을 등록하고 싱크하기 위한 요건

일정을 구현하기 위한 일반적인 조건을 설명합니다.

일정을 등록하고 싱크하기 위한 요건

일정을 등록

  • 일정에 포함되는 내용
  • 제목, 종일일정, 시작일 시간 종료일 시간
  • 일정분류 – 내가 쓰기 권한이 있는 폴더
  • 위치, 참석자등록 주최자는 작성자, 초대는 검색해서 추가
  • 초대자 일정을 조회해서 볼수 있어야하는 유효일정 확인
  • 반복일정 설정
  • 내용
  • 첨부파일 – 옵션

일정추가

해당 항목을 ical형식에 맞게 변환해서 gateway-api를 통해 smartermail 서버로 전달

  • FREQ: 반복 주기 (DAILY, WEEKLY, MONTHLY, YEARLY)
  • INTERVAL: 반복 간격 (: INTERVAL=2 2일마다, 2주마다)
  • BYDAY: 요일 지정 (MO=, TU=, WE= )
  • BYMONTHDAY: 특정 월의 날짜 지정 (: 15)
  • BYMONTH: 특정 지정 (: 1, 6)
  • UNTIL: 반복 종료 시점 (UTC 형식)
  • COUNT: 반복 횟수 제한

일정변경 업데이트 UID, SEQUENCE DTSTAMP 값을 조회해서 일정을 찾아 ical update

UID 기반 식별 

  • 각 이벤트는 UID 속성을 가집니다. 업데이트 시 동일한 UID를 가진 이벤트를 찾아 수정합니다.
  • UID는 고유해야 하며, 변경하지 않습니다.

SEQUENCE 증가 

  • 이벤트가 수정될 때마다 SEQUENCE 값을 증가시켜 클라이언트가 최신 버전을 인식하도록 합니다.
  • 예: SEQUENCE:2 → 수정 후 SEQUENCE:3

DTSTAMP 갱신 

  • 이벤트가 업데이트된 시각을 DTSTAMP에 기록합니다.
  • 클라이언트는 이 값을 보고 최신 여부를 판단합니다.

일정삭제 UID, SEQUENCE DTSTAMP 값을 조회해서 일정을 찾아 삭제

gateway-api iCal 기반 캘린더 서버 (smatermail) 에서 전체 일정 데이터를 주기적으로 가져옵니다,

일정 추가, 변경,삭제, 동기화 등의 이벤트발생시 UID·SEQUENCE·DTSTAMP 기준으로 변경된 이벤트만 추려서 DB 반영하는 구조로 변경합니다.

← Support 목록으로