Как интегрировать карту и геолокацию в сервис услуг
Многие услуги привязаны к месту: заказчику важно, чтобы исполнитель находился рядом. Карта и геолокация повышают удобство: можно показать исполнителей на карте, автоматически подставить адрес заказчика, рассчитать расстояние. В этой статье — какие варианты интеграции существуют и как их реализовать в готовом решении Falcon Auction.
По умолчанию в Falcon Auction карты и геолокация не встроены. Но платформа позволяет добавить их через внешний API (Яндекс.Карты, Google Maps) с небольшими доработками. Ниже я расскажу, зачем они нужны и как это делается.
Зачем площадке карта и геолокация
- Отображение исполнителей на карте — заказчик видит, кто работает рядом, и может выбрать ближайшего.
- Автоматическое определение адреса заказчика — не нужно вручную вбивать город и улицу.
- Фильтрация проектов по расстоянию — исполнитель настраивает радиус (например, 5 км) и видит только заказы поблизости.
- Контроль геолокации при выполнении заказа — для услуг выездного типа (курьер, ремонт) можно отслеживать, что исполнитель прибыл на место.
Как интегрировать Яндекс.Карты в Falcon Space
Платформа поддерживает вставку JavaScript-кода на страницы. Вы можете создать страницу «Каталог исполнителей на карте» и добавить туда скрипт Яндекс.Карт с подгрузкой точек из базы данных. Пример логики:
- На сервере пишете хранимую процедуру, которая возвращает JSON со списком исполнителей (координаты, название, рейтинг).
- На фронте через AJAX получаете эти данные и отображаете метки на карте.
- При клике на метку показываете карточку исполнителя и кнопку «Связаться».
В кейсе «Агрегатор автосервисов iDrive» такой функционал реализовали: на карте отображались СТО, и заказчик мог выбрать ближайшее. Конверсия в заказ увеличилась на 15%.
Геолокация в каталоге проектов
Для исполнителя важно видеть проекты рядом. В Falcon Space вы можете добавить в форму создания проекта поле «Адрес» (через подсказки DaData). При сохранении проекта координаты записываются в БД. Затем в каталоге проектов исполнитель нажимает «Показать рядом» — браузер запрашивает его геолокацию, и проекты сортируются по расстоянию.
DaData — сервис подсказок адресов. В Falcon Space он уже интегрирован по умолчанию (можно включить в настройках поля). Это позволяет заказчику вводить адрес с подсказками и сразу получать корректные координаты.
Отслеживание местоположения исполнителя в процессе заказа
Для курьерских услуг и ремонта часто нужно знать, выехал ли исполнитель. Это требует периодической отправки координат с телефона исполнителя. PWA может получать геолокацию, но только когда приложение активно. Для фонового трекинга нужно нативное приложение.
В проекте «Площадка для ремонта квартир» использовали упрощённый подход: исполнитель нажимал кнопку «Я на месте», и заказчик получал уведомление. Никакого автоматического трекинга — и пользователям было достаточно.
Пример реализации на Falcon Space (технический минимум)
Если вы не хотите заказывать сложную доработку, начните с малого:
- Добавьте в профиль исполнителя поле «Город» (текстовое).
- Научите заказчика при создании проекта указывать город.
- В каталоге проектов добавьте фильтр по городу.
Это не карта, но уже решает проблему локальности. А когда поймёте, что этого мало, мы поможем интегрировать полноценные Яндекс.Карты с метками и геолокацией.
Посмотреть, как реализованы карты в одном из наших проектов, можно на демо https://auction.falconspace.ru (на примере карты исполнителей — но это не публичная часть, запросите доступ у нас). Пишите в чат, покажем.
- Шаг 1. Создать концепт проекта
- Шаг 2. Получить оценку бюджета (КП)
- Шаг 3. Заключить договор
- Шаг 4. Создать совместно техническое задание
- Шаг 5. Поэтапная реализация проекта