# iClalendar 規格整理 ## 對應說明 |S6 欄位|說明 |標準格式|備註 | |-------|------|----- |-----| |`需補充`|用戶識別碼|UID|用戶識別碼|確保唯一性的一個好方法是將創建標識符的主機的域名或域文字 IP 地址放在“@”的右側,並在左側放置當前日曆日期和時間(即格式化為DATE-TIME值)以及系統上可用的其他一些當前唯一(可能是連續的)標識符(例如,進程 ID 號)。| |`需補充`|匯出該行事曆的時間|DTSTAMP|創建 iCalendar 對象日期/時間|該值必須以 UTC 時間格式指定。| |`需補充`| 行事曆分類項目 |CLASS|分類:此屬性定義日曆組件的訪問分類<BR>"PUBLIC"<BR> "PRIVATE"<BR>"CONFIDENTIAL"<BR> 預設為 PUBLIC| |`需補充`|分類項目| CATEGORIES | 類別<BR>定義日曆組件的類別 <BR>可以自定義 : 約會/會議..等| |`需補充` | 版本 | VERSION |版本 | |`需補充` | 標示|PRODID|產品標識符,供應商應該確保這是一個全球唯一的標識符| |title| 標題 | Summary|標題 | |detail | 詳細內容 | Description |詳細內容| |location | 地點 | Location|地點| |start_time |開始時間 |DtStart |需轉換成 `AsSystemLocal`| |end_time|結束時間|DtEnd |需轉換成 `AsSystemLocal`| |is_allday|事件全天|IsAllDay|事件全天| |is_repeat|是否為重複發生的事件(True/False)| RRULE | 若is_repeat = true 才會產生`RRULE` 欄位| |mode | 行事曆事件重複模式 | FREQ | 重複類型 | |freq | 事件重複頻率,預設 1 | INTERVAL |間隔(大於1才會出現) | |freq_month|重複事件的在哪一個月份(目前為單選) | BYMONTH |有指定特定月份才會產出 | |calc_type|重複事件的計算單位<BR>|`ByMonthDay`或`ByWeek`|一個月的第n天或<BR>每n個周| |calc_num|事件重複計算的數量|`ByMonthDay`或`ByWeek`|n 數值為 `calc_num`| |week_bit|重複事件的星期幾(可多選) |ByDay | 複選則加入星期資料 `DayOfWeek`| |final_date|事件重複結束時間 | UNTIL | 直到某個日期結束| |color|行事曆配色| `標準格式` 沒有該欄位 || |attends|事件參與人員 | `標準格式` 沒有該欄位|| ## RRULE 行事曆重複規則欄位說明 |欄位|說明|枚舉| |-----|-----|-----| |FREQ|重複類型|NONE:不重複<br>DAILY:每天<br>WEEKLY:每週<br>MONTHLY:每月<br>YEARLY:每年| |INTERVAL|間隔|int| |COUNT|事件數量|int| |BYSECOND|依照秒鐘 |int| |BYMINUTE|依照分鐘 |int| |BYHOUR|依照小時 |int| |BYDAY|依照天 |int| |BYMONTHDAY|表示一個月的第幾天|int| |BYYEARDAY|表示一年的第幾天|int| |BYWEEKNO|表示一年的第幾周|int| |BYMONTH|表示一年的第幾個月|int| |UNTIL|直到某個時間點為止|datetime| |WKST| 直到永遠|(若沒寫也是直到永遠)<BR> 取值範圍要填但無意義<BR> MO, TU, WE, TH, FR, SA, SU| |BYSETPOS|表示規則指定的事件集合中的第n個事件, 必須與另外的 BYxxx 屬性共同使用。<BR>每月的最後一組工作日可以表示為: RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1|| |||| |||| ||| ||| ## 參考資料 https://www.kanzaki.com/docs/ical/rrule.html 規則 https://www.gushiciku.cn/pl/phSc/zh-tw