Расширьте Google Analytics с помощью облачных функций

Google Analytics предоставляет отчеты о событиях, которые помогут вам понять, как пользователи взаимодействуют с вашим приложением. С помощью облачных функций (1-го поколения) вы можете получить доступ к событиям конверсий, зарегистрированным вами с устройств Apple и Android, и запускать функции на основе этих событий.

Запустить функцию Google Analytics

Облачные функции поддерживают Google Analytics AnalyticsEvent . Это событие срабатывает всякий раз, когда активность пользователя приводит к событию конверсии. Например, вы можете написать функцию, которая срабатывает, когда генерируется событие in_app_purchase , указывающее на то, что произошла покупка в приложении. Вы должны указать событие Analytics, которое вы хотите вызвать для своей функции, с помощью метода functions.analytics.event() и обработать это событие в обработчике событий onLog() :

exports.sendCouponOnPurchase = functions.analytics.event('in_app_purchase').onLog((event) => {
  // ...
});

Доступ к атрибутам событий

С каждым событием Analytics у вас есть доступ ко всем соответствующим параметрам и свойствам пользователя. К ним относятся информация о пользователе, устройстве, приложении и географическая информация о событии. Полный список параметров и свойств пользователя см. в справочнике по functions.analytics .

Для функции, активируемой покупкой, как показано в этом примере , вам может потребоваться доступ к атрибутам пользователя, таким как язык пользователя и значение события ( valueInUSD ). Этот второй атрибут позволяет образцу функции проверить, является ли это событие конверсией с высокой ценностью, чтобы отправить купон с более высокой стоимостью ценным клиентам.

/**
 * After a user has completed a purchase, send them a coupon via FCM valid on their next purchase.
 */
exports.sendCouponOnPurchase = functions.analytics.event('in_app_purchase').onLog((event) => {
  const user = event.user;
  const uid = user.userId; // The user ID set via the setUserId API.
  const purchaseValue = event.valueInUSD; // Amount of the purchase in USD.
  const userLanguage = user.deviceInfo.userDefaultLanguage; // The user language in language-country format.

  // For purchases above 500 USD, we send a coupon of higher value.
  if (purchaseValue > 500) {
    return sendHighValueCouponViaFCM(uid, userLanguage);
  }
  return sendCouponViaFCM(uid, userLanguage);
});

Следующие шаги

Чтобы узнать больше об обработке событий Analytics в облачных функциях, см. документацию Google Analytics и справочник по functions.analytics , а также попробуйте запустить пример кода купона при покупке .