我创建了一个虚拟的Office 365组织设置,并创建了几个房间。由于是我的组织,我想使用FindMeetingTimes
API来获取与会者,会议室和组织者的可用性。
我已将以下请求正文发送到GET
url。
{
"attendees": [{
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com",
"name": "Sid bhosle"
},
"type": "Required"
},
{
"emailAddress": {
"address": "cibcconf@CIBCmeeting.onmicrosoft.com",
"name": "cibcconf"
},
"type": "Required"
},
{
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com",
"name": "Sid bhosle"
},
"type": "Required"
}
],
"timeConstraint": {
"timeslots": [{
"start": {
"dateTime": "2017-11-08T17:06:00",
"timeZone": "India Standard Time"
},
"end": {
"dateTime": "2017-11-09T17:35:59.0000000",
"timeZone": "India Standard Time"
}
}],
"activityDomain": "unrestricted"
},
"locationConstraint": {
"isRequired": true,
"suggestLocation": false,
"locations": [{
"displayName": "cibcconf",
"locationEmailAddress": "cibcconf@CIBCmeeting.onmicrosoft.com",
"resolveAvailability": "true"
},
{
"displayName": "cibcconference101",
"locationEmailAddress": "cibcconference101@CIBCmeeting.onmicrosoft.com",
"resolveAvailability": "true"
},
{
"displayName": "cibcconference104",
"locationEmailAddress": "cibcconference104@CIBCmeeting.onmicrosoft.com",
"resolveAvailability": "true"
},
{
"displayName": "D3secondflor",
"locationEmailAddress": "d3secondflor@CIBCmeeting.onmicrosoft.com",
"resolveAvailability": "true"
}
]
},
"meetingDuration": "PT1H",
"returnSuggestionReasons": "true",
"minimumAttendeePercentage": "100"
}
API返回有效的回复:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.meetingTimeSuggestionsResult",
"emptySuggestionsReason": "",
"meetingTimeSuggestions": [{
"confidence": 100,
"organizerAvailability": "free",
"suggestionReason": "Suggested because it is one of the nearest times when all attendees are available.",
"meetingTimeSlot": {
"start": {
"dateTime": "2017-11-09T11:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2017-11-09T12:00:00.0000000",
"timeZone": "UTC"
}
},
"attendeeAvailability": [{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com"
}
}
},
{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "cibcconf@CIBCmeeting.onmicrosoft.com"
}
}
}
],
"locations": [{
"displayName": "cibcconf",
"locationEmailAddress": "cibcconf@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference101",
"locationEmailAddress": "cibcconference101@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference104",
"locationEmailAddress": "cibcconference104@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "D3secondflor",
"locationEmailAddress": "d3secondflor@CIBCmeeting.onmicrosoft.com"
}
]
},
{
"confidence": 100,
"organizerAvailability": "free",
"suggestionReason": "Suggested because it is one of the nearest times when all attendees are available.",
"meetingTimeSlot": {
"start": {
"dateTime": "2017-11-08T18:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2017-11-08T19:00:00.0000000",
"timeZone": "UTC"
}
},
"attendeeAvailability": [{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com"
}
}
},
{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "cibcconf@CIBCmeeting.onmicrosoft.com"
}
}
}
],
"locations": [{
"displayName": "cibcconf",
"locationEmailAddress": "cibcconf@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference101",
"locationEmailAddress": "cibcconference101@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference104",
"locationEmailAddress": "cibcconference104@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "D3secondflor",
"locationEmailAddress": "d3secondflor@CIBCmeeting.onmicrosoft.com"
}
]
},
{
"confidence": 100,
"organizerAvailability": "free",
"suggestionReason": "Suggested because it is one of the nearest times when all attendees are available.",
"meetingTimeSlot": {
"start": {
"dateTime": "2017-11-08T19:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2017-11-08T20:00:00.0000000",
"timeZone": "UTC"
}
},
"attendeeAvailability": [{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com"
}
}
},
{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "cibcconf@CIBCmeeting.onmicrosoft.com"
}
}
}
],
"locations": [{
"displayName": "cibcconf",
"locationEmailAddress": "cibcconf@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference101",
"locationEmailAddress": "cibcconference101@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference104",
"locationEmailAddress": "cibcconference104@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "D3secondflor",
"locationEmailAddress": "d3secondflor@CIBCmeeting.onmicrosoft.com"
}
]
},
{
"confidence": 100,
"organizerAvailability": "free",
"suggestionReason": "Suggested because it is one of the nearest times when all attendees are available.",
"meetingTimeSlot": {
"start": {
"dateTime": "2017-11-08T20:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2017-11-08T21:00:00.0000000",
"timeZone": "UTC"
}
},
"attendeeAvailability": [{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com"
}
}
},
{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "cibcconf@CIBCmeeting.onmicrosoft.com"
}
}
}
],
"locations": [{
"displayName": "cibcconf",
"locationEmailAddress": "cibcconf@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference101",
"locationEmailAddress": "cibcconference101@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference104",
"locationEmailAddress": "cibcconference104@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "D3secondflor",
"locationEmailAddress": "d3secondflor@CIBCmeeting.onmicrosoft.com"
}
]
},
{
"confidence": 100,
"organizerAvailability": "free",
"suggestionReason": "Suggested because it is one of the nearest times when all attendees are available.",
"meetingTimeSlot": {
"start": {
"dateTime": "2017-11-08T21:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2017-11-08T22:00:00.0000000",
"timeZone": "UTC"
}
},
"attendeeAvailability": [{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "sidbhosle@CIBCmeeting.onmicrosoft.com"
}
}
},
{
"availability": "free",
"attendee": {
"type": "required",
"emailAddress": {
"address": "cibcconf@CIBCmeeting.onmicrosoft.com"
}
}
}
],
"locations": [{
"displayName": "cibcconf",
"locationEmailAddress": "cibcconf@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference101",
"locationEmailAddress": "cibcconference101@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "cibcconference104",
"locationEmailAddress": "cibcconference104@CIBCmeeting.onmicrosoft.com"
},
{
"displayName": "D3secondflor",
"locationEmailAddress": "d3secondflor@CIBCmeeting.onmicrosoft.com"
}
]
}
]
}
我想知道如何配置请求,以便它也适用于其他组织。如果使用相应的ID登录,我想获得其他组织中所有房间的列表。
让我们举个例子:我必须确保如果公司A使用他们的凭据登录我的APP,它会列出他们公司配置的所有房间。
我如何实现这一目标?
我甚至尝试删除LocationConstraint
参数,但未显示位置。
答案 0 :(得分:0)
今天在生产中不支持查找房间,但可以从/beta
端点获取。
findRooms返回用户租户或特定"房间列表中的会议室"。
findRoomLists返回用户租户中定义的所有会议室列表。