Расширение планирования
Из этой статьи вы узнаете о доступных вариантах планирования виртуальной встречи в Microsoft Teams и Microsoft Graph. Во-первых, вы узнаете, как реплицировать существующий интерфейс в виртуальных встречах Microsoft Teams. Во-вторых, вы узнаете, как использовать собственную систему планирования, предоставляя потребителям тот же интерфейс виртуальных встреч.
Предварительные требования
Ожидается, что читатель этой статьи будет знаком со следующими сведениями:
- Продукт виртуальных встреч Microsoft Teams и предоставляемый пользовательский интерфейс
- API Microsoft Graph Booking для управления Microsoft Booking через Microsoft API Graph
- API собраний Microsoft Graph Online для управления собраниями Microsoft Teams через Microsoft API Graph
Система планирования Microsoft 365
Виртуальные встречи Microsoft Teams используют API Microsoft Booking для управления ими. В приложении Teams отображаются встречи для резервирования сотрудников, а также предоставляется страница Резервирования для клиентов, позволяющая выбрать подходящее время для консультаций. Выполните следующие действия, чтобы создать собственный пользовательский интерфейс для планирования или интегрировать систему планирования Microsoft 365 в решение.
- Используйте следующий HTTP-запрос, чтобы получить список доступных предприятий по бронированию и выбрать бизнес для виртуальных встреч с помощью API microsoft Graph Booking business.
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"
- Список доступных служб резервирования и выбор службы для виртуальных встреч с помощью API служб резервирования Microsoft Graph.
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"
- [Необязательно] Перечислить доступных сотрудников резервирования и выбрать сотрудников для виртуальной встречи с помощью API сотрудников Microsoft Graph Booking. Если сотрудник не выбран, созданная встреча помечается как "Не назначенная".
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"
- [Необязательно] Выберите или создайте клиента booking для виртуальной встречи с помощью API клиента Microsoft Graph Booking. Напоминания не отправляются, если нет клиентов.
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"
- Создавайте встречи резервирования для выбранных сотрудников и гостей, а также сотрудников и гостей(при необходимости) с помощью API встреч в Microsoft Graph Booking. В следующем примере мы создадим собрание по сети, связанное с бронированием. Кроме того, можно предоставлять заметки и напоминания.
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"
В ответе вы увидите, что была создана новая встреча booking. Виртуальная встреча также отображается в приложении Microsoft Booking и приложении Виртуальной встречи Microsoft Teams.
Примечание
Единственный способ получить сведения о клиенте — использовать API встреч get Microsoft Graph Booking.
Использование собственной системы планирования
Если у вас есть существующая система планирования и вы хотите расширить ее с помощью виртуальной встречи, предоставляемой Microsoft Teams, выполните следующие действия:
- Создайте собрание по сети для виртуальной встречи с помощью API онлайн-собраний Microsoft Graph.
Примечание
Эта операция не создает событие календаря в Microsoft Booking, Outlook или Microsoft Teams. Если вы хотите создать событие календаря, используйте API событий календаря 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/..."
- Создание виртуальной встречи для ресурса onlinemeeting , созданного на предыдущем шаге с помощью
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/..."
Вы можете сохранить созданный URL-адрес в системе планирования или создать выделенное хранилище пар "ключ-значение", которое свяжет уникальный идентификатор события календаря в системе планирования с URL-адресом виртуальной встречи Microsoft Teams.
Дальнейшие действия
- Узнайте, какие варианты расширяемости доступны для виртуальных встреч.
- Узнайте, как настроить до и после встречи
- Узнайте, как настроить интерфейс предварительного запуска
- Узнайте, как настроить взаимодействие с звонками