让FindMeetingTimes API搜索为当前组织

时间:2017-11-08 13:27:27

标签: microsoft-graph

我创建了一个虚拟的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参数,但未显示位置。

1 个答案:

答案 0 :(得分:0)

今天在生产中不支持查找房间,但可以从/beta端点获取。

  • findRooms返回用户租户或特定"房间列表中的会议室"。

  • findRoomLists返回用户租户中定义的所有会议室列表。