2013-12-11 86 views
3

當會議受邀者提出了一種新的會議時間,在展望此信息可以在「日程安排助理」中找到(如Outlook 2007):Exchange Web服務:訪問提出的日期和時間,通過預約

enter image description here

有沒有什麼方法通過EWS API以編程方式訪問這些信息? Appointment的RequiredAttendees和OptionalAttendees集合允許我確定參與者是否以及何時作出了迴應,但如何訪問實際建議的新時間?

回答

1

恐怕,您無法使用約會中的EWS獲取此信息。它是PR_MESSAGE_RECIPIENTS屬性的一部分,該屬性是一個MAPI表(如果您願意,可以是Object),EWS不支持檢索它。從技術上講,如果要構建ExportItem功能(支持的功能服務器端不包含在EWS Managed API中)並挑選大量二進制流來查找信息,您可能可以得到它,但這樣做幾乎不可行。我沒有自己嘗試過。另一種方法是使用EWS以外的其他功能來訪問數據。

4

我還沒有嘗試過,但以下是我想你會怎麼得到這些信息。 EWS服務和EWS託管API沒有將此實現爲第一類功能。更確切地說,propose new time functionality目前作爲Exchange Online的一流功能提供。對於Exchange Online,您需要檢查ProposedStartTime和ProposedEndTime元素的會議響應消息XML。因此,如果您使用的是Exchange 2007,2010年和2013年,則需要在下一段中說明。您應該能夠通過使用擴展屬性來訪問這些信息。

提出新會議時間的與會者總是會導致組織者收到會議消息。當組織者爲會議發送的會議消息執行GetItem請求時,該請求應請求PR_RECIPIENT_PROPOSED屬性。值爲true表示收件人提出了新時間。這應該會觸發獲取PR_RECIPIENT_PROPOSEDENDTIME和PR_RECIPIENT_PROPOSEDSTARTTIME屬性值的請求。

這裏是an example of getting this type of property與EWS託管API;

這裏是一個快速屬性定義:

ExtendedPropertyDefinition PidTagRecipientProposed =新ExtendedPropertyDefinition(0x5FE1,MapiPropertyType.Boolean);

+0

感謝您的回覆。通過會議響應獲取這些信息我已經嘗試過並且可以使用。但是,我特別需要通過預約本身訪問建議時間,因爲會議響應已被刪除。 – jeroenh

+0

有關擴展屬性的建議總是很好,但您無法通過EWS檢索該屬性。它被隱藏在PR_MESSAGE_RECIPIENTS表中的RecipientRow中,EWS無法檢索它。這同樣適用於附件的擴展屬性。對象/表結構serverside中的任何內容都不能用EWS檢索,除非該信息已經被烘焙到API中。 – user1017413

+0

@Michael Mainer:由於我們使用FindItem訪問的會議消息是針對Outlook會議請求進行的,因此我們如何從會議消息本身獲取交換會議ID? – warunanc

相關問題