Бронь крепка. Как работает приложение для заказа столиков в ресторанах двух столиц

Один из наших клиентов взялся решить проблему онлайн-бронирования столиков для ресторанов и кафе сначала в Москве и Санкт-Петербурге, а затем – и по всей России. Как мы разрабатывали приложение для заведений, работающих с сервисом – читайте ниже.   Факт: компания в сфере услуг, которая не способна обеспечить доступ к этим услугам через интернет, теряет до половины потенциальных клиентов. Зайдя на сайт и не увидев способа сделать онлайн-заказ, каждый второй уйдет в поисках чего-нибудь поудобнее. При этом для абсолютного большинства местных компаний создавать собственную автоматизированную систему онлайн-заказа и бронирования – достаточно дорого, чтобы сроки окупаемости исчислялись месяцами, а то и годами. Ну и какой же российский малый бизнес может смотреть так далеко? Многие минимизируют издержки с помощью простого трюка: «Оставьте свой номер телефона, и мы вам перезвоним». Это безусловно на 200% лучше, чем ничего – но у такого решения масса слабых мест. Один из наших клиентов взялся массово решить проблему по крайней мере для ресторанов и кафе. Сервис RestAdviser дает ресторанам возможность организовать онлайн-бронирование на своей площадке, управлять рассадкой гостей и делать многие другие полезные вещи. Кроме того, сервис работает и для пользы непосредственно клиентов – собирает отзывы и рейтинги с разных ресурсов (Афиша, Restoclub, TripAdvisor), облегчая процесс выбора и минимизируя время на серфинг. Сегодня RestAdviser работает в Москве и Санкт-Петербурге, но у сервиса есть долгосрочный план по выходу на федеральный уровень. Энтерре RestAdviser заказал разработку мобильного приложения для своих клиентов – владельцев ресторанов. По задумке, администраторы и другие специально обученные люди в приложении видят онлайн-бронирования, подтверждают их, выбирают столики для гостей и управляют всем этим богатством. В качестве платформы выбрали iPad. Задача Удобное и функциональное приложение для ресторана. Оно должно уметь:
  • создавать залы, столики, прочие важные элементы с помощью конструктора,
  • получать данные о бронировании столиков на сайте и отображать их в приложении,
  • при необходимости вносить изменения в бронирования.
Логика работы приложения Схема работы приложения в целом довольно простая и четкая, за исключением некоторых нюансов, которые выявились уже в процессе разработки. Как осуществляется бронирование? Как работает бронирование столиков в приложении Конструктор в приложении – визуальный. Клиент-ресторан может создавать неограниченное количество залов, столов, указывать расположение важных для гостей элементов – сцены, окон, стен, дверей. Таким образом пользователь, который осуществляет бронирование, может выбрать лучший для себя вариант. Расстановку столов ресторан при необходимости может менять – например, если забронирован большой банкет. Бронь можно перемещать с одного стола на другой. С разработкой приятного и удобного конструктора у нас не было особых проблем, и это повод для гордости. В нашем портфолио мобильных приложений уже есть проекты, для которых очень важен визуальный и интуитивно понятный UI – например, векторный редактор графики Grapholite и конструктор баз данных Mobi DB. Так что нам оставалось применить имеющийся опыт к задаче. А еще заказчик попросил нас сделать красивый календарь. Мы некоторое время думали, а потом нашли готовое и изящное решение на Хабрахабре. Очень рекомендуем! Маленькие, но очень важные детали В процессе разработки перед нами возникло три важных задачи.
  1. Сервис для ресторанов от RestAdviser – платный, однако мало кто готов покупать кота в мешке. Поэтому оценить функционал приложения клиент может бесплатно и без авторизации: поиграть с конструктором, проверить удобство, примерить на свое заведение. Однако синхронизация с сервером (а значит, и фактически бронирование столов) доступны только авторизованным, то есть заплатившим пользователям.
  2. Потенциальный конфликт бронирований, который может возникнуть, когда один и тот же стол забронировали одновременно (в нашем случае в течение пяти минут) через сайт и приложение, или через SMS. Представим, что есть очень популярный ресторан с ограниченным количеством крайне удобных столиков, которые нравятся всем. В этом случае на столе остается последняя бронь. А вытесненная попадает в специальный список нераспределенных заявок, которые требуют вмешательства администратора ресторана.
  3. Путаница со временем. Напоминаем, что сервис планирует выйти на федеральный уровень, а часовых поясов в России аж 11. Еще их периодически сдвигают, меняют, переводят стрелки. Чтобы избежать путаницы, мы сделали вот что. На сервере всегда московское время. Приложение об этом знает, и отображает пользователю настраиваемое время работы ресторана (местное). При синхронизации учитывается возможная разница во времени.
Что получилось? Скриншот приложения Скриншот приложенияСкриншот приложения