我使用的偉大工程的DDal ical library但我只是意識到,我想看看如何指示的事件作爲走出辦公室與繁忙的(因此在Microsoft Outlook中加載時它顯示了不同使用DDay ical庫時,您如何指示忙碌與免費還是外出辦公?
我看到物業listed on this microsoft site所謂:
- X-MICROSOFT-CDO-BUSYSTATUS
- PidLidBusyStatus
這是可以從DDAY的iCal庫中設置此因爲我在文檔中沒有看到任何內容?
我使用的偉大工程的DDal ical library但我只是意識到,我想看看如何指示的事件作爲走出辦公室與繁忙的(因此在Microsoft Outlook中加載時它顯示了不同使用DDay ical庫時,您如何指示忙碌與免費還是外出辦公?
我看到物業listed on this microsoft site所謂:
這是可以從DDAY的iCal庫中設置此因爲我在文檔中沒有看到任何內容?
如果你有在RFC 2445描述你的心中忙/閒組件,則尚未實現基於DDay.iCal Compliance with RFC 2445名單上。
這是什麼表示離開辦公室與繁忙? – leora
我經歷了所有的代碼,除非你尋求的功能被命名爲隱藏在別的東西中(我不這麼認爲),否則......你應該遇到不同的聲明,請告訴我,請 –
(Don't use dday.ical;使用ical.net它包含了許多性能增強和錯誤修正。)
任何與X-
前綴意味着它的供應商特定的。沒有標準的方式來說「離開辦公室」與「忙碌」。我相信「展望」也有一個「試探性」的概念,也涉及到這個領域。
icalendar spec supports四種基本狀態:「FREE」,「BUSY」,「BUSY -UNAVAILABLE」,「BUSY-TENTATIVE」。這些都是VFREEBUSY
組件的全部有效選項。該規範旨在將VFREEBUSY及其子標題FREEBUSY組件基本上傳遞給試圖規劃會議的人員的忙閒信息。 Outlook具有其調度助理功能;它可能會使用VFREEBUSY信息來顯示其時間軸。
所以這不是你要找的。
該規範確實有categories一個概念,其中一個例子是「不在辦公室」:
一些可能的英語值「類別」屬性包括: 「紀念日」,「約會」 ,「業務」,「教育」,「假日」, 「聚會」,「雜項」,「非工作時間」,「不在辦公室」, 「個人」,「電話」,「SICK DAY」, 「特殊場所」,「旅行」, 「假期」。類別可以用任何註冊語言指定。
這些選項都不是很好,而且是國際海事組織這個規格不足的另一個地方。你幾乎想要一個BUSY-OUT-OF-OFFICE狀態,可以在VFREEBUSY
清單中指定,但規範沒有它,ical.net(或它之前的dday.ical)也沒有。
爲此,手動會更好加上X-MICROSOFT-CDO-BUSYSTATUS
屬性的情況下,如果Outlook是費時的序列化輸出的東西:
var now = DateTime.Now;
var later = now.AddHours(1);
var e = new Event
{
DtStart = new CalDateTime(now),
DtEnd = new CalDateTime(later),
};
e.AddProperty("X-MICROSOFT-CDO-BUSYSTATUS", "OOF"); // I think "OOF" is right per the MS documentation
var calendar = new Calendar();
calendar.Events.Add(e);
var serializer = new CalendarSerializer(new SerializationContext());
var icalString = serializer.SerializeToString(calendar);
Console.WriteLine(icalString);
這會產生這樣的:
BEGIN:VCALENDAR
PRODID:-//github.com/rianjs/ical.net//NONSGML ical.net 2.1//EN
VERSION:2.0
BEGIN:VEVENT
DTEND:20160827T162931
DTSTAMP:20160827T192931Z
DTSTART:20160827T152931
SEQUENCE:0
UID:fea526df-7f40-4585-a9de-8d422e43eebe
X-MICROSOFT-CDO-BUSYSTATUS:OOF
END:VEVENT
END:VCALENDAR
你覺得我的文章沒有充分回答你的問題嗎? –