- PVSM.RU - https://www.pvsm.ru -
Путешествие между Петербургом и Москвой за последние годы из события превратилось в рутинную задачу. Кто-то еженедельно мотается из Питера в Москву или наоборот на работу, по работе. У кого-то там девушка, родители, друзья… Перелет на самолете занимает чуть больше часа. Между двумя столицами в день летают более 40 рейсов.
Да и не только Москва и Питер генерируют постоянный трафик. Появляются и другие экономические и культурные центры. В Казань летает свыше 10 рейсов в день. В Краснодар – более 20.
Вслед за изменением поведения людей, меняется и такая консервативная область, как авиация. Гибкие тарифы, билеты с открытой датой, а теперь и проездные билеты.
Сегодня расскажем, как реализовали онлайн-покупку, оформление и изменение билетов в рамках авиапроездного или multipass. И дали активно путешествующим возможность курсировать между городами максимально легко. Если вам интересны технические аспекты укрощения систем бронирования, или вы один из путешественников – наша статья для вас.
Сам по себе авиапроездной штука не новая. В России они начали появляться несколько лет назад, и теперь функционируют у ряда авиакомпаний. Схема их оформления и пользования была общая – оформи проездной в кассе или оставь заявку на сайте, а каждый полет выбирай и подтверждай через колл-центр.
Кто сегодня пойдет покупать билет в кассе? Кто сегодня любит звонить в колл-центр? Онлайн-агентства приходят на смену билетным кассам. Функционал сайтов заменяет собой колл-центры.
Люди хотят сервис, доступный в любой момент, без необходимости куда-то идти или звонить, просто нажав кнопку на смартфоне.
Авиапроездной в наших реалиях – это все-таки абонемент. Ты покупаешь тариф на определенное число перелетов туда-обратно по выбранному маршруту. Устроено это как бронь на несколько перелетов с открытой датой вылета. Действует он в течение ограниченного срока. Но даты полетов в рамках этого срока и рейсы можно выбирать любые. И менять сколь угодно много раз. Бесплатно.
Так оно работает в России.
У авиа альянсов и некоторых отдельных авиакомпаний существуют и другие схемы. Если кратко, то они делятся на 2 вида:
Но это совсем другая история. Вернемся же к нашим реалиям.
В принципе все просто. Только займет минут 30… Вам будут вслух рассказывать все расписание на каждую дату по каждому билету. Потом оформлять бронирование через GreenScreen – инструмент доступа к системе бронирования, работающий по текстовым запросам. Потом выписывать билет…
Но это еще цветочки! Это же абонемент. Полетов по нему полагается несколько. Тут и начинается самое интересное.
Внести данные о новых полетах или изменить дату тех, что уже оформлены могут только супер-продвинутые специалисты авиакомпании. Найти их можно в двух местах:
Процедура внесения изменений в бронирование значительно более сложная, чем оформление.
Естественно, эта задача тоже решаема путем введения целого пула правильных текстовых запросов, но самая мучительная.
Вот так выглядит экран системы Green Screen у специалиста авиакомпании:
В сухом остатке. Каждый раз при обновлении проездного надо сдаваться в кассу, что явно долго и неудобно. Улучшить показатели продукта можно, сделав продажу на сайте, и только изменение через колл-центр. Получится чуть быстрее, но все еще не 21 век.
Наше решение «Деловой проездной» как раз такое. Все операции по оформлению и оплате проездного, выбору билетов, изменению рейсов производятся онлайн через наш сервис.
Начали, как и положено, с проектирования UI. Задача складывалась из следующих составляющих (требований):
А) Мы делаем веб-сервис для клиентов авиакомпании, и он должен полностью соответствовать стилистике веб-сервисов компании. Это само собой разумеющееся.
Б) Если мы реализуем онлайн-продажу проездных, мы должны создать точно такой-же пользовательский опыт, как и при покупке билета.
Экран выбора рейса на сайте авиакомпании выглядит так:
Экран выбора рейсов в рамках проездного вот так:
В) При этом нам нужно, чтобы пользователь точно понимал, что это не билет – это проездной. Для этого предусмотрен целый ряд инструментов:
Эта же информация – ссылка на кабинет клиента «Делового проездного» отображается в email-подтверждении оформления проездного и каждого нового билета по нему.
Г) Мобильная версия генерирует 30% трафика. Сразу проектируем качественное отображение на мобильных платформах.
Мы изначально исходили из предположения, что наш клиент – очень мобилен. И у нас уже есть реальные примеры, как за 20 минут до вылета одного из рейсов клиент успешно оформляет следующий.
Как мы подменили продолжительный сеанс работы специалиста по бронированию молниеносными онлайн-операциями?
Наше решение построено на трех технологиях:
Для того чтобы отслеживать изменения о билетах, мы используем библиотеку Javers, которая предоставляет возможность версионирования сущностей, хранимых в MongoDB.
Сначала мы пользовались JasperReports. Но пришли к тому, что внесение даже небольших изменений в его шаблоны занимает очень много времени. А сделать PDF с точным (pixel perfect) расположением элементов у нас так и не получилось. Поэтому мы проанализировали текущие решения и выбрали wkhtmltopdf. Теперь изменения квитанции мы можем делать довольно быстро, так как HTML – довольно простой формат.
У системы бронирования Gabriel, которую использует наш заказчик, есть веб-шлюз SWS (Sita Web Services). Мы, конечно, работали именно с ним.
В результате, с точки зрения механики системы бронирования ключевые моменты нашего решения выглядят так:
На данный момент реализация клиент-серверных веб-приложений через API и SPA является, можно сказать, трендом и де-факто стандартом. Поэтому приложение для «Делового проездного» мы решили делать с использованием этих технологий. Для реализации SPA мы взяли свой фреймворк, который сделан на основе KnockoutJS/Durandal. На нем мы реализовали довольно много решений, в том числе несколько очень сложных.
Для пользователя доступно несколько точек входа, из которых он, двигаясь через этапы визарда, достигает своей цели – оформления проездного.
Мы не лукавим и не скрываем, что свой фреймворк создали не вчера. И в тонкости работы с системой бронирования погружаемся уже далеко не первый раз. Мы скорее оттуда и не вылезаем. Но этот проект стал очередным вызовом. Мы делали с системой бронирования такое, чего не делали раньше ни мы, ни, похоже, остальные. Надеемся, и вам было интересно.
И, кстати, релиз проекта – это совсем не конец истории. Полторы недели назад вышло аналогичное решение для абонементов на перелет в бизнес-классе – «Бизнес-проездной». А в ближайшее время увидит свет API для подключения к данной услуге онлайн трэвел-агентств.
Теперь, зная, как это все работает изнутри, надеемся вам будет интересно посмотреть, как это все выглядит и работает снаружи. Не так часто мы можем дать вам потыкать и попробовать самим. Сегодня один из редких дней. multipass.s7.ru [4] – заходите в гости. А может кому-то нужен проездной?
Автор: EastBanc Technologies
Источник [5]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/java/196326
Ссылки в тексте:
[1] пример: http://www.skyteam.com/en/flights-and-destinations/travel-passes/
[2] пример: https://en.wikipedia.org/wiki/AAirpass
[3] вот тут: https://habrahabr.ru/company/eastbanctech/blog/244745/
[4] multipass.s7.ru: http://multipass.s7.ru
[5] Источник: https://habrahabr.ru/post/311862/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.