나중에 참조할 수 있도록 번역된 RFC 2446을 그대로 둡니다.
iCalendar 전송 독립 상호 운용성 프로토콜(iTIP)
이벤트, BusyTime, 할 일 및 저널 항목 예약
개요
이 문서는 달력 시스템이 iCalendar 개체를 사용하여 다른 달력 시스템과 상호 작용할 수 있는 방법을 지정합니다.
이는 시스템 간의 다양한 통신 방법을 허용하는 일반적인 방식으로 수행됩니다.
후속 문서는 이 프로토콜을 사용하는 시스템 간의 상호 운용 가능한 통신 방법을 지정합니다.
이 문서에서는 정적 및 동적 이벤트, 할 일, 저널 및 약속 있음/없음 개체를 모두 정의하는 일정 교환 모델에 대해 설명합니다.
정적 개체는 원래 항목과의 연속성 또는 참조 무결성을 기대하지 않고 한 개체에서 다른 개체로 정보를 전송하는 데 사용됩니다.
동적 개체는 정적 개체의 상위 집합이며 정적 개체만 지원하는 클라이언트의 경우 자연스럽게 정적 개체로 저하됩니다.
이 문서는 서로 다른 달력 시스템 간에 달력 상호 운용성을 제공하는 iCalendar 개체 사양을 기반으로 하는 인터넷 프로토콜을 지정합니다.
이 인터넷 프로토콜을 “iCalendar Transport Independent Interoperability Protocol”(iTIP)이라고 합니다.
iTIP은 현재 달력 시스템에서 일반적으로 사용할 수 있는 그룹 일정 방법에 대한 의미 체계를 추가하여 iCalendar 개체 사양을 보완합니다.
이러한 예약 방법을 사용하면 두 개 이상의 캘린더 시스템에서 게시, 예약, 일정 변경, 예약 요청 응답, 변경 협상 또는 iCalendar 기반 캘린더 구성 요소 취소와 같은 트랜잭션을 수행할 수 있습니다.
iTIP은 스케줄링 정보를 전송하는 데 사용되는 특정 전송 방법과 독립적으로 정의됩니다.
iTIP에 대한 동반 메모는 여러 인터넷 프로토콜에 대한 상호 운용성 프로토콜 바인딩을 제공합니다.
1. 소개
이 문서는 캘린더 시스템이 iCalendar 개체를 사용하여 다른 캘린더 시스템과 상호 운용할 수 있는 방법을 지정합니다.
특히 이벤트, 할 일 또는 일일 저널 항목을 예약하는 방법을 지정합니다.
또한 사용 가능한 최번시 정보를 검색하는 방법도 지정합니다.
이는 시스템 간의 다양한 통신 방법을 허용하는 일반적인 방식으로 수행됩니다.
후속 문서는 이 프로토콜을 사용하는 시스템 간의 전송 바인딩을 지정합니다.
이 프로토콜은 보낸 사람이 한 명 이상의 받는 사람에게 보낸 메시지를 기반으로 합니다.
특정 유형의 메시지에 대해 수신자는 상태 업데이트에 응답할 수 있으며 트랜잭션/요청 상태 정보를 반환할 수도 있습니다.
이 프로토콜은 원본 메시지를 수정하거나 취소할 수 있는 메시지 발신자의 기능을 지원합니다.
이 프로토콜은 수신자가 메시지 발신자에게 변경 사항을 제안하는 기능도 지원합니다.
프로토콜의 요소는 트랜잭션에 대한 사용자 역할도 정의합니다.
1.1 서식 규칙
(iCAL) 및 (iTIP)에 정의된 몇 가지 공식 규칙은 일정 관리 및 일정 모델, 핵심 개체 또는 상호 운용성 프로토콜의 요소를 참조하는 데 사용되었습니다.
이 문서에서 키워드 “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENT”, “MAY” 및 “OPTIONAL”은 -2119).
일정 및 예약 역할은 각 단어의 첫 글자가 대문자이고 따옴표로 묶인 텍스트 문자열로 참조됩니다.
예를 들어, ‘Organizer’는 (iTIP)에 정의된 스케줄링 프로토콜 내에서 ‘Calendar User'(CU)의 역할을 나타냅니다.
iCAL)은 대문자로 된 따옴표 문자열로 참조됩니다.
모든 달력 구성 요소는 문자 “V”로 시작합니다.
예를 들어 “VEVENT”는 이벤트 캘린더 구성 요소, “VTODO”는 할일 캘린더 구성 요소, “VJOURNAL”은 일일 저널 캘린더 구성 요소를 나타냅니다.
(iTIP)에 정의된 스케줄링 방법은 대문자로 인용된 텍스트로 참조됩니다.
예를 들어, “요청”은 달력 구성 요소의 생성 또는 수정을 요청하는 방법을 의미하고 “응답”은 요청을 받은 사람이 달력 구성 요소의 “주최자”에게 자신의 상태를 업데이트하는 데 사용됩니다.
방법을 의미합니다.
(iCAL)에 정의된 속성은 “attribute”라는 단어가 뒤따르는 대문자로 된 따옴표로 묶인 텍스트 문자열에 의해 참조됩니다.
예를 들어 “attendee” 특성은 “캘린더 사용자”의 캘린더 주소를 전달하는 데 사용되는 iCalendar 특성을 나타냅니다.
이 노트에 정의된 속성 매개변수는 소문자 인용 부호로 묶인 텍스트 문자열이 뒤따르는 “매개변수”라는 단어로 참조됩니다.
예를 들어 “value” 매개변수는 속성 값의 기본 데이터 유형을 재정의하는 데 사용되는 iCalendar 속성 매개변수를 나타냅니다.
이 노트에 정의된 열거 값은 대문자로 된 텍스트로만 참조되거나 뒤에 “value”라는 단어가 붙습니다.
테이블에서 따옴표로 묶인 문자열 텍스트는 테이블 길이를 최소화하기 위해 따옴표 없이 지정됩니다.
1.2 관련 문서
이 문서 외에도 구현자는 인터넷 일정 및 일정 표준을 설명하는 몇 가지 다른 참고 사항을 숙지해야 합니다.
이 문서(iTIP)는 서로 다른 구현 간의 스케줄링을 위한 상호 운용성 프로토콜을 지정합니다.
관련 문서는 다음과 같습니다.
(iCAL) – 프로토콜에서 사용하는 객체, 데이터 유형, 속성 및 속성 매개변수와 이를 표현하고 인코딩하는 방법을 지정합니다.
(iMIP) – (iTIP)에 대한 인터넷 이메일 바인딩을 지정합니다.
이 메모는 이러한 다른 메모의 개념이나 정의에 대한 설명을 반복하지 않습니다.
가능한 경우 이러한 개념 또는 정의에 대한 사양을 제공하는 참고 사항을 참조하십시오.
1.3 ITIP 역할 및 트랜잭션
ITIP는 “캘린더 사용자”(CU) 간에 그룹 일정 관리 및 예약 목적으로 iCAL(iCAL) 개체를 교환하는 방법을 정의합니다.
CU는 iTIP에서 두 가지 역할 중 하나를 수행합니다.
교환을 시작하는 CU는 “주최자”의 역할을 맡습니다.
예를 들어 “주최자”는 그룹 회의를 제안한 CU입니다.
“주최자”가 그룹 회의에 참여하도록 요청하면 CU는 “참석자”(참석자) 역할을 맡습니다.
“역할”은 _ATTENDEE_ 속성에 대한 설명 매개변수이기도 합니다.
이 매개 변수는 ‘의장’, ‘참가자 요청’ 또는 ‘비참가자’와 같은 설명 컨텍스트를 ‘참석자’에게 전달하는 데 사용되며 일정 워크플로와 관련이 없습니다.
ITIP 방법은 아래에 나열되어 있으며 사용법과 의미는 이 문서의 섹션 3에 정의되어 있습니다.
방법 | 설명 |
게시 | 한 명 이상의 캘린더 사용자에게 캘린더 항목을 게시하는 데 사용됩니다. 게시자와 다른 캘린더 사용자 간에는 상호 작용이 없습니다. 예를 들어 야구팀이 일정을 공개합니다. |
요구 | 다른 달력 사용자와 일정 항목을 예약하는 데 사용됩니다. 요청은 수신자가 응답 방법을 사용하여 응답해야 한다는 점에서 대화형입니다. 회의 요청, 바쁜 시간 요청 및 다른 캘린더 사용자에 대한 VTODO 할당이 모두 예입니다. 요청은 또한 일정 항목의 상태를 업데이트하기 위해 ‘주최자’가 사용합니다. |
회신하다 | 회신은 ‘참석자’ 상태를 ‘호스트’에게 전달하라는 요청에 대한 응답으로 사용됩니다. 회신은 일반적으로 모임 및 작업 요청에 응답하는 데 사용됩니다. |
추가하다 | 기존 VEVENT, VTODO 또는 VJOURNAL에 하나 이상의 인스턴스를 추가합니다. |
취소 | VEVENT, VTODO 또는 VJOURNAL의 기존 인스턴스를 하나 이상 취소합니다. |
새로 고치다 | REFRESH 메소드는 ‘Attendee’가 캘린더 항목의 최신 버전을 요청하는 데 사용됩니다. |
카운터 | 카운터 방법은 ‘참석자’가 일정 항목에 대한 변경 사항을 협상하는 데 사용됩니다. 예를 들어 제안된 이벤트의 시간을 변경하거나 VTODO의 기한을 변경하라는 요청입니다. |
거부 카운터 | “주최자”가 제안한 반대 제안을 거부하는 데 사용됩니다. |
iTIP의 그룹 스케줄링은 위에서 설명한 “요청” 및 “응답” 세트를 사용하여 수행됩니다.
다음 표는 보낼 수 있는 사람에 따라 분류된 방법을 보여줍니다.
+================+==================================================+
| Originator | Methods |
|================+==================================================|
| Organizer | PUBLISH, REQUEST, ADD, CANCEL, DECLINECOUNTER |
| | |
| Attendee | REPLY, REFRESH, COUNTER |
| | REQUEST only when delegating |
+================+==================================================+
일부 달력 구성 요소 유형의 경우 허용되는 메서드는 위 집합의 하위 집합입니다.