Для того чтобы Центр действий мог отправлять обратные вызовы для создания и обновления бронирований от вашего имени, вам необходим сервер бронирования. Это позволит Центру действий создавать записи о встречах, бронирования и резервации от вашего имени.
Чтобы узнать, как настроить подключение к тестовому и рабочему серверам бронирования, см. раздел «Настройка учетных данных сервера бронирования» .
Перед переходом к обновлениям в режиме реального времени выполните следующие задачи по подготовке сервера бронирования:
- Загрузка страницы BatchAvailabilityLookup готова.
- BatchAvailabilityLookup slot click Ready
- CreateBooking Ready
- Обновление. Бронирование готово.
- Включите проверку доступности в настройках учетной записи Центра действий.
Каждая задача помечается как выполненная и становится зеленой, когда вы отправляете точные данные о наличии мест в режиме реального времени в запросы Booking Server через процесс бронирования в тестовой среде (Sandbox). Этапы работы Booking Server анализируются в течение 14 дней.
Реализуйте REST API-интерфейс.
Реализуйте API-интерфейс на основе REST . Это позволит Google отправлять запросы к Booking Server по протоколу HTTPS.
Для реализации API-интерфейса настройте сервер бронирования для разработки или тестовую среду, которая подключается к тестовой среде Actions Center. Переходите к производственной среде только после полного тестирования тестового сервера.
Все запросы к серверу бронирования Google обрабатываются относительно URL-адреса сервера бронирования, указанного на странице сервера бронирования . Например, если ваш URL-адрес установлен как api.example.com/google , то все запросы HealthCheck будут отправляться на api.example.com/google/v3/HealthCheck .
Убедитесь, что с помощью переключателя сред для обеих сред (песочницы и производственной) настроена правильная конечная точка сервера бронирования.
Безопасность и аутентификация
Вся связь с вашим сервером бронирования осуществляется по протоколу HTTPS с использованием базовой аутентификации. Для упрощения настройки сервера мы рекомендуем использовать общедоступный инструмент проверки SSL или TLS, например, тест SSL-сервера от Qualys .
Все запросы, которые Google отправляет на ваш сервер бронирования, проходят аутентификацию с использованием базовой аутентификации HTTPS. Вы можете ввести данные для базовой аутентификации, пароль и имя пользователя вашего сервера бронирования на странице конфигурации сервера бронирования в Центре действий . Учетные данные необходимо менять каждые шесть месяцев.
Создайте свой сервер бронирования
Сервер бронирования определяет, как интеграция взаимодействует с вашей системой, а также создает или обновляет бронирования. Чтобы настроить подключение к тестовому и рабочему серверам бронирования, см. раздел «Настройка учетных данных сервера бронирования» .
Ожидается, что каждый ответ, который ваш сервер бронирования отправляет на запрос от Reserve with Google, будет содержать точные данные о наличии мест в режиме реального времени. В следующей таблице показаны методы для каждой реализации, а также приведены ссылки на форматы протоколов служб:
| Метод | Определение | Ответ | HTTP-запрос |
|---|---|---|---|
Загрузка страницы BatchAvailabilityLookup | Когда пользователь нажимает кнопку «Зарезервировать столик для вашего продавца», при загрузке страницы вызывается запрос Полезная нагрузка содержит множество слотов, которые определяются на основе ваших последних загрузок из ленты новостей, которые, по мнению сервиса Reserve with Google, доступны. | В ответе необходимо указать каждый запрос на слот и текущую доступность слота. Это предотвратит отображение недоступных слотов. | POST/v3/BatchAvailabilityLookup/ |
BatchAvailabilityLookup slot click | Когда пользователю отображаются доступные слоты для бронирования, и он выбирает слот, вызывается запрос BatchAvailabilityLookup для обработки выбора слота. | Ответ должен отражать текущую, фактическую доступность слота. Если слот забронирован до момента нажатия кнопки, верните ответ о том, что он недоступен. | POST/v3/BatchAvailabilityLookup/ |
CreateBooking | Когда пользователь подтверждает в модальном окне бронирования, что хочет забронировать выбранный временной интервал, отправляется запрос CreateBooking . | Ответ должен отражать успех или неудачу бронирования. Если бронирование не удалось, необходимо вернуть конкретную причину сбоя. Например, слот был забронирован до того, как был вызван метод В случае успешного оформления бронирования ответ будет содержать уникальный | POST /v3/CreateBooking/ |
UpdateBooking | После оформления бронирования через систему «Забронировать через Google» пользователь может внести изменения в свое бронирование. При обновлении или отмене бронирования отправляется запрос UpdateBooking ). | Как и в случае с ответом CreateBooking , ваш ответ UpdateBooking должен подтверждать успешное бронирование или содержать конкретную причину сбоя. | POST /v3/UpdateBooking/ |
HealthCheck | Центр обработки запросов регулярно обращается к вашему серверу бронирования, чтобы подтвердить активность и работоспособность вашей инфраструктуры. | Используйте код состояния HTTP для указания статуса работы вашего сервера. Верните код состояния HTTP 200, если сервер активен и успешно работает. Чтобы сообщить об ошибке или временно отключить интеграцию, верните соответствующий HTTP-код состояния, отличный от 2xx. | GET /v3/HealthCheck/ |
Критерии достижения контрольных точек
Для завершения этапа "Готовность к использованию сервера бронирования" ваша интеграция должна соответствовать следующим критериям в тестовой и производственной средах:
| Метод | Необходимое количество запросов (в тестовой среде) | Необходимое количество запросов (для производства) | Требуемый процент успеха |
|---|---|---|---|
Загрузка страницы BatchAvailabilityLookup | 20 | 20 | 90% |
BatchAvailabilityLookup slot click | 20 | 20 | 90% |
CreateBooking | 10 | 3 | 90% |
UpdateBooking | 10 | 3 | 90% |
Процесс бронирования в тестовой среде
Чтобы просмотреть процесс бронирования в тестовой среде, перейдите в раздел «Инвентарь» в Центре действий. В столбце «RwG - E2E» в разделе «Инвентарь» отображается активная (в тестовой среде) ссылка на процесс бронирования в тестовой среде для продавцов, соответствующих требованиям и имеющих доступность в будущем.
Ниже перечислены действия, выполняемые в процессе бронирования:
При нажатии на ссылку RwG - E2E при загрузке страницы запускается запрос
BatchAvailabilityLookup, который отображает известную доступность продавца.При нажатии на забронированное время запускается запрос
BatchAvailabilityLookupпо клику на слот, и отображается модальное окно бронирования.Завершите бронирование, открыв модальное окно бронирования, чтобы отправить запрос
CreateBooking.После завершения бронирования в тестовой среде (Sandbox) на учетную запись, использованную для создания бронирования, поступает электронное письмо с подтверждением и подробной информацией о бронировании.
Чтобы активировать метод
UpdateBooking, измените или отмените бронирование из электронного письма.
Проверка здоровья
Обязательно реализуйте метод HealthCheck в песочнице и продакшене. Этот метод возвращает информацию о состоянии вашего Booking Server. Он позволяет Google постоянно отслеживать состояние вашего Booking Server.
Запрос : Нет
Возвращаемое значение : Нет
Используйте HTTP-код состояния, чтобы указать статус работы вашего сервера.
Если сервер активен и успешно работает, верните HTTP-код состояния 200, или, если произошла ошибка, верните один из HTTP-кодов состояния .