Buscar horas posibles para una reunión en el Calendario de OutlookFind possible meeting times on the Outlook calendar

Buscar un horario y un lugar comunes para reunirse en un área profesional o académica a menudo conlleva sobrecargas. Las aplicaciones de Microsoft Graph pueden utilizar findMeetingTimes para identificar cualquier hora posible para una reunión que cumpla con los horarios, la ubicación y otras restricciones.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.

La acción findMeetingTimes permite especificar condiciones como el rango de fechas o el intervalo horario para una reunión, así como la duración, los asistentes opcionales y necesarios, y la naturaleza de la actividad (activityDomain). La acción tiene en cuenta la disponibilidad y la programación profesional habitual de los asistentes y organizadores, y sugiere los horarios que son adecuados para los participantes y el tipo de actividad. Por ejemplo, las sugerencias para una actividad de trabajo siempre se producen durante las horas de trabajo del organizador y los asistentes, y las sugerencias donde los asistentes necesarios están disponibles se ordenan en la parte de arriba de la lista de sugerencias.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.

En Office 365, las horas de trabajo y las zonas horarias se pueden configurar en cada buzón. La acción findMeetingTimes controla las variaciones entre las zonas horarias del organizador y los asistentes. De manera predeterminada, findMeetingTimes devuelve sugerencias en UTC. Puede utilizar el siguiente encabezado de la solicitud para que findMeetingTimes devuelva sugerencias expresadas en una zona horaria específica.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}}"

Es posible especificar un porcentaje (minimumAttendeePercentage) para un cuórum y hacer que findMeetingTimes devuelva sugerencias solo si está disponible un número mínimo de asistentes, lo que es especialmente útil para reuniones de mayor tamaño.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.

Si findMeetingTimes no puede sugerir un horario de reunión, indica un motivo específico (emptySuggestionsReason), como que el organizador o un asistente necesario no están disponibles. Basándose en este valor, se pueden ajustar mejor los parámetros y llamar otra vez a 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.

Nota La acción findMeetingTimes en este momento está disponible para buzones profesionales o educativos de Office 365, pero no para los personales, ni los buzones de correo de outlook.com.Note The findMeetingTimes action is currently available to Office 365 work or school mailboxes, but not personal, outlook.com mailboxes.

EjemploExample

En el siguiente ejemplo, se muestra cómo utilizar findMeetingTimes para devolver las horas posibles para que dos usuarios se reúnan durante un par de horas, teniendo en cuenta la programación profesional y la disponibilidad de los usuarios, y que los asistentes estarán ausentes durante una parte del tiempo. Como solo hay dos usuarios para esta reunión, las sugerencias requieren la asistencia del 100 %. A continuación, se muestra la disponibilidad de los usuarios.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.

Calendario del organizadorOrganizer's calendar

Calendario profesional del organizador del 17 al 21 de abril que muestra las horas disponibles y ocupadasThe organizer's work calendar for April 17-21 showing free-busy times

Calendario de los asistentesAttendee's calendar

Calendario profesional del asistente del 17 al 21 de abril que muestra las horas disponibles y ocupadasThe attendee's work calendar for April 17-21 showing free-busy times

El ejemplo realiza dos llamadas a findMeetingTimes:The example makes 2 calls to findMeetingTimes:

  1. La primera llamada se busca dentro del intervalo de fechas del 18 al 20 de abril. Cuando el asistente se encuentra fuera de la oficina el 18 o 19 de abril y no hay ningún horario habitual disponible el 20 de abril, la primera llamada no devuelve ninguna sugerencia con el motivo (emptySuggestionsReason) de que los asistentes no están disponibles.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. La segunda llamada busca la disponibilidad el 21 de abril y devuelve una sugerencia de las 14 a las 16 horas.The second call looks for availability on April 21 and returns a suggestion of 2-4pm.

Las dos llamadas a findMeetingTimes incluyen los siguientes parámetros. Todos los parámetros de findMeetingTimes son opcionales.The two calls to findMeetingTimes include the following parameters. All parameters for findMeetingTimes are optional.

  • asistentes: uno de los asistentes, Naiara Padilla, se establece como required de la propiedad typeattendees: one attendee, Samantha Booth, set as required for the type property
  • locationConstraint: no se requiere ninguna sugerencia de ubicaciónlocationConstraint: does not require any location suggestion
  • timeConstraint: la primera llamada se busca en el rango de fechas o intervalo horario del 18 de abril a las 9 horas al 20 de abril a las 17 horas; después de que la primera llamada falla al sugerir horarios, la segunda llamada considera el 21 de abril de 9 a 17 horastimeConstraint: 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: dos horasmeetingDuration: two hours
  • returnSuggestionReasons: en este ejemplo se requiere un motivo para cada sugerenciareturnSuggestionReasons: this example requires a reason for each suggestion
  • minimumAttendeePercentage: 100 %, dado que el asistente debe poder asistir en cualquier horario sugeridominimumAttendeePercentage: 100%, as the attendee must be able to attend for any suggested time

Primera solicitudFirst request

Busque un intervalo de tiempo libre de dos horas para ambos usuarios entre el 18 y el 20 de abril.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
}

Primera respuestaFirst response

No hay ningún intervalo de tiempo de dos horas en el horario laboral del 18 al 20 de abril en el que ambos usuarios estén disponibles.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":[

    ]
}

Segunda solicitudSecond request

Busque un intervalo de tiempo de dos horas el 21 de abril.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
}

Segunda respuestaSecond response

La segunda solicitud findMeetingTimes sugiere el 21 de abril de las 14 a las 16 horas para que ambos usuarios se reúnan.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"
                }
            ]
        }
    ]
}

Siguientes pasosNext steps

Hay ocasiones en las que no todos los asistentes pueden asistir a una reunión. Puede hacer que findMeetingTimes sugiera una hora si la seguridad de asistencia alcanza un determinado porcentaje al especificar el parámetro opcional minimumAttendeePercentage. Obtenga más información acerca de la seguridad de una sugerencia de reunión y otros parámetros y cómo aplicarlos según corresponda para las reuniones de mayor tamaño.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.

Después de obtener sugerencias para horas de reunión, le recomendamos que:After getting meeting time suggestions, you may want to:

  1. Cree un evento y lo envíe como una convocatoria de reunión.Create an event and send it as a meeting request.
  2. Agregue datos adjuntos al evento.Add an attachment to the event.

Obtenga más información sobre la integración con el Calendario de Outlook.Find out more about integrating with Outlook calendar.