Доброго времени суток всем!
В этой пилотной записи хочу познакомить читателей со своим небольшим проектом, нацеленном преимущественно на споттеров. Полагаю, что такие здесь есть, и надеюсь, что проект может показаться вам интересным.
Кому лень читать: ссылка на проект внизу записи, однако я рекомендую прочитать описание, чтобы было понятно, что к чему.
Вместо вступления
По роду деятельности я разработчик ПО, но авиацию, в особенности гражданскую, полноправно можно считать моей второй страстью (после IT). Относительно недавно мое увлечение получило новый виток и я стал увлекаться споттингом.
Немедленно походы в аэропорты в местах в различных местах поставили меня перед необходимостью более тщательно готовиться к этим мероприятиям, дабы не рыдать в подушку не разочаровываться в результате :rolleyes:
Иногда этот результат портила неожиданно испортившаяся погода, иногда редкость посадок/взлетов (прогадывал с пиковым временем), иногда ещё какая-нибудь мелочь, которую забывал учитывать. Перед походами приходилось поднимать ряд источников: онлайн-табло аэропортов, погодные сервисы, Flightradar, выяснять активную ВПП и пр.
Если цель стояла в том, чтобы поймать ВС определенного типа или АК, или поймать наибольшее количество самолетов за наименьшее время, то онлайн-табло, далеко не всегда отличавшееся удобством восприятия и использования, ещё приходилось вдумчиво анализировать. Если прилетов/вылетов мало — это еще куда ни шло, но с загруженными аэропортами вроде Схипхола в Амстердаме было значительно сложнее.
Конечно, это не такая уж и великая проблема, но тем не менее я подумал, почему бы не облегчить её решение, и не совместить приятное с полезным..
Онлайн-табло для споттеров
Решение было простое: сделать несложный аггрегатор, который бы мог в реальном времени отображать информацию не только о вылетах, о прилетах в определенном аэропорту, но и о погоде, освещении для данного времени суток, дать прогноз на возможные ВПП, а также наглядно визуализировать всю эту информацию таким образом, чтобы было понятно когда, сколько и какие ВС можно поймать для съёмки, иметь представление о том, какая погода и освещение будет в это время.
Акцент на то, чтобы вместо нескольких ресурсов с негарантированным usability использовать только один.
Так родился SpotterLead — онлайн-табло для споттеров (ссылка в конце статьи). Изначально проект создавался исключительно под мои собственные нужды, но чуть позже я решил немного его подшлифовать и дать возможность другим ознакомиться с ним.
Сервис на английском языке, т.к. я ввожу поддержку не только для российских аэропортов, но в идеале сервис должен быть понятен пользователям на любом языке. Посмотрим, оправдаются ли эти предположения :rolleyes:
Что умеет
Основной раздел сервиса Flights LIVE! или Рейсы вживую. Здесь на выбор список поддерживаемых аэропортов (см.ниже) с группировкой по странам.
При выборе определенного аэропорта загружается табло. Загрузка может занять от 3 до 15 секунд в зависимости от программной логики, обслуживающей тот или иной аэропорт (см.ниже). Данные временно кешируются, потому последующие загрузки могут быть гораздо быстрее первой.
Вверху табло содержится логотип или название аэропорта, текущее время во временной зоне аэропорта, полезные ссылки, а также текущую погоду, при клике на которую можно лицезреть METAR.
После строки поиска рейса табло группирует рейсы на ближайшие 24 часа по интервалам. По умолчанию интервал разбиения — 1 час, но он может быть изменен.
Для каждого интервала есть визуализация прибывающих и отбывающих самолетов. Так, что можно составить представление о том, когда трафик наиболее интенсивен.
Обратите внимание, что каждый интервал также имеет погодную индикацию. Помимо символьной индикации, у пиктограмм также имеется цвет, который приблизительно соответствует цвету неба для данного интервала с учетом времени, погоды и данных о восходе / закате в данный день. Ниже, если доступно для вычисления, имеются данные о предполагаемых активных ВПП в это время.
При клике на интервал отображается окно с информацией о всех самолетах, прибывающих и отбывающих в течение временного промежутка. При этом в окне помимо данных о времени и погоде отдельно для вылетов и прилетов есть расчет приблизительного времени ожидания между рейсами.
Данные обновляются автоматически ежеминутно.
У сайта есть мобильная версия, но она более всего нуждается в доработке. Впрочем, основная функциональность там в рабочем состоянии.
Поддерживаемые аэропорты
На момент написания этой статьи есть поддержка 48 аэропортов в Европе и в России.
Из российских аэропортов поддерживаются (перечислены все):
Москва Внуково, Санкт-Петербург Пулково, Красноярск Емельяново, Екатеринбург Кольцово, Нижний Новгород Стригино, Пермь Большое Савино, Самара Курумоч, Сочи, Анапа Витязево, Геленджик, Краснодар Пашковский, Томск Богашево
Из европейских (перечислены крупнейшие):
Амстердам Схипхол, Вена Швехат, Стокгольм Арланда, Хельсинки Вантаа, Будапешт им.Ференца Листа, Варшава им.Фредерика Шопена, Цюрих
Как работает
Техническая часть сервиса несмотря на внешнюю простоту получилась весьма обширной, но пока ограничусь общими сведениями.
Сервис агрегирует информацию из различных открытых источников и бесплатных API, но основную информацию о рейсах он забирает с сайтов аэропортов и Яндекс API (в случае, если табло аэропорта не выдает данные о ВС, сервис обращается к расписаниям через Яндекс API для получения ожидаемого ВС для данного рейса в данный день). Информация об используемых API и источниках для данного аэропорта всегда находится внизу страницы.
Логика для каждого аэропорта или группы аэропортов индивидуальна, а информация, выдаваемая сайтами аэропортов может иметь различную точность. Чтобы как-то сориентировать пользователя по этому вопросу вверху страницы рядом с текущим временем есть индикация «звезда». Полная белая звезда указывает на высокую достоверность данных, а пустая или недозаполненная звезда говорит о том, что источники выдают неполную, либо противоречивую информацию и как следствие, возможны серьезные расхождения
Почему не использовать данные FlightStats, FlightAware, Flightradar24 и не ввести поддержку сразу всех аэропортов мира?
FlightStats и FlightAware имеют отличные высококонкурентные API для целей, схожих с целями сервиса. Но они недешевые. При их подключении неизбежно придется сделать пользование сервисом платным. Однако я не исключаю использование этих API каким-либо образом в будущем.
А Flightradar24, как известно, не имеет публично доступного API.
Что дальше
БОЛЬШЕ АЭРОПОРТОВ!!!111
Хотя сервис работает успешно уже сейчас, в проекте есть множество мелких и не очень недоработок, как во внешнем виде, так и в бэкенде. Иногда случаются ошибки. Всё это регулярно допиливается, обновляется, но пространство для улучшений практически бесконечное.
Во многом, я реализовал свои собственные потребности данным сервисом, но есть ряд идей по развитию и улучшению проекта. За какие именно идеи браться, а за какие нет, во многом будет зависеть от того, насколько удастся найти целевую аудиторию проекта.
Конечно, от сервиса будет больше толку, если развить мобильную версию или даже сделать приложения для мобильных ОС, и это одна из идей.
Также нужно увеличивать количество аэропортов, делать использование сервисом удобнее, и дать возможность заглядывать больше, чем на 24 часа вперед 🙂
В случае, если сервис будет интересен аудитории avsim.su, я буду рад публиковать здесь новости о развитии проекта, рассказывать подробнее об уже существующих фичах и принимать от вас обратную связь :rolleyes:
Отзывы, пожелания и предложения категорически приветствуются!
Ссылка на сервис
Сервис бесплатен для использования
>> http://spotterlead.net <<
Комментариев: 18
Чтобы оставить ответ, войдите в свой аккаунт.




Очень прикольная штука!
Благодарю 🙂
Кстати, принимаются запросы на добавление новых аэропортов.
Отличная вещь! Хотелось бы поддержки Казани 🙂
Ценю профессионализм и мастерство.
Казань уже есть в ближайших, так что скоро будет
Офигеть! Супер!
Благодарю всех отозвавшихся 🙂 Буду публиковать информацию об обновлениях.
Класс, спасибо за труды!
Я бы очень хотел Домодедово, Киров и Тиват)
Казань добавил 🙂
Киров не обещаю: сайт аэропорта не выдает онлайн-табло. А вот Домодедово и Тиват можно поробовать.
Спасибо! Можно Иркутск? У нас большое сообщество споттеров.
Записал в очередь )
Хотелось бы увидеть в списке аэропортов Челябинск!
Хотелось бы чтобы переход по странам был разностраничным — когда первый раз попадаешь на страницу не сразу соображаешь что к чему, когда всё почти в одной куче.
Имхо — не очень удачно отсортировано. Я бы предложил сортировку по названиям городов, а не по первым буквам IATA кодов.
Хотелось бы видеть метарили хотя бы активную ВПП — данные можно брать в текстовом формате отсюда: http://weather.noaa.gov/и парсить ихМетар нашел, расшифровку тоже увидел )
В Кольцово почему то не показывает активную полосу (полосы)
Сервис офигенен — утащил ссылку на ваш сайт на z25t!
Борис, еще бы не помешал перевод по геолокации хотя бы на русский язык 😉 или просто возможность открыть сайт на русском
Думаю, подключу его вместе с Новосибирском, у них очень похожие системы на сайте, если вообще не одна и та же.
Честно говоря, я уже думаю над тем, как переделать эту страницу. То, что есть сейчас, было удобно, когда аэропортов было не больше 10-15, а сейчас ориентироваться действительно стало тяжело. Вполне может быть, что разобью постранично странам.
Вероятно ветер либо слабый, либо боковой. В этих случаях система не делает оценку, потому что большой риск не угадать. Оговорюсь, что активные ВПП — это только приблизительная оценка на основе данных о ветре. Реально могут быть отличия, особенно в аэропортах, где полосы расположены не параллельно.
Локализировать буду. Не обещаю, что в ближайшее время, но буду.
Спасибо! )
Отличный сервис! Спасибо разработчикам!!!
Благодарю за высокую оценку!
Добавил Иркутск