開催可能な会議日時を Outlook カレンダーで検索するFind possible meeting times on the Outlook calendar

職場や学校では、集まるための共通の時間と場所を探して頻繁にオーバーヘッドが発生します。Microsoft Graph アプリケーションでは、findMeetingTimes を使用して、時間、場所、他の制約を満たす開催可能な会議日時を特定できます。In a workplace or school, looking for a common time and place to meet often incurs overhead. Microsoft Graph applications can use findMeetingTimes to identify any possible meeting times that satisfy time, location, and other constraints.

findMeetingTimes アクションでは、会議の日付/時刻範囲、期間、任意出席者または必須出席者、アクティビティの性質 (activityDomain) などの条件を指定できます。アクションでは、出席者と開催者の通常の勤務スケジュールと空き時間情報が考慮され、参加者とアクティビティの種類に適した時間が提案されます。たとえば、業務関連のアクティビティは常に開催者と出席者の勤務時間中に行われるように提案され、必須出席者が出席可能な提案は候補リストの上位に表示されます。The findMeetingTimes action lets you specify conditions such as the meeting date/time range, duration, optional or required attendees, and nature of the activity (activityDomain). The action takes into account the attendees' and organizer's normal work schedules and free/busy status, and suggests times that are appropriate for the participants and type of activity. For instance, suggestions for a work-related activity always occur during the work hours of the organizer and attendees, and suggestions where required attendees are available are ordered higher up in the suggested list.

Office 365 では、勤務時間とタイム ゾーンをメールボックスごとに構成できます。findMeetingTimes アクションは、開催者と出席者間のタイム ゾーンの違いを処理します。既定では、findMeetingTimes は UTC で提案を返します。次の要求ヘッダーを使用すると、findMeetingTimes は特定のタイム ゾーンで表された提案を返すようになります。In Office 365, work hours and time zones are configurable per mailbox. The findMeetingTimes action handles time zone variations among the organizer and attendees. By default, findMeetingTimes returns suggestions in UTC. You can use the following request header to have findMeetingTimes return suggestions expressed in a specific time zone.

Prefer: outlook.timezone="{time-zone-string}}"

大規模な会議で特に便利な機能として、定足数のパーセンテージ (minimumAttendeePercentage) を指定して、最低限の出席者の空き時間を満たす場合にのみ、findMeetingTimes が提案を返すようにできます。Especially useful for larger meetings, you can specify a percentage (minimumAttendeePercentage) for a quorum and have findMeetingTimes return suggestions only if that minimum attendee availability is met.

findMeetingTimes が会議日時をまったく提案できない場合は、開催者や必須出席者が出席できないなどの特定の理由 (emptySuggestionsReason) を示します。この値に基づいて、パラメーターをさらに調整して、findMeetingTimes をもう一度呼び出すことができます。If findMeetingTimes cannot suggest any meeting times, it indicates a specific reason (emptySuggestionsReason), such as the organizer or a required attendee not available. Based on this value, you can better adjust the parameters and call findMeetingTimes again.

findMeetingTimes アクションは、現在 Office 365 の職場または学校のメールボックスで使用できますが、個人用 outlook.com のメールボックスでは使用できません。Note The findMeetingTimes action is currently available to Office 365 work or school mailboxes, but not personal, outlook.com mailboxes.

Example

次の例は、findMeetingTimes を使用して、2 人のユーザーが数時間会合するための可能な時間を返す方法を示しています。これには、ユーザーの空き時間と勤務スケジュール、および時間内に不在である出席者が考慮されています。この会議の出席者は 2 人のユーザーのみであるため、提案には 100% の出席が必要です。ユーザーの空き時間スケジュールを次に示します。The following example shows how to use findMeetingTimes to return possible times for 2 users to meet for a couple of hours, taking into account the users' free/busy and work schedules, and the attendee being away for part of the time. Because there are only 2 users for this meeting, suggestions require 100% attendance. The following shows the users' free/busy schedule.

開催者のカレンダーOrganizer's calendar

4 月 17 日から 21 日の空き時間が表示されている開催者の勤務カレンダーThe organizer's work calendar for April 17-21 showing free-busy times

出席者のカレンダーAttendee's calendar

4 月 17 日から 21 日の空き時間が表示されている出席者の勤務カレンダーThe attendee's work calendar for April 17-21 showing free-busy times

この例では、findMeetingTimes の呼び出しを 2 回行います。The example makes 2 calls to findMeetingTimes:

  1. 最初の呼び出しは、4 月 18 日から 20 日の日付の範囲を検索します。出席者が 4 月 18 日から 19 日は不在であり、4 月 20 日には共通の空き時間がないため、最初の呼び出しは提案を返しません (理由 (emptySuggestionsReason): 出席者が参加できない)。The first call looks in the date range of April 18-20. As the attendee is out-of-office on April 18-19, and there is no commonly available time on April 20, the first call returns no suggestions with the reason (emptySuggestionsReason) that attendees are not available.
  2. 2 番目の呼び出しは、4 月 21 日の空き時間を検索し、午後 2 時から 4 時の提案を返します。The second call looks for availability on April 21 and returns a suggestion of 2-4pm.

findMeetingTimes への 2 回の呼び出しには、次のパラメーターが含まれます。findMeetingTimes のすべてのパラメーターは省略可能です。The two calls to findMeetingTimes include the following parameters. All parameters for findMeetingTimes are optional.

  • attendees: 1 人の出席者、Samantha Booth を type プロパティの required として設定しますattendees: one attendee, Samantha Booth, set as required for the type property
  • locationConstraint: 場所の提案は必要ありませんlocationConstraint: does not require any location suggestion
  • timeConstraint: 最初の呼び出しは、4 月 18 日午前 9 時から 4 月 20 日午後 5 時までの日付/時間範囲を検索します。最初の呼び出しが日時を提案することに失敗した後、2 番目の呼び出しは 4 月 21 日の午前 9 時から午後 5 時で検索します。timeConstraint: the first call looks in the date/time range of April 18, 9am to April 20, 5pm; after the first call fails to suggest any times, the second call looks at April 21, 9am to 5pm
  • meetingDuration: 2 時間meetingDuration: two hours
  • returnSuggestionReasons: この例では、各提案に対する理由が必要ですreturnSuggestionReasons: this example requires a reason for each suggestion
  • minimumAttendeePercentage:100% (出席者が提案された時間に出席できる必要があるため)minimumAttendeePercentage: 100%, as the attendee must be able to attend for any suggested time

最初の要求First request

4 月 18 日から 20 日で両方のユーザーが 2 時間空いている時間帯を検索します。Look for a 2-hour free time slot for both users over April 18-20.

POST https://graph.microsoft.com/v1.0/me/findMeetingTimes
Prefer: outlook.timezone="Pacific Standard Time"
Content-type: application/json

{ 
  "attendees": [ 
    { 
      "type": "required",  
      "emailAddress": { 
        "name": "Samantha Booth",
        "address": "samanthab@contoso.onmicrosoft.com" 
      } 
    }
  ],  
  "locationConstraint": { 
    "isRequired": false,  
    "suggestLocation": false,  
    "locations": [ 
      { 
        "resolveAvailability": false,
        "displayName": "Conf room Hood" 
      } 
    ] 
  },  
  "timeConstraint": {
    "activityDomain":"work", 
    "timeslots": [ 
      { 
        "start": { 
          "dateTime": "2017-04-18T09:00:00",  
          "timeZone": "Pacific Standard Time" 
        },  
        "end": { 
          "dateTime": "2017-04-20T17:00:00",  
          "timeZone": "Pacific Standard Time" 
        } 
      } 
    ] 
  },  
  "meetingDuration": "PT2H",
  "returnSuggestionReasons": true,
  "minimumAttendeePercentage": 100
}

最初の応答First response

4 月 18 日から 20 日の勤務時間中に両方のユーザーが出席可能な 2 時間の時間帯はありません。There is no 2-hour time slot during the work hours of April 18-20 when both users are available.

HTTP/1.1 200 OK
Content-type: application/json
Preference-Applied: outlook.timezone="Pacific Standard Time"
Content-Length: 184

{
    "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.meetingTimeSuggestionsResult",
    "emptySuggestionsReason":"AttendeesUnavailable",
    "meetingTimeSuggestions":[

    ]
}

2 番目の要求Second request

4 月 21 日の 2 時間の時間帯を検索します。Look for a 2-hour time slot on April 21.

POST https://graph.microsoft.com/v1.0/me/findMeetingTimes
Prefer: outlook.timezone="Pacific Standard Time"
Content-type: application/json

{ 
  "attendees": [ 
    { 
      "type": "required",  
      "emailAddress": { 
        "name": "Samantha Booth",
        "address": "samanthab@contoso.onmicrosoft.com" 
      } 
    }
  ],  
  "locationConstraint": { 
    "isRequired": false,  
    "suggestLocation": false,  
    "locations": [ 
      { 
        "resolveAvailability": false,
        "displayName": "Conf room Hood" 
      } 
    ] 
  },  
  "timeConstraint": {
    "activityDomain":"work", 
    "timeslots": [ 
      { 
        "start": { 
          "dateTime": "2017-04-21T09:00:00",  
          "timeZone": "Pacific Standard Time" 
        },  
        "end": { 
          "dateTime": "2017-04-21T17:00:00",  
          "timeZone": "Pacific Standard Time" 
        } 
      } 
    ] 
  },  
  "meetingDuration": "PT2H",
  "returnSuggestionReasons": true,
  "minimumAttendeePercentage": 100
}

2 番目の応答のサンプルSecond response

2 番目の findMeetingTimes 要求は、両方のユーザーが会合するために 4 月 21 日午後 2 時から 4 時を提案します。The second findMeetingTimes request suggests April 21, 2-4pm for both users to meet.

HTTP/1.1 200 OK
Content-type: application/json
Preference-Applied: outlook.timezone="Pacific Standard Time"
Content-Length: 714

{
    "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.meetingTimeSuggestionsResult",
    "emptySuggestionsReason":"",
    "meetingTimeSuggestions":[
        {
            "confidence":100.0,
            "organizerAvailability":"free",
            "suggestionReason":"Suggested because it is one of the nearest times when all attendees are available.",
            "meetingTimeSlot":{
                "start":{
                    "dateTime":"2017-04-21T14:00:00.0000000",
                    "timeZone":"Pacific Standard Time"
                },
                "end":{
                    "dateTime":"2017-04-21T16:00:00.0000000",
                    "timeZone":"Pacific Standard Time"
                }
            },
            "attendeeAvailability":[
                {
                    "availability":"free",
                    "attendee":{
                        "type":"required",
                        "emailAddress":{
                            "address":"samanthab@contoso.onmicrosoft.com"
                        }
                    }
                }
            ],
            "locations":[
                {
                    "displayName":"Conf room Hood"
                }
            ]
        }
    ]
}

次の手順Next steps

一部の出席者が会議に出席できない場合があります。minimumAttendeePercentage オプション パラメーターを指定することにより、出席の_確実性_が特定のパーセンテージに達すると、findMeetingTimes で時間を提案することができます。会議の提案の確実性と他のパラメーターの詳細を参照し、より大規模な会議に対して必要に応じて適用します。There are times when not all attendees can attend a meeting. You can have findMeetingTimes suggest a time if the confidence for attendance reaches a certain percentage, by specifying the minimumAttendeePercentage optional parameter. Learn more about the confidence of a meeting suggestion and other parameters, and apply them as appropriate for meetings of larger sizes.

会議日時の提案を取得した後、次のことを行うことができます。After getting meeting time suggestions, you may want to:

  1. イベントを作成し、会議出席依頼として送信するCreate an event and send it as a meeting request.
  2. イベントに添付ファイルを追加するAdd an attachment to the event.

詳細については、「Outlook カレンダーとの統合」を参照してください。Find out more about integrating with Outlook calendar.