본문으로 건너뛰기
AZ Tools

ICS (iCalendar) 이벤트 빌더

제목·시작/종료·장소·참석자·반복 규칙·알림이 포함된 .ics 캘린더 이벤트 파일을 만듭니다. RFC 5545 표준 준수, 브라우저 내 생성.

생성된 .ics

필수 항목 누락: 이벤트 제목

—

모든 데이터는 브라우저 안에만 머뭅니다. RFC 5545에 따라 CRLF 줄바꿈과 75바이트(UTF-8) 라인 폴딩을 사용합니다.

사용법

  1. 이벤트 제목, 시작/종료 시간을 입력하거나 '종일' 옵션을 체크합니다.
  2. 필요 시 장소, 설명, 주최자 이메일, 참석자 이메일(쉼표 구분), 반복, 알림을 설정합니다.
  3. .ics 텍스트를 복사하거나 다운로드 후 캘린더 앱에서 두 번 클릭해 가져오면 됩니다.

자세한 설명

펼치기

표준 RFC 5545 .ics 파일로 일정 하나를 만듭니다. 구글 캘린더, 애플 캘린더, 아웃룩, 패스트메일 등 iCalendar 호환 앱이면 어디든 가져올 수 있습니다. 제목, 시작과 종료 시각(또는 종일 표시), 장소, 주최자, 참석자, 반복 규칙(RRULE), 선택적 알림(VALARM), URL을 설정할 수 있습니다. 파일은 그 자리에서 생성되어 내려받기로 제공되며 아무것도 업로드하지 않습니다.

.ics 파일은 일정에 대한 설명이지 초대장이 아닙니다. 가져오기를 하면 자기 캘린더에 일정이 올라갈 뿐 누구에게도 아무것도 보내지 않으므로, 참석자를 적는 것은 요청이 아니라 누가 참석할 예정인지를 기록하는 일입니다. 실제 초대를 보내려면 iTIP 메서드를 REQUEST로 설정해 파일을 메일로 보내야 하는데, 이것은 캘린더 서버가 대신 해 주는 일이고 내려받은 파일 혼자서는 할 수 없습니다.

종일 일정은 시각 없이 날짜로만 저장되고 종료 날짜는 배타적입니다. 3일 하루짜리 일정은 4일에 끝납니다. 하루 어긋나는 이 실수가 손으로 쓴 iCalendar에서 가장 흔한 버그이며, 다른 데서 만든 일정이 하루 짧게 표시되는 이유이기도 합니다. 여기서 만드는 시각 있는 일정은 시간대를 명시적으로 담습니다. 같은 벽시계 시각이 장소마다 다른 순간을 뜻하기 때문에 중요하며, 시간대 없이 쓴 일정은 여는 사람의 현지 시각으로 해석됩니다.

가장 놀라기 쉬운 부분은 반복입니다. RRULE은 목록이 아니라 패턴을 기술하므로 클라이언트가 펼쳐서 보여 주는데, 가장자리에서 클라이언트마다 해석이 갈립니다. 매달 31일 규칙은 31일이 없는 달을 건너뛰는 구현도 있고 그달의 마지막 날로 당기는 구현도 있으며, UNTIL로 끝나는 규칙은 시작에 시간대가 붙어 있으면 그 시각을 UTC로 적어야 합니다.

파일 하나에 일정 하나입니다. 같은 파일을 두 번 가져오면 UID가 일정을 식별하므로 대개 중복이 아니라 갱신이 되지만, UID를 무시하는 앱은 태연히 두 번째 사본을 만듭니다.

자주 묻는 질문

시간 정보는 어떻게 저장되나요?

종일이 아닌 이벤트는 DTSTART/DTEND를 UTC(끝 Z)로 기록합니다. 브라우저가 로컬 입력을 UTC로 변환합니다. 받는 사람의 캘린더 앱에서는 다시 그 사람의 로컬 시간대로 표시됩니다.

'종일' 옵션은 무엇을 하나요?

DTSTART;VALUE=DATE와 DTEND;VALUE=DATE로 다음 날짜를 기록합니다(RFC 5545에 따라 종일 이벤트의 DTEND는 배타적). 시간대는 무시됩니다.

어떤 반복 옵션을 지원하나요?

매일, 매주, 격주, 매월, 매년, 평일(월-금)을 지원합니다. 더 복잡한 패턴(예: 매월 셋째 금요일)은 출력 결과를 직접 편집하세요.

참석자 이메일에 실제로 초대장이 발송되나요?

아니요. 이 도구는 ATTENDEE 라인만 파일에 씁니다. 실제 초대 메일 전송은 캘린더 서버(CalDAV)나 .ics 첨부를 회의 요청으로 처리하는 이메일 클라이언트가 담당합니다.

관련 도구