Rozszerzanie Google Analytics za pomocą Cloud Functions

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

Aktywowanie funkcji Google Analytics

Cloud Functions obsługuje Google Analytics AnalyticsEvent. To zdarzenie jest wywoływane, gdy aktywność użytkownika powoduje zdarzenie konwersji. Możesz np. napisać funkcję, która jest wywoływana, gdy generowane jest zdarzenie in_app_purchase, co oznacza, że nastąpił zakup w aplikacji. Musisz określić zdarzenie Analytics, które chcesz wywołać za pomocą funkcji, korzystając z metody functions.analytics.event(), i obsługiwać to zdarzenie w module obsługi zdarzeń onLog():

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

Atrybuty zdarzeń

W przypadku każdego zdarzenia 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 lokalizacji zdarzenia. 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 w tym przykładzie, możesz potrzebować dostępu do atrybutów użytkownika, takich jak jego język i wartość zdarzenia (valueInUSD). Ten drugi atrybut pozwala przykładowej funkcji sprawdzić, czy jest to zdarzenie konwersji o wysokiej wartości, aby móc wysłać klientom o dużej wartości kupony o wyższej wartości.

/**
 * 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ługiwaniu zdarzeń AnalyticsCloud Functions znajdziesz w dokumentacji Google Analytics i dokumentacji referencyjnej functions.analytics. Możesz też uruchomić przykładowy kod coupon-on-purchase.