ical 的欄位(RFC2445)

URL Link //n.sfs.tw/12978

2018-12-27 13:33:19 By 張○○

日曆檔作個簡單的筆記,詳細請參看RFC2445

一筆資料大概長這樣

BEGIN:VEVENT
DTSTART;VALUE=DATE:20180329
DTEND;VALUE=DATE:20180330
DTSTAMP:20180120T080108Z
UID:61accc5d...c94e40@n.sfs.tw
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;X-NUM-GUE
 STS=0:mailto:taiwan__zh_tw@holiday.calendar.google.com
CLASS:PUBLIC
CREATED:20180120T031356Z
LAST-MODIFIED:20180120T031356Z
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:青年節
TRANSP:OPAQUE
END:VEVENT

第1、最後行 BEGIN:VEVENT 一筆資料開始;END:VEVENT  一筆資料結束

第2-3行 開始時間到結束時間,從3/29 0:0:0 開始到 3/30 0:0:0 結束

第4行 DTSTAMP:20110120T080108Z :此事件物件建立時間,T代表時間 08:01:08 秒,Z代表 UTC time。

第5行 UID:61accc5d...c94e40@n.sfs.tw:(4.8.4.7 Unique Identifier) 自行定義一個不會重複的ID,有建議的寫法,沒規定一定要怎麼寫。

第6-7行 說明於下方 

第8行 CLASS:PUBLIC 存取的類別,有

    "PUBLIC"(預設) / "PRIVATE" / "CONFIDENTIAL" / iana-token / x-name

第9行 建立日期(非單指此事件,而是整個日曆)

第10行  最後修改日期

第11行  SEQUENCE:1  版本 1 2 3 4

第12行  STATUS:CONFIRMED 狀態,可用的值有 

    statvalue  = "TENTATIVE"           ;Indicates event is tentative. 不確定的
                / "CONFIRMED"           ;Indicates event is definite. 確定的
                / "CANCELLED"           ;Indicates event was cancelled. 取消的

第13行 只能寫一行的簡介

第14行 透明度(或是說可視性) 當忙時要不要給人家看?當資訊較多時這是不是必要出現的資訊?是的話就是 OPAQUE。

     transvalue = "OPAQUE"  (預設)    ;Blocks or opaque on busy time searches.
                / "TRANSPARENT" ;Transparent on busy time searches.
 

ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;X-NUM-GUE STS=0:mailto:taiwan__zh_tw@holiday.calendar.google.com

CUTYPE 定義日曆的使用者 4.2.3

     cutypeparam        = "CUTYPE" "="
                         ("INDIVIDUAL"          ; An individual
                        / "GROUP"               ; A group of individuals
                        / "RESOURCE"            ; A physical resource
                        / "ROOM"                ; A room resource
                        / "UNKNOWN"             ; Otherwise not known
                        / x-name                ; Experimental type
                        / iana-token)           ; Other IANA registered type

ROLE 日曆使用者參與的角色

     roleparam  = "ROLE" "="
                 ("CHAIR"               ; Indicates chair of the calendar entity
                / "REQ-PARTICIPANT"     ; Indicates a participant whose participation is required
                / "OPT-PARTICIPANT"     ; Indicates a participant whose participation is optional
                / "NON-PARTICIPANT"     ; Indicates a participant who is copied for information purposes only
                / x-name                ; Experimental role
                / iana-token)           ; Other IANA role
     ; Default is REQ-PARTICIPANT

PARTSTAT 參與狀態 4.2.12

     partstatparam      = "PARTSTAT" "="
                        ("NEEDS-ACTION"        ; Event needs action
                        / "ACCEPTED"            ; Event accepted
                        / "DECLINED"            ; Event declined

X-NUM-GUE X-為自行定義的屬性

 

備註

1. 不是每個項目都一定要