Mở rộng Google Analytics bằng Cloud Functions

Google Analytics cung cấp các báo cáo sự kiện giúp bạn nắm được cách người dùng tương tác với ứng dụng của bạn. Khi dùng Cloud Functions (thế hệ thứ 1), bạn có thể truy cập vào các sự kiện chuyển đổi mà bạn đã ghi lại trên thiết bị Apple và Android và kích hoạt các hàm dựa trên các sự kiện đó.

Kích hoạt hàm Google Analytics

Cloud Functions hỗ trợ Google Analytics AnalyticsEvent. Sự kiện này được kích hoạt bất cứ khi nào hoạt động của người dùng tạo ra một sự kiện chuyển đổi. Ví dụ: bạn có thể viết một hàm kích hoạt khi sự kiện in_app_purchase được tạo, cho biết rằng một đã xảy ra lượt mua hàng trong ứng dụng hay không. Bạn phải chỉ định sự kiện Analytics mà bạn muốn kích hoạt hàm của mình bằng cách sử dụng functions.analytics.event() và xử lý sự kiện trong onLog() trình xử lý sự kiện:

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

Truy cập vào các thuộc tính sự kiện

Với mỗi sự kiện Analytics, bạn có quyền truy cập vào tất cả sự kiện có liên quan tham số và thuộc tính người dùng. Những thông tin này bao gồm thông tin về người dùng, thiết bị, ứng dụng và thông tin địa lý cho sự kiện. Để có danh sách đầy đủ các thông số và thuộc tính người dùng, hãy xem Tài liệu tham khảo về functions.analytics.

Đối với chức năng kích hoạt mua hàng như minh hoạ trong mẫu này, bạn có thể muốn truy cập các thuộc tính người dùng như ngôn ngữ của người dùng và giá trị của sự kiện (valueInUSD). Thuộc tính thứ hai này cho phép hàm mẫu kiểm tra xem đây có phải là sự kiện chuyển đổi có giá trị cao để gửi phiếu giảm giá có giá trị cao hơn cho những khách hàng có giá trị.

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

Các bước tiếp theo

Để tìm hiểu thêm về cách xử lý các sự kiện Analytics trong Cloud Functions, hãy xem tài liệu về Google Analytics và Tham chiếu functions.analytics, và thử chạy mã mẫu Phiếu giảm giá khi mua hàng.