Partager via


Extension de la planification

Vous découvrez dans cet article les options disponibles pour planifier un rendez-vous virtuel avec Microsoft Teams et Microsoft Graph. Tout d’abord, vous apprenez à répliquer l’expérience existante dans les rendez-vous virtuels Microsoft Teams. Ensuite, vous apprenez à mettre en place votre propre système de planification tout en offrant aux consommateurs la même expérience de rendez-vous virtuel.

Prérequis

Le lecteur de cet article est censé connaître :

Système de planification Microsoft 365

Les rendez-vous virtuels de Microsoft Teams sont gérés à l'aide des API de Microsoft Booking. Dans l’application Teams, vous voyez les rendez-vous Booking pour les membres du personnel de Booking, et celle-ci fournit la page Booking aux clients leur permettant de sélectionner les heures appropriées pour la consultation. Pour créer votre propre interface utilisateur pour la planification ou pour intégrer le système de planification Microsoft 365 dans votre solution, effectuez les étapes suivantes .

  1. Utilisez la requête HTTP suivante pour répertorier les entreprises Booking disponibles et sélectionner des activités pour les rendez-vous virtuels via l’API business de Microsoft Graph Booking.
GET https://graph.microsoft.com/v1.0/solutions/bookingBusinesses
Permissions: Bookings.Read.All (delegated)
Response: response.body.value[0].displayName; // ”Contoso lunch delivery”
	        response.body.value[0].id; // "Contosolunchdelivery@contoso.onmicrosoft.com"
  1. Répertoriez les services Booking disponibles et sélectionnez le service pour les rendez-vous virtuels via l’API services de Microsoft Graph Booking.
GET https://graph.microsoft.com/v1.0/solutions/bookingBusinesses/ Contosolunchdelivery@contoso.onmicrosoft.com/services
Permissions: Bookings.Read.All (delegated)
Response: response.body.value[0].displayName; // ” Initial service”
	    response.body.value[0].id; // " f9b9121f-aed7-4c8c-bb3a-a1796a0b0b2d"
  1. [Facultatif] Répertoriez les membres du personnel Booking disponibles et sélectionnez les membres du personnel pour les rendez-vous virtuels via l’API membre du personnel de Microsoft Graph Booking. Si aucun membre du personnel n’est sélectionné, le rendez-vous créé est étiqueté « Non affecté ».
GET https://graph.microsoft.com/v1.0/solutions/bookingBusinesses/ Contosolunchdelivery@contoso.onmicrosoft.com/staffMembers
Permissions: Bookings.Read.All (delegated)
Response: response.body.value[0].displayName; // ”Dana Swope”
	    response.body.value[0].id; // "8ee1c803-a1fa-406d-8259-7ab53233f148"
  1. [Facultatif] Sélectionnez ou créez un client Booking pour un rendez-vous virtuel via l'API client de Microsoft Graph Booking. Aucun rappel n’est envoyé s’il n’y a aucun client.
GET https://graph.microsoft.com/v1.0/solutions/bookingBusinesses/ Contosolunchdelivery@contoso.onmicrosoft.com/customers
Permissions: Bookings.Read.All (delegated)
Response: response.body.value[0].displayName; // ”Adele Vance”
	    response.body.value[0].id; // "80b5ddda-1e3b-4c9d-abe2-d606cc075e2e"
  1. Créez des rendez-vous Booking pour les entreprises, les services et éventuellement les membres du personnel et les invités via l’API rendez-vous de Microsoft Graph Booking. Dans l’exemple suivant, nous créons une réunion en ligne associée à la réservation. En outre, vous pouvez fournir des notes et rappels.
POST https://graph.microsoft.com/v1.0/solutions/bookingBusinesses/ Contosolunchdelivery@contoso.onmicrosoft.com/appointments
Body: {
    "endDateTime": {
        "@odata.type": "#microsoft.graph.dateTimeTimeZone",
        "dateTime": "2023-05-20T10:00:00.0000000+00:00",
        "timeZone": "UTC"
    },
    "isLocationOnline": true,
    "staffMemberIds": [
       {
          "8ee1c803-a1fa-406d-8259-7ab53233f148"
       }
    ],
    "serviceId": "f9b9121f-aed7-4c8c-bb3a-a1796a0b0b2d",
    "startDateTime": {
        "dateTime": "2023-05-20T09:00:00.0000000+00:00",
        "timeZone": "UTC"
    },
    "customers": [
        {
            "customerId": "80b5ddda-1e3b-4c9d-abe2-d606cc075e2e"
        }
    ]
}
Permissions: BookingsAppointment.ReadWrite.All (delegated)
Response: response.body.value.id; // "AAMkADc7zF4J0AAA8v_KnAAA="
          response.body.value.serviceId; // "f9b9121f-aed7-4c8c-bb3a-a1796a0b0b2d"
          response.body.value.joinWebUrl; // "https://teams.microsoft.com/l/meetup-join/..."
          response.body.value.anonymousJoinWebUrl; // "https://visit.teams.microsoft.com/webrtc-svc/..."
          response.body.value.staffMemberIds; // "8ee1c803-a1fa-406d-8259-7ab53233f148"
          response.body.value.customers[0].name; // "Adele Vance"

Dans la réponse, un nouveau rendez-vous Booking a été créé. Rendez-vous virtuel s’affiche également dans l’application Microsoft Booking et dans l’application de rendez-vous virtuel Microsoft Teams.

Notes

La seule manière d’obtenir des informations sur les clients est d’utiliser l’API GET De rendez-vous Microsoft Graph Booking.

Apportez votre propre système de planification

Si vous disposez d’un système de planification existant et souhaitez l’étendre avec l’expérience de rendez-vous virtuel fournie par Microsoft Teams, suivez les étapes ci-dessous :

  1. Créez une réunion en ligne pour un rendez-vous virtuel via l’API de réunion en ligne Microsoft Graph.

Notes

Cette opération ne crée aucun événement de calendrier dans Microsoft Booking, Outlook ou Microsoft Teams. Si vous souhaitez créer un événement de calendrier, utilisez l’API d’événement Calendrier Microsoft Graph.

POST https://graph.microsoft.com/v1.0/ me/onlineMeetings
Body: {
  "startDateTime":"2023-05-20T09:00:00.0000000+00:00",
  "endDateTime":"2023-05-20T10:00:00.0000000+00:00",
  "subject":"Virtual appointment in Microsoft Teams"
}
Permissions: OnlineMeetings.ReadWrite (delegated)
Response: response.body.value.id; // "MSpkYzE3NjctYmZiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy"
          response.body.value.joinWebUrl; // "https://teams.microsoft.com/l/meetup-join/..."
  1. Créez une expérience de rendez-vous virtuel pour une ressource de réunion en ligne créée à l’étape précédente via
GET https://graph.microsoft.com/v1.0/ me/onlineMeetings/ MSpkYzE3NjctYmZiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy/getVirtualAppointmentJoinWebUrl
Permissions: OnlineMeetings.ReadWrite (delegated)
Response: response.body.value; //"https://visit.teams.microsoft.com/webrtc-svc/..."

Vous pouvez stocker l’URL générée dans votre système de planification ou créer un stockage de paire clé-valeur dédié qui relie l’ID unique de l’événement de calendrier dans votre système de planification à l’URL de l’expérience de rendez-vous virtuel Microsoft Teams.

Étapes suivantes