Dela via


Utöka schemaläggning

I den här artikeln får du lära dig de tillgängliga alternativen för att schemalägga en virtuell avtalad tid med Microsoft Teams och Microsoft Graph. Först får du lära dig hur du replikerar den befintliga upplevelsen i virtuella Microsoft Teams-avtalade tider. För det andra får du lära dig hur du tar med ditt eget schemaläggningssystem samtidigt som du ger konsumenterna samma upplevelse av virtuella avtalade tider.

Förutsättningar

Läsaren av den här artikeln förväntas vara bekant med:

Schemaläggningssystem för Microsoft 365

Virtuella avtalade tider i Microsoft Teams använder API:er för Microsoft Booking för att hantera dem. I Teams-programmet ser du bokningsmötena för Booking-personalmedlemmar och den innehåller sidan Bokning för kunder så att de kan välja lämpliga tider för samråd. Följ nästa steg för att skapa ett eget användargränssnitt för schemaläggning eller för att integrera Microsoft 365-schemaläggningssystemet i din lösning.

  1. Använd följande HTTP-begäran för att visa en lista över tillgängliga bokningsföretag och välja företag för virtuella avtalade tider via API:et för Microsoft Graph Booking-företag.
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. Visa en lista över tillgängliga bokningstjänster och välj tjänst för virtuella avtalade tider via API:et för Microsoft Graph Booking Services.
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. [Valfritt] Visa en lista över tillgängliga booking-personalmedlemmar och välj personalmedlemmar för virtuell avtalad tid via API:et för microsoft Graph Booking-personalmedlem. Om ingen anställd har valts är den avtalade tiden märkt med "Ej tilldelad".
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. [Valfritt] Välj eller skapa en Bokningskund som för Virtuell avtalad tid via Microsoft Graph Booking-kund-API: et. Inga påminnelser skickas om det inte finns några kunder.
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. Skapa bokningar för utvalda företag, tjänster och eventuellt personalmedlemmar och gäster via MICROSOFT Graph Booking-API:et för avtalade tider. I följande exempel skapar vi ett onlinemöte som är kopplat till bokningen. Dessutom kan du ange anteckningar och påminnelser.
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"

I svaret ser du att en ny bokningsbokning har skapats. Virtuell avtalad tid visas också i appen Microsoft Booking och programmet För virtuella microsoft Teams-avtalade tider.

Anteckning

Det enda sättet att få kundinformation är att använda API:et för avtalad tid för GET Microsoft Graph Booking.

Ta med ditt eget schemaläggningssystem

Om du har ett befintligt schemaläggningssystem och vill utöka det med den virtuella avtalade tiden som tillhandahålls av Microsoft Teams följer du stegen nedan:

  1. Skapa ett onlinemöte för virtuell avtalad tid via Microsoft Graph Online-mötes-API: et.

Anteckning

Den här åtgärden skapar inte en kalenderhändelse i Microsoft Booking, Outlook eller Microsoft Teams. Om du vill skapa en kalenderhändelse använder du händelse-API:et för Microsoft Graph Calendar.

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. Skapa virtuell avtalad tid för en onlinemeeting-resurs som skapades i föregående steg 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/..."

Du kan lagra den genererade URL:en i ditt schemaläggningssystem eller skapa ett dedikerat nyckel/värde-par-lagring som skulle länka kalenderhändelsens unika ID i schemaläggningssystemet med URL:en till Microsoft Teams Virtuella avtalade tider.

Nästa steg