Триггеры Google Аналитики

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

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

Cloud Functions поддерживает 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 в Cloud Functions смотрите в документации по Google Analytics и справочнике functions.analytics. Вы также можете протестировать пример кода coupon-on-purchase.