Рекомендуемые события в приложениях для вызова такси и частных автомобилей

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

InApp_Events_ride.png Сервисы вызова такси и частных автомобилей

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

Регистрация событий поможет вам определить:

  • Как взаимодействуют пассажиры и водители.
  • В каких странах у вашего сервиса вызова такси и частных автомобилей больше всего пользователей.
  • Данные о ценах, поездках и дистанции поездок.

 Важно!

  • Обязательно прочитайте инструкции для маркетологов по реализации внутренних событий приложения.
  • Чтобы оптимизировать процесс внедрения, скачайте файл CSV, который содержит все типичные внутренние события приложения, описанные в этой статье, после чего измените эти события в соответствии с потребностями своего бизнеса. Когда файл будет готов, предоставьте его разработчику.
  • По каждому рекомендуемому в этой статье событию есть примеры кода для разработчиков iOS, Android и Unity.
  • Подробные инструкции для разработчиков доступны на сайте AppsFlyer developer hub.

Дополнительные сведения о регистрации внутренних событий см. в Руководстве по насыщенным внутренним событиям.

Flowchart_for_recommended_events_ride_hailing_app_user_journey

Рекомендуемые структуры для предопределенных событий

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

Завершение регистрации (af_complete_registration)

Цель

Это событие поможет вам:

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

Триггер

Пользователь завершает процесс регистрации.

Параметры события

Имя Описание Пример значения
af_registration_method Платформа или способ регистрации Facebook
country_code Код страны (телефонный код) 66

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.REGSITRATION_METHOD, "shoes");
eventValue.put("country_code", "66");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.COMPLETE_REGISTRATION, eventValue);

Авторизация (af_login)

Цель

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

Триггер

Успешный вход пользователя в систему.

Параметры события

Можно отправлять без каких-либо дополнительных параметров.

Примеры кода

Android iOS - Objective C iOS - Swift Unity

AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.LOGIN, null);

Добавление платежной информации (af_add_payment_info)

Цель

Определять категории пользователей. Это событие позволяет: 

  • Узнать, сколько времени требуется пользователям для ввода платежной информации.
  • Определить, какие способы оплаты используются чаще всего (например, банковская карта, электронный кошелек).
  • Сотрудничать и создавать совместные кампании с популярными платежными системами.

Триггер

Пользователь успешно добавляет платежную информацию в аккаунт.

Параметры события

Имя Описание Пример значения
af_success Действителен ли способ оплаты true
credit_card_type Тип кредитной карты (необязательный) Visa, Mastercard
payment_method_type Тип способа оплаты credit card, eWallet

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.SUCCESS, true);
eventValue.put("credit_card_type", "Visa");
eventValue.put("payment_method_type", true);
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.ADD_PAYMENT_INFO, eventValue);

Использование баллов (af_spent_credits)

Цель

У события Ride booking completed (Заказ выполнен) есть параметр credits_earned (полученные баллы). В этом параметре регистрируются баллы, получаемые пассажиром за каждую поездку. Баллы можно обменивать на купоны и скидки.

Это событие поможет вам:

  • Узнать, сколько баллов пассажир обменял на купоны.
  • Узнать, какие купоны и скидки предпочитают пассажиры.

Триггер 

Пассажир использует свои баллы.

Параметры события

Имя Описание Пример значения
af_content Вид купона или скидки Билет на один киносеанс
credits_used Сколько баллов использовано 1000
credits_remaining Сколько баллов осталось в аккаунте 2090
invoice_id

Идентификатор счета за использование баллов

KO215123SD

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT, "Single movie ticket");
eventValue.put("credits_used", 1000);
eventValue.put("invoice_id", "");
eventValue.put("credits_remaining", "KO215123SD");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.SPENT_CREDITS , eventValue);

Рекомендуемые структуры для настраиваемых событий

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

Создан заказ поездки (ride_booking_requested)

Цель

Это событие поможет вам:

  • Определить популярные направления.
  • Увидеть тенденции и узнать, куда и откуда ездят люди.
  • Узнать среднюю дистанцию поездки.
  • Определить города, регионы и страны, в которых больше всего пользователей.

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

Триггер 

Пассажир создает заказ поездки.

Параметры события

Имя Описание Пример значения
af_price Цена, назначенная за поездку 22.4
af_currency Валюта SGD
af_destination_a Пункт отправления Plaza Singapura
af_destination_b Пункт прибытия Marina Bay Sands
distance Расстояние между двумя пунктами 5.2
af_content_type Вид транспорта Taxi
payment_method_type Тип способа оплаты credit card, eWallet
af_city Город, в котором сделан заказ Singapore
af_region Регион, в котором сделан заказ SFA
af_country Страна, в которой сделан заказ Singapore
order_id Код заказа 135790

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_requested", eventValue);

Подтверждение заказа поездки (ride_booking_confirmed)

Цель

Это событие поможет вам:

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

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

Триггер 

Водитель принимает заказ.

Параметры события

Имя Описание Пример значения
af_price Цена, назначенная за поездку 22.4
af_currency Валюта SGD
af_destination_a Пункт отправления Plaza Singapura
af_destination_b Пункт прибытия Marina Bay Sands
distance Расстояние между двумя пунктами 5.2
af_content_type Вид транспорта Taxi
driver_id Идентификатор водителя, который подтвердил выполнение заказа. 1706
payment_method_type Тип способа оплаты credit card, eWallet
af_city Город, в котором сделан заказ Singapore
af_region Регион, в котором сделан заказ SFA
af_country Страна, в которой сделан заказ Singapore
af_order_id Код заказа 135790

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("driver_id", "1706");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_confirmed", eventValue);

Отмена поездки (ride_booking_canceled)

Цель

Это событие поможет вам:

  • Вести журнал водителей и пассажиров, которые постоянно отменяют поездки.
  • Узнать, сколько поездок отменяется.
  • Соотнести частоту отмен с такими показателями, как цена, пункт назначения, расстояние, город и т. п.
  • Выяснить причины отмены поездок.

Триггер 

Отмена поездки.

Параметры события

Имя Описание Пример значения
af_price Цена, назначенная за поездку 22.4
af_currency Валюта SGD
af_destination_a Пункт отправления Plaza Singapura
af_destination_b Пункт прибытия Marina Bay Sands
distance Расстояние между двумя пунктами 5.2
af_content_type Вид транспорта Taxi
driver_id Идентификатор водителя, который принял заказ. 1706
cancelation_reason Причина отмены поездки цена слишком высокая, водитель не приехал, пассажир не явился
payment_method_type Тип способа оплаты credit card, eWallet
af_city Город, в котором сделан заказ Singapore
af_region Регион, в котором сделан заказ SFA
af_country Страна, в которой сделан заказ Singapore
order_id Код заказа 135790
canceled_by Отменил ли поездку пассажир или водитель Пассажир

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("driver_id", "1706");
eventValue.put("cancellation_reason", "driver didn't show up");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
eventValue.put("canceled_by", "passenger");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_canceled", eventValue);

Заказ выполнен (ride_booking_completed)

Цель

Это событие поможет вам:

  • Узнать, сколько потратил пассажир и сколько заработал водитель.
  • Соотнести количество выполненных заказов с такими показателями, как пункт назначения, расстояние, способ оплаты, идентификатор водителя и т. п.
  • Определить среднюю и предельную дистанцию поездки для водителей и пассажиров.
  • Сравнить количество выполненных заказов с количеством отмен.
  • Вести журнал и регистрировать оценки водителя.

Триггер 

Поездка завершена.

Параметры события

Имя Описание Пример значения
af_price Цена, назначенная за поездку 22.4
af_currency Валюта SGD
af_destination_a Пункт отправления Plaza Singapura
af_destination_b Пункт прибытия Marina Bay Sands
distance Расстояние между двумя пунктами 5.2
af_content_type Вид транспорта Taxi
driver_id Идентификатор водителя, который подтвердил выполнение заказа. 1706
payment_method_type Тип способа оплаты credit card, eWallet
af_city Город, в котором сделан заказ Singapore
af_region Регион, в котором сделан заказ SFA
af_country Страна, в которой сделан заказ Singapore
order_id Код заказа 135790
credits_earned Баллы, начисленные пассажиру за поездку. 248

Примеры кода

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B,"Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("driver_id", "1706");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
eventValue.put("credits_earned", 248);
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_completed" , eventValue);
Была ли эта статья полезной?