透過 Cloud Functions 擴充 Google Analytics (分析)

Google Analytics 提供事件報表,協助您瞭解使用者與應用程式的互動情形。使用 Cloud Functions (第 1 代) 時,您可以存取從 Apple 和 Android 裝置記錄的轉換事件,並根據這些事件觸發函式。

觸發 Google Analytics 函式

Cloud Functions 支援 Google Analytics AnalyticsEvent。 每當使用者活動產生轉換事件時,就會觸發這個事件。 舉例來說,您可以編寫函式,在系統產生 in_app_purchase 事件時觸發,表示發生應用程式內購買交易。您必須使用 functions.analytics.event() 方法指定要觸發函式的 Analytics 事件,並在 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);
});

後續步驟

如要進一步瞭解如何在 Cloud Functions 中處理 Analytics 事件,請參閱 Google Analytics 說明文件functions.analytics 參考資料,並嘗試執行coupon-on-purchase 程式碼範例。