我打电话给/v1.0/me/findMeetingTimes
来检查用户'可用性。
以下是示例请求:
{
"attendees": [
{
"type": "Required",
"emailAddress": {
"name": "abc",
"address": "somebody@omni.com"
}
}
],
"minimumAttendeePercentage": 0.0,
"timeConstraint": {
"activityDomain":"unrestricted",
"timeslots": [
{
"start": {
"dateTime": "2018-03-30T15:00:00Z",
"timeZone": "UTC"
},
"end": {
"dateTime": "2018-03-30T16:00:00Z",
"timeZone": "UTC"
}
}
]
},
"isOrganizerOptional": true
}
我安排了与2018-03-30T15:00:00Z
到2018-03-30T16:00:00Z
的用户会面。在用户接受会议之前,使用相同的请求,API在tentative
中返回了attendeeAvailability
可用性的时间段。
如果我将minimumAttendeePercentage
的值指定为90
或100
,则API仍会返回相同的响应(暂定可用性)。
用户接受后,响应变为
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.meetingTimeSuggestionsResult",
"emptySuggestionsReason": "Unknown",
"meetingTimeSuggestions": []
}
无论我在请求中指定的minimumAttendeePercentage
值,响应始终相同。看起来没有使用minimumAttendeePercentage
,API始终将其视为50
,这是默认设置。
答案 0 :(得分:0)
目前,标记为Tentative
的会议不被视为Busy
。
这里的一个小背景有助于解释为什么会这样。 /findMeetingTimes
的核心是尝试返回多个与会者的潜在时段列表。为此,需要确定给定用户的给定插槽是“空闲”还是“忙”。如果它确定用户“免费”的时间,则它返回该时隙。
当遇到标记为Tentative
的广告位时,它无法最终确定该广告是否为“免费”与“忙碌”。根据定义,暂定会议是用户尚未完全承诺的会议。会议状态相当于“我将参加,除非有更好的事情发生,然后我不会”。
由于/findMeetingTimes
核心作业是返回会议时间列表建议,因此为了编译列表,它会将Tentative
视为Free
。这使您可以在应用程序的上下文中处理您希望如何处理Tentative
的方式。