iCalendarデータ形式

    iCalendarデータ形式はインターネットユーザーがメールでスケジュールなどを共有する際に .ics拡張子でファイルを共有できるようにするファイル形式です。iCalendarデータファイルの受信者は、メールクライアントやカレンダープログラムなどを使って送信者へ簡単に応答でき、別のスケジュールを提案することもできます。

    詳細については、以下のページを参考にしてください。

    サンプルコード

    BEGIN:VCALENDAR
    
    VERSION:2.0
    
    PRODID:Naver Calendar
    
    CALSCALE:GREGORIAN
    
    BEGIN:VTIMEZONE
    
    TZID:Asia/Seoul
    
    BEGIN:STANDARD
    
    DTSTART:19700101T000000
    
    TZNAME:GMT+09:00
    
    TZOFFSETFROM:+0900
    
    TZOFFSETTO:+0900
    
    END:STANDARD
    
    END:VTIMEZONE
    
    BEGIN:VEVENT
    
    SEQUENCE:0
    
    CLASS:PUBLIC
    
    TRANSP:OPAQUE
    
    UID:6E12DA93-8B43-4576-9A8A-31B4BDC8BDCF\_xell\_1409882048@example.com
    
    DTSTART;TZID=Asia/Seoul:20140905T110000
    
    DTEND;TZID=Asia/Seoul:20140905T120000
    
    SUMMARY:毎週繰り返しサンプル
    
    DESCRIPTION:詳細 説明エリア
    
    LOCATION:ここで
    
    RRULE:FREQ=WEEKLY;BYDAY=FR;INTERVAL=1;UNTIL=20141030T120000
    
    ORGANIZER;CN=山田太郎:mailto:gildong.hong@example.com
    
    ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;CN=出席者:mailto:user01@example.com
    
    CREATED:20140905T015408Z
    
    LAST-MODIFIED:20140905T015408Z
    
    DTSTAMP:20140905T015409Z
    
    END:VEVENT
    
    END:VCALENDAR
    

    コード説明

    プロパティ 説明
    UID スケジュールの固有なID値。単一カレンダー IDではiCalendarのUIDがユニークでなければなりません。
    UIDは、一般的にiCalendarデータを初期生成するときにユーザーID、タイムスタンプ、ドメインなどの情報を組み合わせてつくります。
    このとき、特殊記号%文字はエスケープ問題で非対応となりますので、注意願います。
    DTSTART スケジュールの開始日時。
    別途の標準時間帯を使用しないなら'T'以下の時間値だけを修正して使用できます。
    DTEND スケジュールの終了日時。
    別途の標準時間帯を使用しないなら'T'以下の時間値だけを修正して使用できます。
    SUMMARY スケジュールのタイトル
    DESCRIPTION スケジュールの詳細内容
    LOCATION 場所情報
    RRULE 繰り返し情報
    ORGANIZER イベントの場合、スケジュールの主催者情報(メールアドレス)。
    基本カレンダーにイベントを作成する場合、カレンダー API サーバーによって基本カレンダー Owner 情報(メールアドレス)が設定されます。
    共有カレンダーにイベントを作成する場合、カレンダー API サーバーによって主催者情報(メールアドレス)が設定されます。
    イベントを修正する場合、照会されたORGANIZERをそのまま使用する必要があります。
    イベントでない場合、ORGANIZERを削除してiCalendarデータを生成します。
    ATTENDEE イベントの場合、出席者情報。
    イベントでない場合は、ORGANIZERを削除してiCalendarデータを生成します。
    CREATED スケジュールの作成日時
    LAST-MODIFIED スケジュールの最終修正日時
    DTSTAMP スケジュールをiCalendarデータに変換した日付と時刻(現在は重要度を低く取り扱う)。