Microsoft Bookings Api позволяет мне забронировать сотрудника, если у него есть конфликтующие события из их календаря 0365 - PullRequest
0 голосов
/ 27 декабря 2018

Я использую MS Bookings API через Graph для интеграции в мобильное приложение.Проблема в том, что API бронирования позволяет мне бронировать сотрудника во временном интервале, который напрямую конфликтует с его личным календарем 0365 в компании.

Я удостоверился, что проверка 0365 влияет на доступность.

enter image description here

Допустим, у этого сотрудника есть личный обед с 1300-1500, они блокируют это, это точно видно на странице опубликованных бронирований.Однако в API я не могу получить эту информацию, и это позволяет мне записываться на прием в этот временной интервал без предупреждения.

const bookingObject = {
        "@odata.type": "#microsoft.graph.bookingAppointment",
        "customerEmailAddress": Email,
        "customerId": `${customerBookingId}`,
        "customerName": `${FirstName} ${LastName}`,
        "customerNotes": `
                          Notes: ${additionalNotes} \n
                          Phone: ${contactOption || Phone}`,
        "customerPhone": contactOption || Phone,
        "staffMemberIds": [employees[0].id || ''],
        "start": {
          "@odata.type": "#microsoft.graph.dateTimeTimeZone",
          "dateTime": moment(isoTime).toISOString(),
          "timeZone": "America/Los_Angeles"
        },
        "end": {
          "@odata.type": "#microsoft.graph.dateTimeTimeZone",
          "dateTime": moment(isoTime).add(30, 'minutes').toISOString(),
          "timeZone": "America/Los_Angeles"
        },
        "reminders@odata.type": "#Collection(microsoft.graph.bookingReminder)",

        "serviceId": "6e3f07bd-686a-45cc-8217-74c3d82e40fa",
        "serviceNotes":
          `Customer Name:  ${FirstName} ${LastName}\n
            Customer Phone: ${Phone || contactOption}\n`,
      }

На странице опубликованных фактических заказов личные события сотрудников правильно блокируют времяи не позволяя клиенту забронировать их.Мне нужна такая же функциональность, но из API.В настоящее время я получаю все заказы за календарный месяц и программно удаляю их из списка раз.Я также использую эту конечную точку API для получения данных календаря, чтобы также удалить эти временные интервалы из доступного времени.

https://graph.microsoft.com/beta/me/calendar/getschedule

Проблема заключается в том, что эта конечная точка не возвращает всемероприятия персонала.На самом деле я не могу точно определить, какие события, особенно его возвращение.Мы перепутались с «представлениями» на событиях календаря и до сих пор не можем их отобразить.

Итак, кто-нибудь знает, где я могу получить полный список событий календаря пользователей за определенное время?

Разве API-интерфейсы бронирования не должны иметь эту конечную точку, если их опубликованный сайт имеет доступ?

Я не могу публиковать гораздо больше SS, поскольку это неизданный проект.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...