Rozszerzanie Google Analytics za pomocą Cloud Functions

Google Analytics udostępnia raporty o zdarzeniach, które pomagają zrozumieć, jak użytkownicy korzystają z Twojej aplikacji. Dzięki Cloud Functions (1 generacji) masz dostęp do zdarzeń konwersji zarejestrowanych na urządzeniach Apple i z Androidem oraz na ich podstawie uruchamiasz funkcje.

Aktywowanie funkcji Google Analytics

Cloud Functions obsługuje Google Analytics AnalyticsEvent. To zdarzenie jest wywoływane za każdym razem, gdy aktywność użytkownika generuje zdarzenie konwersji. Możesz np. napisać funkcję, która jest aktywowana po wygenerowaniu zdarzenia in_app_purchase i wskazuje na zakup w aplikacji. Musisz wskazać zdarzenie Analytics, które ma aktywować funkcję, za pomocą metody functions.analytics.event(), i obsługiwać zdarzenie w module obsługi zdarzeń onLog():

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

Atrybuty zdarzenia dostępu

Z każdym zdarzeniem Analytics masz dostęp do wszystkich odpowiednich parametrów i właściwości użytkownika. Obejmują one informacje o użytkowniku, urządzeniu, aplikacji i dane geograficzne wydarzenia. Pełną listę parametrów i właściwości użytkownika znajdziesz w dokumentacji functions.analytics.

W przypadku funkcji wywoływanej przez zakup jak pokazano w tym przykładzie, warto uzyskać dostęp do atrybutów użytkownika, takich jak jego język i wartość zdarzenia (valueInUSD). Ten drugi atrybut umożliwia funkcji przykładowej sprawdzenie, czy jest to zdarzenie konwersji o dużej wartości, i pozwala na wysyłanie kuponów o większej wartości do wartościowych klientów.

/**
 * 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);
});

Dalsze kroki

Więcej informacji o obsłudze zdarzeń Analytics w Cloud Functions znajdziesz w dokumentacji Google Analytics i w materiałach informacyjnych na temat functions.analytics. Możesz też spróbować uruchomić przykładowy kod kupon przy zakupie.