【发布时间】:2017-02-26 09:32:10
【问题描述】:
尝试获取日历事件以允许用户选择参加者和会议室可用的会议时间。
我们正在使用 Outlook 日历 REST API v2 - findMeetingTimes: https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations#FindMeetingTimes
请求返回几乎所有的事件。 由于某些原因,执行请求的用户创建的事件不包含在响应中。这意味着会议室或与会者看起来是免费的,即使他们的日历中有活动。
这是一个仅将会议室作为与会者的示例请求。在为会议室和用户请求活动时,我们看到了同样的问题行为。
https://outlook.office.com/api/v2.0/users('user@companyname.onmicrosoft.com')/findmeetingtimes
{
"Attendees": [{
"Type": "Required",
"EmailAddress": {
"Name": "Palo Alto meeting room",
"Address": "paloalto@companyname.onmicrosoft.com"
}
}],
"TimeConstraint": {
"Timeslots": [{
"Start": {
"DateTime": "2017-02-11T22:00:00",
"TimeZone": "GMT Standard Time"
},
"End": {
"DateTime": "2017-04-29T20:59:59",
"TimeZone": "GMT Standard Time"
}
}]
},
"LocationConstraint": {
"IsRequired": "false",
"SuggestLocation": "false",
"Locations": [{
"ResolveAvailability": "false",
"DisplayName": "Palo Alto meeting room",
"LocationEmailAddress": "paloalto@companyname.onmicrosoft.com"
}]
},
"MinimumAttendeePercentage": "0",
"MaxCandidates": "1000",
"ReturnSuggestionReasons": "true"
}
任何帮助将不胜感激。
【问题讨论】:
-
我无法在会议室中重现这种行为,所以我认为这里可能缺少一个细节。用户如何在会议室的日历上创建活动?为了清楚起见:我使用我的用户登录到 OWA,在我的日历上创建了一个事件(太平洋标准时间上午 10 点到上午 11 点),并将会议室添加为位置。我从会议室日历上拿回了接受。然后,我以同一用户的身份发出 API 请求,时间限制在同一天上午 9 点到下午 12 点之间。正如预期的那样,我没有取回上午 10 点到 11 点之间的任何可用时段。
-
@JasonJohnston 感谢您对此进行调查!我会澄清的。当另一个用户使用会议室作为位置创建事件时,事件的时间将返回为忙碌。但是,当创建事件的同一用户请求会议室的可用性时,它不会以既不空闲也不忙的形式返回,它只是丢失了。我们想显示房间何时忙碌并且缺少此信息。希望清楚。
标签: calendar office365 office365api outlook-restapi office365-restapi