當會議受邀者提出了一種新的會議時間,在展望此信息可以在「日程安排助理」中找到(如Outlook 2007):Exchange Web服務:訪問提出的日期和時間,通過預約
有沒有什麼方法通過EWS API以編程方式訪問這些信息? Appointment的RequiredAttendees和OptionalAttendees集合允許我確定參與者是否以及何時作出了迴應,但如何訪問實際建議的新時間?
當會議受邀者提出了一種新的會議時間,在展望此信息可以在「日程安排助理」中找到(如Outlook 2007):Exchange Web服務:訪問提出的日期和時間,通過預約
有沒有什麼方法通過EWS API以編程方式訪問這些信息? Appointment的RequiredAttendees和OptionalAttendees集合允許我確定參與者是否以及何時作出了迴應,但如何訪問實際建議的新時間?
恐怕,您無法使用約會中的EWS獲取此信息。它是PR_MESSAGE_RECIPIENTS屬性的一部分,該屬性是一個MAPI表(如果您願意,可以是Object),EWS不支持檢索它。從技術上講,如果要構建ExportItem功能(支持的功能服務器端不包含在EWS Managed API中)並挑選大量二進制流來查找信息,您可能可以得到它,但這樣做幾乎不可行。我沒有自己嘗試過。另一種方法是使用EWS以外的其他功能來訪問數據。
我還沒有嘗試過,但以下是我想你會怎麼得到這些信息。 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);
感謝您的回覆。通過會議響應獲取這些信息我已經嘗試過並且可以使用。但是,我特別需要通過預約本身訪問建議時間,因爲會議響應已被刪除。 – jeroenh
有關擴展屬性的建議總是很好,但您無法通過EWS檢索該屬性。它被隱藏在PR_MESSAGE_RECIPIENTS表中的RecipientRow中,EWS無法檢索它。這同樣適用於附件的擴展屬性。對象/表結構serverside中的任何內容都不能用EWS檢索,除非該信息已經被烘焙到API中。 – user1017413
@Michael Mainer:由於我們使用FindItem訪問的會議消息是針對Outlook會議請求進行的,因此我們如何從會議消息本身獲取交換會議ID? – warunanc