Memperluas Google Analytics dengan Cloud Functions

Google Analytics menyediakan laporan peristiwa yang dapat membantu Anda memahami cara pengguna berinteraksi dengan aplikasi Anda. Dengan Cloud Functions (generasi ke-1), Anda dapat mengakses peristiwa konversi yang telah dicatat dalam log dari perangkat Apple dan Android serta memicu fungsi berdasarkan peristiwa tersebut.

Memicu fungsi Google Analytics

Cloud Functions mendukung AnalyticsEvent Google Analytics. Peristiwa ini dipicu setiap kali aktivitas pengguna menghasilkan peristiwa konversi. Misalnya, Anda dapat menulis fungsi yang terpicu ketika peristiwa in_app_purchase dibuat, yang menunjukkan bahwa pembelian dalam aplikasi telah terjadi. Anda harus menentukan peristiwa Analytics yang diinginkan untuk memicu fungsi Anda menggunakan metode functions.analytics.event(), dan menangani peristiwa dalam pengendali peristiwa onLog():

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

Mengakses atribut peristiwa

Untuk setiap peristiwa Analytics, Anda memiliki akses ke semua parameter dan properti pengguna yang relevan. Hal ini mencakup informasi tentang pengguna, perangkat, aplikasi, dan informasi geografis untuk peristiwa tersebut. Untuk mengetahui daftar lengkap parameter dan properti pengguna, baca referensi functions.analytics.

Untuk fungsi yang dipicu oleh pembelian seperti yang ditunjukkan dalam contoh ini, Anda dapat mengakses atribut pengguna seperti bahasa pengguna dan nilai peristiwa (valueInUSD). Dengan atribut kedua ini, fungsi contoh ini dapat menguji apakah peristiwa tersebut merupakan peristiwa konversi bernilai tinggi atau bukan, agar dapat mengirim kupon dengan nilai lebih tinggi ke pelanggan yang bernilai.

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

Langkah berikutnya

Untuk mempelajari lebih lanjut penanganan peristiwa Analytics di Cloud Functions, baca dokumentasi Google Analytics dan referensi functions.analytics, lalu coba jalankan contoh kode coupon-on-purchase.