...

четверг, 14 августа 2014 г.

Теперь в Украине автобусные билеты можно покупать через Android приложение

Здравствуйте уважаемые читатели habrahabr!


На прошлой неделе состоялось очень важное для нас и весомое для мира автобусных пассажироперевозок по Украине событие – первые пассажиры приобрели свои билеты, воспользовались нашим приложением на платформе Android (Приложение на Google play «TicketSpot Автобусы»).


Причем не просто забронировали, а именно купили – оплатив их своей банковской карточкой прямо в приложении. Ура!


Еще пару лет назад многие бы не верили, что смогут покупать автобусные билеты, просто сделав пару кликов на своем мобильном телефоне. Сегодня это реальность.


Для того чтобы это случилось — мы прошли путь длиной в четыре года: от сайта по продаже автобусных билетов до нативного приложения под Android.


Пройдя этот путь – мы понимаем, как работают пассажирские автобусные перевозки в Украине, какое в текущий момент законодательное поле, как реализовать то, что требует пассажир и что для этого нужно. А такие навыки у нас появились после самостоятельной реализации таких крупных проектов, как:



  • Сайт по продаже автобусных билетов (ticketspot.com.ua)

  • Автобусная GDS для туристических агентств и корпоративного сектора(c.ticketspot.com.ua)


Приступая к написанию приложения для покупки автобусных билетов через Android мы выделили следующие критерии по которым, скорее всего, пассажир будет оценивать приложение:



  • Надежность, надежность и еще раз надежность. Чтобы не случилось – приложение в любом случае должно работать и не падать, ни при каких обстоятельствах, ведь мы продаем продукт (автобусный билет), который имеет конечную дату потребления (время отправления с автостанции).

  • Простоту. Клиент не хочет нажимать на миллион галочек, кнопочек и т.п. – это привело к тому, что мы максимально упростили интерфейс и оставили только самое нужное: откуда, куда, дату поездки и количество мест. И… мое любимое — мы избавились от всяких «Для начала работы зарегистрируйтесь», «Сначала войдите» и т.п. При покупке билета этого ничего не надо делать. Скажу вам честно – такая опция стоила нам месяц разработки, так как в Android довольно трудно однозначно идентифицировать устройство и его пользователя. Мы ведь хотим быть лучшими для наших клиентов.

  • Понятность. Отчасти мы смогли реализовать понятность самой процедуры покупки, ввода ФИО пассажиров (это требуется для однозначной идентификации пассажира водителями и обслуживающим персоналом автовокзалов, ну и для редких случаев попыток мошенничества) и оплаты. А вот сама процедура посадки хотя и является простой для тех, кто уже покупал у нас автобусные билеты через сайт ticketspot.com.ua, но может вызвать вопросы у того, кто пользуется ею впервые. Законодательство, на текущий момент, играет не в нашу пользу. Прибыв на автовокзал — пассажиру необходимо получить в кассе автовокзала билет установленного образца. Для этого нужно предъявить кассиру код оплаты, который отображается у пассажира в приложении, словом так же, как при приобретении железнодорожных билетов через интернет.

    Если Максим Бурбак (министр инфраструктуры Украины) или кто-то из его команды читает эту новость – свяжитесь с нами(mail@ticketspot.com.ua). Мы готовы предложить решение проблемы электронных автобусных билетов и других насущных задач, которые могут значительно улучшить обслуживание пассажиров.


И вот что у нас вышло


Главный экран приложения



Экран выбора рейсов




Экран купленного билета (самое главное здесь — код оплаты. По нему будет осуществлятся поездка.




На само написание кода и отладку у нас ушло порядка 1 года. При этом мы изначально отказались от сторонних сервисов ускоренной разработки ПО для Android, на подобии PhoneGap, Xamarin и т.п. потому, что приложения, написанные на них — уступают в производительности и надежности, а мы этого не могли допустить – смотрите наш критерий про «Надежность».


Сейчас для покупки автобусного билета через приложение пассажир проходит такие этапы:



  • Выбирает откуда, куда, дату поездки и количество мест.

  • Из полученного списка выбирает подходящий для него рейс. Для удобства пассажиров, рейсы с повышенным комфортом (например, автобусы типа VIP у Автолюкс и Comfort у Гюнсел) выделяются словом “comfort”.

  • Вводит имя и фамилию всех пассажиров.

  • Оплачивает билеты при помощи банковской карточки (Мы благодарны команде Platon.ua – ребята нам сильно помогли в реализации оплаты через мобильное приложение). Такой механизм оплаты впервые применяется на украинском рынке.


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


Все пассажиры купившие билет через приложение обслуживаются в кассах без очереди. Это неоспоримое преимущество, которым нужно пользоваться, а освободившееся время проводить с пользой


А вот несколько возможностей от реализации которых мы не смогли удержаться, и которые, возможно, помогут нашим пассажирам:



  • Для того чтобы не искать автовокзал в чужом городе – мы отображаем его адрес в билете.

  • Для того чтобы понимать, что одевать и брать ли зонтик – мы показываем погоду по станции отправления.

  • Для того чтобы гордо и уверенно идти к своему месту – мы выводим его ориентировочное расположение на карте автобуса.

  • Для Facebook-овцев – прямо из приложения можно оповестить своих друзей о времени прибытия в пункт назначения.

  • На всякий случай предусмотрена возможность скачивания ваучера в формате PDF. Его можно распечатать и он будет иметь такую же силу, как и билет, отображаемый на экране. И там и там самое главное – это код оплаты.


Ииии… последнее — наша гордость и то, что полюбилось многим. Если кто знает – есть такая настенная карта мира, где монеткой нужно стирать те государства, где ты уже побывал. Мы реализовали что-то подобное в приложении. У нас тоже есть карта, Украины, где на основе данных путешествия выделяются те области, в которых побывал пассажир, подсчитывается общее время в пути, расстояние, которое проехал пассажир, количество посещенных населенных пунктов (считается только города прибытия).


Вот как выглядит карта



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


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


При этом для ускорения работы, были реализованы несколько алгоритмов, которые позволили с одной стороны ускорить обработку данных, а с другой снизить нагрузку на сервера. Ведь в день через сервера проходят миллионы запросов.


Накопив многолетний опыт — можем с уверенностью сказать, что 80% всех запросов припадет только на поиск рейсов в заданную дату, без покупки билетов. И лишь 20% от этих 80-и покупают билеты. Сервера, обслуживающие запросы пользователей используют интеллектуальный механизм кеширования, что позволяет добиться значительного увеличения скорости работы, как приложения, так и обслуживания каждого отдельного запроса. Это дает неоспоримый выигрыш во время пиковых сезонов (май – август и ноябрь – декабрь).


Когда пассажир решает купить билет, а именно нажимает кнопку «Купить» – в отличие от просто поиска автобусов, где используется кеширование – делается непосредственный запрос на сервер выбранного автовокзала и в онлайн режиме проверяются данные по выбранному автобусу на выбранную дату.


Но не забывайте – автобус это не поезд и там всего 54 места. Так что с новым приложение «Ticketspot Автобусы» вы сможете, в отличие, от других пассажиров всегда вовремя добраться в необходимый вам город.


Желаем вам приятной дороги и интересных попутчиков.


Скачать приложение можно здесь или на Google Play


С уважением, команда Ticketspot




К сожалению, перенести пост в «Я пиарюсь» не могу за неимением кармы.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий