EN RU
Напишите нам

Roomeeting — сервис для онлайн бронирования конференц-залов

roomeeting.com

Индустия Недвижимость
Расположение Франция
Разработка 2019–2020

— Будучи хозяином отеля во Франции, я часто получаю запросы от клиентов и коллег на бронирование конференц-зала. К сожалению, я не нашел удобного готового решения для осуществления бронирований такого рода. Именно поэтому я решил сам создать программное решение для этой цели и сделать процесс максимально интуитивно понятным и простым.

Mouloud Arhab, COO Roomeeting

Задача Stfalcon

Задача нашей компании состояла в том, чтобы создать решение, которое облегчит и упростит поиск и бронирование конференц-залов с учетом специфики краткосрочных мероприятий.

Сервис должен позволять пользователям осуществлять поиск по определенным критериям, таким как место проведения мероприятия, требуемая площадь и количество участников. Кроме того, необходимо было обеспечить возможность заказа дополнительного оборудования для встречи или конференции и резервирования жилья для докладчиков и посетителей. Одной из ключевых задач была также интеграция созданного продукта с Channel Manager – специализированным решением для проверки стоимости и наличия свободных номеров. Для владельца отеля новая система должна обеспечивать централизованное управление номерами и залами.

Решение

Команда Stfalcon разработала веб-сервис, который позволяет:

  • регистрацию конференц-залов в сервисе в любой точке мира;
  • добавление описания зала, самого отеля и вариантов бронирования, которые доступны;
  • удобный поиск и бронирование конференц-залов и помещений для клиентов.

Менеджеры мероприятий имеют возможность удобного поиска по местоположению, (возможен поиск по карте), дате, продолжительности мероприятия и количеству участников.

Кроме того, возможно многокомпонентное бронирование - помещения, оборудования, еды и жилья. Все это можно заказать одновременно.

Technologies

Roomeeting – веб-сервис, разработанный на PHP фреймворке Symfony версии 4.4 (последней LTS версии на момент разработки). Backend представляет собой исключительно RESTful API интерфейс, так как все три фронтенд-приложения реализованы как Single Page Application (SPA). Для деплоя продакшена используется Kubernets в Google Cloud, также используется Google Cloud Storage для хранения файлов. Кроме этого на бекенде реализованы методы для оплаты заказа через платежную систему Stripe. Из внешних сервисов также в проект интегрированы некоторые методы Google Maps API.

Roomeeting интегрирован в Channel Manager D-Edge. По предоставленной документации от этого сервиса, мы реализовали со своей стороны все необходимые API вызовы к сервису D-Edge. После этого мы проходили все этапы интеграции совместно со службой поддержки данного менеджера каналов. Благодаря этой интеграции, информация о бронировании комнат может синхронизироваться с другими системами бронирования, например Booking.com или Airbnb

Предметная область отельного бизнеса очень объемная, и это воплощается в огромное количество сущностей и связей между ними. Отдельно хочется отметить функционал поиска отелей и конференц-залов, так как это могло стать одним из узких мест сервиса. Так как в поиске принимает участие очень много разных фильтров, делать поиск одним запросом к базе было невозможным, без объединения огромного количества таблиц. А это негативно сказывается на скорости. Для решения проблемы был использован паттерн Chain Of Responsibility, один большой запрос с фильтрацией разбит на несколько последовательных шагов. Каждый следующий шаг вызывается только если еще есть результаты, которые необходимо фильтровать. При этом везде где возможно используется кеширование запросов и результатов, поэтому большинство запросов не запускаются в базе данных, а берут свои результаты из кеша. Благодаря этому значительно уменьшена нагрузка на базу и сложность реализации и поддержки механизма поиска.

Интеграция

Channel Manager

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

Интеграция календаря

Календарь был интегрирован для владельцев отелей, для легкого и удобного просмотра предстоящих событий. Календарь позволяет проверять заказы, сделанные на определенную дату, и общую занятость конференц-залов.

Оплата

Для удобного процесса оплаты была интегрирована платежная система Stripe.

Карты

Карты Google были интегрированы для более удобного поиска и лучшей навигации.

Результат

Мы запустили комплексное онлайн решение, которое позволяет многокомпонентное бронирование конференц-зала, проживания и сопутствующих услуг в любое время из любого места и в любой точке мира.

Над проектом работали:

  • Денис Кривов
    Денис Кривов

    Проектный менеджер

  • Артем Генвальд
    Артем Генвальд

    Backend разработчик

  • Илья Османов
    Илья Османов

    Frontend разработчик

  • Петр Боруль
    Петр Боруль

    Frontend разработчик

  • Максим Нестерук
    Максим Нестерук

    Дизайнер

  • Юрий Шевчук
    Юрий Шевчук

    QA

  • Оксана Масловская
    Оксана Масловская

    Аккаунт менеджер

Наши проекты

  • Real Estate CRM

    Real Estate CRM

    Система по работе с клиентами для «Набережного квартала»

  • Arian CRM

    Arian CRM

    CRM-система для строительной компании

  • TicketsBox

    TicketsBox

    Площадка продажи билетов для различных мероприятий